大数据文摘_个人页

个人头像照片 大数据文摘
个人头像照片
153
0
0

个人介绍

暂无个人介绍

擅长的技术

获得更多能力
通用技术能力:

暂时未有相关通用技术能力~

云产品技术能力:

暂时未有相关云产品技术能力~

阿里云技能认证

详细说明
暂无更多信息

2024年07月

  • 07.21 15:30:39
    发表了文章 2024-07-21 15:30:39

    软件开发中的 DRY、KISS 和 SOLID 原则

    **软件开发中的DRY、KISS和SOLID原则概览** - **DRY (Don't Repeat Yourself)**: 避免代码重复,确保每项知识在系统中有唯一表示,减少冗余,提高可维护性。例如,通过封装重复逻辑到函数或类。
  • 07.19 10:33:47
    发表了文章 2024-07-19 10:33:47

    全面掌握Dolphin指纹浏览器:IPXProxy代理IP集成使用指南

    对于需要管理多个社交媒体或电商平台的用户而言,Dolphin指纹浏览器提供了便捷的多账号隔离功能,搭配代理IP可以有效的防止账户关联。并且Dolphin指纹浏览器能够支持团队协作,方便团队进行互动、跟踪账户、查看代理状态。一些刚接触指纹浏览器的用户,不知道如何将Dolphin指纹浏览器和代理IP集成使用,下面以IPXProxy代理IP为例,带来详细的操作步骤。
  • 07.17 15:31:42
    发表了文章 2024-07-17 15:31:42

    MySQL连接池DataSource是什么?

    **摘要:** 本文探讨了数据库连接池在高并发Web应用中的重要性,聚焦于DruidDataSource,一个高效的Java数据库连接池组件。DruidDataSource提供连接池管理、SQL监控及性能优化功能。文中通过代码示例展示了如何配置和使用DruidDataSource,包括在Java应用中的直接配置和在Spring Boot中的集成。此外,还提到了使用技巧,如合理设置连接池参数、定期监控调整以及利用Druid的内置监控工具优化性能。
  • 07.15 11:39:35
    发表了文章 2024-07-15 11:39:35

    MySQL的脏读、幻读、不可重复度是什么

    **脏读**:事务读取了未提交的修改,可能导致不一致。**不可重复读**:同一事务中相同查询返回不同结果,因其他事务修改。**幻读**:事务在范围查询时,另一事务插入数据,使行数不一致。SQL-92定义四种事务隔离级别来防止这些问题:序列化、可重复读、提交读、未提交读。
  • 07.12 13:43:25
    发表了文章 2024-07-12 13:43:25

    springboot定制嵌入式的servlet

    SpringBoot允许定制嵌入式Servlet容器,如修改配置或更换默认的Tomcat。配置可通过`application.properties`设置`server.port`和`server.tomcat.*`属性。此外,可创建`EmbeddedServletContainerCustomizer` Bean来自定义容器,例如改变端口。要替换默认的Tomcat,需排除`spring-boot-starter-tomcat`依赖,并引入`spring-boot-starter-jetty`。
  • 07.10 12:01:59
    发表了文章 2024-07-10 12:01:59

    Python中的单例模式是什么?

    **摘要:** 单例模式是一种设计模式,确保类只有一个实例并提供全局访问点。常用于共享资源、配置管理、数据库连接池、日志记录和缓存。Python中可使用模块级变量、装饰器或元类实现单例。需谨慎使用,以避免全局状态导致的复杂性。
  • 07.08 12:01:10
    发表了文章 2024-07-08 12:01:10

    怎么用Python解析HTML轻松搞定网页数据

    **Python解析HTML摘要** 本文介绍了使用Python处理HTML的常见需求,如数据提取、网络爬虫和分析,并讨论了三种解析方法。正则表达式适用于简单匹配,但对复杂HTML不理想;BeautifulSoup提供简单API,适合多数情况;lxml结合XPath,适合处理大型复杂文档。示例展示了如何用这些方法提取链接。
  • 07.04 14:36:56
    发表了文章 2024-07-04 14:36:56

    怎么减小Docker的镜像体积?

    **Docker 镜像优化目标:**提升构建速度、减小镜像大小、增强安全性和效率。**技巧:**1) 选择轻量级基础镜像(如Alpine、Ubuntu Minimal);2) 使用多阶段构建,分阶段复制文件和执行操作;3) 利用缓存加速构建,避免不必要的重复;4) 合并`RUN`指令减少镜像层数。这些方法能显著优化镜像,提高性能和节省存储空间。
  • 07.02 11:58:05
    发表了文章 2024-07-02 11:58:05

    什么是Python asyncio

    **Python的asyncio库概述** asyncio是Python的异步I/O框架,基于协程,提供了一种编写并发代码的简洁方式。它引入了`async`和`await`关键字,用于定义和执行异步操作,简化了IO密集型任务的并发处理。事件循环是核心,负责调度协程任务。asyncio解决了传统多线程/多进程并发的复杂性和效率问题,尤其适合结构化的网络编程。例如,通过并发下载多个网站,asyncio能提高效率,对比之下,使用`threading`模块则更为低效。简而言之,asyncio是Python高效异步编程的标准工具。
  • 07.01 00:28:08
    发表了文章 2024-07-01 00:28:08

    Go语言的iota关键字有什么用途?

    **Go语言中的`iota`是常量生成器,用于在`const`声明中创建递增的常量。`iota`在每个新的`const`块重置为0,然后逐行递增,简化了枚举类型或常量序列的定义。例如,定义星期枚举:** ```markdown ```go type Weekday int const ( Sunday Weekday = iota // 0 Monday // 1 Tuesday // 2 ... ) ``` 同样,`iota`可用于定义不同组的常量,如状态码和标志位,保持各自组内的递增,提高代码可读性。

2024年06月

  • 06.28 11:18:55
    发表了文章 2024-06-28 11:18:55

    IPXProxy静态住宅代理:注册OpenAI Sora的关键

    ​随着OpenAI发布的Sora引起了广泛关注,这款革命性的文本转视频生成工具给视频创作领域带来了质的飞跃。许多人都对Sora充满了好奇,希望能够注册并使用它来提升创作水平。然而,许多用户在注册过程中遇到了网络环境的问题,这时候静态住宅代理的优势就显现出来了。
  • 06.27 15:17:41
    发表了文章 2024-06-27 15:17:41

    Dubbo怎么配置监控中心

    **摘要:** 本文介绍了如何配置Dubbo的简单监控中心。首先,通过添加`<dubbo:monitor protocol="registry" />`到配置文件启用监控。接着,修改`dubbo.properties`设置Zookeeper地址。启动监控中心,服务提供者和消费者需添加`monitorEnabled="true"`以开启监控功能。配置完成后,监控中心的Web界面能展示服务状态和性能指标,助力开发者和运维人员实时监控服务健康。
  • 06.25 16:45:17
    发表了文章 2024-06-25 16:45:17

    Python循环怎么给enumerate和for做对比

    **Python中的`for`循环遍历集合,而`enumerate`函数在迭代时提供元素的索引。
  • 06.21 17:59:52
    发表了文章 2024-06-21 17:59:52

    怎么在在 go 中使用 jwt

    JWT(JSON Web Tokens)由三个部分组成:Header、Payload和Signature。Header通常包含`alg`(算法)和`typ`(类型)字段,如`HS256`或`JWT`。Payload则包括官方标准字段如`iss`(签发人)、`exp`(过期时间)等,以及可自定义的数据,比如用户信息。Signature用于验证JWT未被篡改,通过HMAC算法(如HS256)或非对称加密(如RS256)确保安全性。完整JWT是这三部分经过编码和签名后的结果。
  • 06.19 13:54:19
    发表了文章 2024-06-19 13:54:19

    怎么在isort Python 代码中的导入语句进行排序和格式化

    `isort` 是一个Python工具,用于自动排序和格式化代码中的导入语句,提高代码整洁度和可读性。它支持自动排序、保留空白和注释、自定义排序规则、与多种编辑器集成以及命令行使用。安装`isort`可通过`pip install isort`,使用时可直接在Python代码中导入或通过命令行处理文件。示例展示了如何在代码中使用`isort`进行导入排序,包括基本排序、自定义设置和处理多个文件。`isort`适用于标准库、第三方库和自定义模块的导入排序,还可忽略特定导入,并能与IDE和编辑器插件集成,提升开发效率。
  • 06.17 15:33:08
    发表了文章 2024-06-17 15:33:08

    什么是go中的泛型

    Go 语言在1.18版引入了泛型,旨在简化代码并提高复用性。泛型通过类型参数允许编写通用函数,如一个`Add`函数可以处理整数和浮点数的加法,减少了为不同类型编写重复代码的需求。类型约束(如`int`或`float64`)定义了类型参数适用的范围。编译器自动进行类型推导,简化调用。泛型可用于结构体(如创建泛型缓存)和其他场景,当逻辑相同但涉及不同类型时,可考虑使用泛型。注意泛型在处理自定义类型时,返回值可能是底层类型而非自定义类型,需通过类型约束来保持一致性。
  • 06.14 16:53:08
    发表了文章 2024-06-14 16:53:08

    javascript中的生成器和迭代器是什么

    JavaScript中的生成器和迭代器是处理集合数据的利器,它们提供了一种遍历和操作元素的统一方式。迭代器是具有`next()`方法的对象,返回包含`value`和`done`属性的对象,用于循环处理集合。生成器函数更进一步,可以在执行过程中暂停并返回值,通过`yield`产生迭代值,适用于生成序列、异步编程和实现状态机等场景。例如,一个生成器可以无限生成斐波那契数列,或者在读取文件时控制异步流程。使用这些工具,代码变得更简洁、高效。
  • 06.12 15:16:11
    发表了文章 2024-06-12 15:16:11

    怎么基于Pytest+Requests+Allure实现接口自动化测试?

    该文介绍了一个基于Python的自动化测试框架,主要由pytest、requests和allure构成,采用关键字驱动模式。项目结构分为六层:工具层(api_keyword)封装了如get、post的请求;参数层(params)存储公共参数;用例层(case)包含测试用例;数据驱动层(data_driver)处理数据;数据层(data)提供数据;逻辑层(logic)实现用例逻辑。代码示例展示了如何使用allure装饰器增强测试报告,以及如何使用yaml文件进行数据驱动。
  • 06.11 00:27:21
    发表了文章 2024-06-11 00:27:21

    Go语言中的空值与零值有什么区别?

    在Go语言中,`nil`和零值有显著区别。`nil`用于表示指针、通道等类型的“无”或“不存在”,而零值是类型的默认值,如数字的0,字符串的`''`。`nil`常用于未初始化的变量或错误处理,零值用于提供初始值和避免未初始化的使用。理解两者差异能提升代码质量和稳定性。
  • 06.05 14:45:38
    发表了文章 2024-06-05 14:45:38

    怎么通过第三方库实现标准库`database/sql`的驱动注入?

    在Go语言中,数据库驱动通过注入`database/sql`标准库实现,允许统一接口操作不同数据库。本文聚焦于`github.com/go-sql-driver/mysql`如何实现MySQL驱动。`database/sql`提供通用接口和驱动注册机制,全局变量管理驱动注册,`Register`函数负责添加驱动,而MySQL驱动在`init`函数中注册自身。通过这个机制,开发者能以一致的方式处理多种数据库。
  • 06.03 14:37:15
    发表了文章 2024-06-03 14:37:15

    Mybatis mapper动态代理解决方案

    该文介绍了Mybatis中使用Mapper接口的方式代替XML配置执行SQL。Mapper接口规范包括:namespace与接口类路径相同,select ID与接口方法名一致,parameterType和方法参数类型匹配,resultType与返回值类型一致。实现过程中,需配置Mapper.xml,编写Mapper.java接口,并在Mybatis-config.xml中设置。测试类中,通过SqlSession的getMapper方法获取接口的动态代理对象,调用方法执行SQL。

2024年05月

  • 05.30 11:52:48
    发表了文章 2024-05-30 11:52:48

    什么是时间轮?

    时间轮是一种用于任务调度和时间管理的数据结构,尤其适合处理大量定时任务的场景,如网络服务器或实时系统。它由一个圆形数组构成,每个槽代表固定时间间隔,任务根据执行时间添加到相应槽。时间推进时,指针移动并执行到期任务。时间轮具有高效性和简单性,插入和删除操作接近常数时间复杂度。层级时间轮可扩展处理更大时间范围和精度。在Spring Boot中,可以使用Netty的`HashedWheelTimer`实现高效定时任务管理。
  • 05.28 14:42:58
    发表了文章 2024-05-28 14:42:58

    @Async异步失效的9种场景

    在Spring中,启用@Async异步功能需要在启动类或配置类上使用`@EnableAsync`。若未使用此注解,@Async将无效。另外,内部方法调用(如在一个类的方法中调用另一个被@Async注解的方法)会导致异步功能失效,因为这不涉及Spring的AOP代理。此外,@Async方法必须是public,返回类型为void或Future,不能是static或final,且其所在的类需被@Service等注解以使Spring管理。如果使用@ComponentScan,确保正确扫描包含@Async类的包路径。
  • 05.25 17:28:35
    发表了文章 2024-05-25 17:28:35

    Redis宕机了,如何恢复数据

    Redis持久化是为了防止服务宕机导致内存中数据丢失。主要有两种策略:RDB(快照)和AOF(仅追加文件)。RDB在指定时间间隔生成数据集快照,保存到磁盘,通过fork子进程实现,避免阻塞主线程,但可能丢失部分数据。AOF记录每次写操作,实时写回磁盘,提供秒级数据丢失保障,可通过不同同步策略平衡性能和安全性。AOF文件可定期重写以优化空间效率。混合使用RDB和AOF能在数据安全性和恢复速度上找到平衡。
  • 05.23 14:43:05
    发表了文章 2024-05-23 14:43:05

    SpringBoot接收参数的方式

    本文介绍了Java Spring Boot中处理GET请求的多种方式。可以使用方法参数直接接收,或者通过`@RequestParam`注解指定必传参数。此外,可以用实体类接收多个相关参数,但不能同时使用`@RequestParam`。还可以通过`HttpServletRequest`对象获取参数,或利用`@PathVariable`接收路径变量。对于数组和集合参数,需注意使用`@RequestParam`注解。
  • 05.21 14:25:48
    发表了文章 2024-05-21 14:25:48

    9个SQL优化技巧

    本文总结了SQL查询优化的几个关键策略:1) 避免使用`select *`,只查询需要的字段;2) 检查执行计划,确保查询条件和排序字段使用了索引;3) 避免使用`or`连接,可考虑用`union`替代;4) 减少`in`和`not in`的使用,尤其是大数据量时;5) 避免左模糊查询,以利用索引;6) 使用JOIN代替子查询,提高效率;7) 根据需求选择合适的JOIN类型(如INNER JOIN、LEFT JOIN);8) 优化`group by`字段,使用索引和覆盖索引;9) 对深分页查询进行优化,如使用子查询、标签记录法。这些策略有助于提升接口性能和数据库效率。
  • 05.17 18:02:33
    发表了文章 2024-05-17 18:02:33

    怎样用EasyExcel导出更多代码?

    在处理大量数据导出时遇到Java OutOfMemoryError(OOM)。最初使用公司内部工具直接查询全量数据写入Excel,导致OOM。改用阿里EasyExcel后,虽偶发OOM,但问题依旧存在。为解决此问题,采用了分页查询并分批次写入Excel的方法,有效避免了OOM。为简化此过程,封装了一个EasyExcelExport抽象类,包含分批次导出和不分批次导出的方法。使用时需实现getData()和convertSourceData2ExportEntity()方法。通过示例展示了如何利用这个工具类进行分批导出,避免了内存溢出,并减少了重复代码。

2023年06月

  • 06.06 16:58:24
    发表了文章 2023-06-06 16:58:24

    使用Spring Batch进行批量处理

    在Java后端开发中,批量处理是一个非常常见的需求。例如,我们需要从数据库中读取大量数据,对这些数据进行处理,然后将处理后的结果写回到数据库中。这时候,使用Spring Batch框架可以帮助我们快速地实现批量处理的功能。

2023年05月

  • 05.30 15:29:17
    发表了文章 2023-05-30 15:29:17

    12.ThreadLocal的那点小秘密

    通常线程池不会销毁线程,因此在线程池中使用ThreadLcoal,且没有正确执行ThreadLocal#remove的话,线程中会一直存在ThreadLocal关联的Value,那么就需要考虑清楚,这次的ThreadLocal对下一是否还适用?
  • 05.24 16:55:59
    发表了文章 2023-05-24 16:55:59

    不需要策略模式也能避免满屏if/else

    可能不少开发同学刚接入代码的时候是这么写的,也可能是想省事,也可能是真的不知道用什么办法解决。但从今天开始,你看完这篇文章,你自己都不会允许自己出现上述情况。
  • 05.17 16:31:05
    发表了文章 2023-05-17 16:31:05

    对线面试官:浅聊一下 Java 虚拟机栈?

    对于 JVM(Java 虚拟机)来说,它有两个非常重要的区域,一个是栈(Java 虚拟机栈),另一个是堆。堆是 JVM 的存储单位,所有的对象和数组都是存储在此区域的;而栈是 JVM 的运行单位,它主管 Java 程序运行的。那么为什么它有这样的魔力?它存储的又是什么数据?接下来,我们一起来看。
  • 05.09 16:03:57
    发表了文章 2023-05-09 16:03:57

    一文搞定接口幂等性架构设计方案

    现如今很多系统都会基于分布式或微服务思想完成对系统的架构设计。那么在这一个系统中,就会存在若干个微服务,而且服务间也会产生相互通信调用。那么既然产生了服务调用,就必然会存在服务调用延迟或失败的问题。当出现这种问题,服务端会进行重试等操作或客户端有可能会进行多次点击提交。如果这样请求多次的话,那最终处理的数据结果就一定要保证统一,如支付场景。此时就需要通过保证业务幂等性方案来完成。
  • 05.04 16:01:23
    发表了文章 2023-05-04 16:01:23

    重学Java之泛型的基本使用

    本身是打算接着写JMM、JCStress,然后这两个是在公司闲暇的时候随手写的,没有推到Github上,但写点什么可以让我获得宁静的感觉,所性就从待办中拎了一篇文章,也就是这篇泛型。这篇文章来自于我朋友提出的一个问题,比如我在一个类里面声明了两个方法,两个方法只有返回类型是int,一个是Integer,像下面这样,能否通过编译:

2023年04月

  • 04.25 17:03:16
    发表了文章 2023-04-25 17:03:16

    SpringBoot定时任务@Scheduled的多线程使用

    @Scheduled是Spring框架中的一个注解,它可以用于配置定时任务,使得方法可以按照规定的时间间隔定时执行。在使用该注解时,我们可以指定任务的执行时间、循环周期、并发数等参数,从而实现定时任务的功能。在Spring Boot中,@Scheduled注解可以直接应用于方法上。
  • 04.18 17:33:19
    发表了文章 2023-04-18 17:33:19

    Java对象的序列化和反序列化

    Java 对象的序列化和反序列化是一种将对象转换成字节流并存储在硬盘或网络中,以及从字节流中重新加载对象的操作。Java 的序列化和反序列化提供了一种方便的方式,使得可以将对象在不同的应用程序之间进行交互。
  • 04.12 16:46:52
    发表了文章 2023-04-12 16:46:52

    如何快速实现一个榜单排名的需求

    可以看到使用rank()函数的时候相同的点赞数会返回相同的排名,排名会产生跳跃,最终的排名不是连续的 dense_rank()
  • 04.07 16:55:08
    发表了文章 2023-04-07 16:55:08

    线上cpu报警的一次接口优化

    春天到了大地都复苏了,沉寂了很久的cpu也开始慢慢复苏了,所谓前人埋坑后人填坑,伴随着阿里云监控报警,线上CPU使用率暴增,于是就开始了排查之路。
  • 04.04 16:22:14
    发表了文章 2023-04-04 16:22:14

    玩转JUC工具,Java并发编程不再危机四伏

    当今互联网应用普遍需要支持高并发访问,而Java作为一种广泛使用的编程语言,其并发编程能力对于实现高性能的应用非常重要。而Java的JUC(java.util.concurrent)并发工具就提供了许多实用的工具类和接口,可以让Java应用轻松实现高效的并发编程。

2023年03月

  • 03.28 15:59:20
    发表了文章 2023-03-28 15:59:20

    Java项目是不是分布式,真有那么重要吗?

    大概不知道从什么时候,「微服务」「分布式」这两个词又再次频繁出现在我的视线里。 「微服务」「分布式」在我刚毕业的时候还是比较关注的,那时候还入门了一把SpringCloud,写了一篇很长的文章,还是很顶的,有不少的大号都给我转载了,在知乎又获得了很多的赞。
  • 03.20 16:27:25
    发表了文章 2023-03-20 16:27:25

    ThreadLocal源码分析

    ThreadLocal,即线程局部变量。主要用于线程间数据隔离。这些变量在多线程环境下访问(通过get或set方法访问)时能保证各个线程里的变量相对独立于其他线程内的变量,ThreadLocal实例通常来说都是private static类型。ThreadLocal不是为了解决多线程访问共享变量,而是为每个线程创建一个单独的变量副本,提供了保持对象的方法和避免参数传递的复杂性。
  • 03.13 17:25:31
    发表了文章 2023-03-13 17:25:31

    自动写代码?别闹了!

    这几天,GitHub 上有个很火的插件在抖音刷屏了——Copilot。 这个神器有啥用呢?简单来讲,它就是一款由人工智能打造的编程辅助工具。 我们来看看它有啥用。
  • 03.10 16:58:10
    发表了文章 2023-03-10 16:58:10

    Java中如何解析SQL语句、格式化SQL语句、生成SQL语句?

    JSqlParser是一个用Java编写的SQL解析器,可以将SQL语句解析为Java对象,从而使开发人员能够轻松地分析、修改和重构SQL查询。
  • 03.07 17:36:19
    发表了文章 2023-03-07 17:36:19

    为啥一个 main 方法就能启动项目

    在 Spring Boot 出现之前,我们要运行一个 Java Web 应用,首先需要有一个 Web 容器(例如 Tomcat 或 Jetty),然后将我们的 Web 应用打包后放到容器的相应目录下,最后再启动容器。
  • 发表了文章 2024-12-10

    Java 11 的String是如何优化存储的?

  • 发表了文章 2024-12-06

    Java 异常处理:11 个异常处理最佳实践

  • 发表了文章 2024-12-04

    java 为什么 String 在 java 中是不可变的?

  • 发表了文章 2024-12-02

    Spring Boot集成MinIO

  • 发表了文章 2024-11-27

    Java 8 异步编程利器:CompletableFuture

  • 发表了文章 2024-11-25

    springboot解决跨域问题

  • 发表了文章 2024-11-21

    WebService客户端调用的5种常见方式

  • 发表了文章 2024-11-15

    Java设计模式:建造者模式详解

  • 发表了文章 2024-11-13

    Jackson反序列化不可变类

  • 发表了文章 2024-11-11

    mysql 的ReLog和BinLog区别

  • 发表了文章 2024-11-08

    go进阶编程:Golang中的文件与文件夹操作指南

  • 发表了文章 2024-11-06

    Go文件操作:掌握Go的文件读写与操作技巧

  • 发表了文章 2024-11-04

    Java基础(13)抽象类、接口

  • 发表了文章 2024-10-30

    MySQL主从复制原理和使用

  • 发表了文章 2024-10-28

    Java泛型是什么?

  • 发表了文章 2024-10-24

    Python中的Socket魔法:如何利用socket模块构建强大的网络通信

  • 发表了文章 2024-10-21

    LangServe如何革新LLM应用部署?

  • 发表了文章 2024-10-17

    短频快task的java解决方案

  • 发表了文章 2024-10-15

    SpringBoot框架日志详解

  • 发表了文章 2024-10-11

    Java 泛型深入解析:类型安全与灵活性的平衡

正在加载, 请稍后...
滑动查看更多
正在加载, 请稍后...
暂无更多信息
正在加载, 请稍后...
暂无更多信息