it噩梦
码龄8年
关注
提问 私信
  • 博客:406,222
    社区:944
    动态:463
    407,629
    总访问量
  • 305
    原创
  • 12,272
    排名
  • 447
    粉丝
  • 2
    铁粉
  • 学习成就

个人简介:好记性不如烂笔头

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
  • 加入CSDN时间: 2017-01-17
博客简介:

batman

查看详细资料
  • 原力等级
    成就
    当前等级
    5
    当前总分
    1,601
    当月
    4
个人成就
  • 获得837次点赞
  • 内容获得165次评论
  • 获得973次收藏
  • 代码片获得1,336次分享
创作历程
  • 41篇
    2024年
  • 53篇
    2022年
  • 51篇
    2021年
  • 94篇
    2020年
  • 53篇
    2019年
  • 11篇
    2018年
  • 3篇
    2017年
成就勋章
TA的专栏
  • k8s
    26篇
  • 中间件
    40篇
  • 多线程
    19篇
  • java
    31篇
  • rocketmq
    9篇
  • redis
    6篇
  • springcloud alibaba
    14篇
  • mysql
    22篇
  • jvm
    24篇
  • 微服务
    11篇
  • spring cloud
    8篇
  • 计算机网络
    2篇
  • docker
    4篇
  • kafka
    1篇
  • io
    2篇
  • 分布式
    7篇
  • go语言
    15篇
  • 工具
    2篇
  • shell
    2篇
  • mybatis
    4篇
  • grpc
    2篇
  • 安全
    1篇
  • springboot新发现
    22篇
创作活动更多

AI大模型如何赋能电商行业,引领变革?

如何使用AI技术实现购物推荐、会员分类、商品定价等方面的创新应用?如何运用AI技术提高电商平台的销售效率和用户体验呢?欢迎分享您的看法

175人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

k8s 容忍和污点

该值定义尽量避免将Pod调度到存在其不能容忍的Taint的节点上,但并不是强制的,也就是说,一个没有配置Toleration的Pod会优先部署至其他节点,没有其他可以调度的节点时,还是可以部署到effect为PreferNoSchedule的节点上的,NoSchedule没有这种机制。如果未被过滤的Taint中不存在effect值为NoExecute的Taint,但是存在effect值为PreferNoSchedule的Taint,则Kubernetes会尝试将Pod分配到该节点。
原创
发布博客 2024.09.12 ·
964 阅读 ·
5 点赞 ·
0 评论 ·
19 收藏

k8s 资源管理

在生产环境中,可能会有多个Kubernetes集群,面向开发环境、测试环境、预生产环境和生产环境等。身为Kubernetes管理员,必然知道每个环境的规模有多大、可调度资源有多少,并且知道如何合理地为容器分配内存和CPU,所以一个管理员去管理整个Kubernetes集群时,很少会有资源分配超出集群可调度范围的情况。在生产环境中,可能会有多个Kubernetes集群,面向开发环境、测试环境、预生产环境和生产环境等。
原创
发布博客 2024.09.10 ·
1329 阅读 ·
30 点赞 ·
0 评论 ·
27 收藏

k8s之HPA实践——实现Web服务器的自动伸缩特性

在生产环境中,总会有一些意想不到的事情发生,比如公司网站流量突然升高,此时之前创建的Pod已不足以支撑所有的访问,而运维人员也不可能24小时守着业务服务,这时就可以通过配置HPA,实现负载过高的情况下自动扩容Pod副本数以分摊高并发的流量,当流量恢复正常后,HPA会自动缩减Pod的数量。
原创
发布博客 2024.09.06 ·
472 阅读 ·
4 点赞 ·
0 评论 ·
2 收藏

docker构建多系统架构

manifest是一个文件,这个文件包含了有关于镜像信息,如层、大小和摘要。docker manifest命令还向用户提供附加信息,比如构建镜像的操作系统和体系结构。而manifest list是一个镜像清单列表,用于存放多个不同os/arch的镜像信息。我们可以创建一个manifest list来指向两个镜像(一个linux 64位和一个指向arm64位的镜像),然后对用户提供一个唯一的镜像名称。
原创
发布博客 2024.09.05 ·
881 阅读 ·
9 点赞 ·
0 评论 ·
1 收藏

docker镜像多阶段构建

Docker 多阶段构建是为了创建轻量化和更高效的 Docker 镜像而产生的一种技术。通过使用多阶段构建,可以将不同阶段的构建需求分离开来,最终结果只包含实际部署所需要的部分,从而缩小镜像的大小。假设你有一个简单的 Go 应用程序。使用多阶段构建来创建其 Docker 镜像。:从初始阶段复制所需文件,只保留运行时所需的部分。:构建需要完整环境和工具的部分,如编译代码。
原创
发布博客 2024.09.05 ·
216 阅读 ·
4 点赞 ·
0 评论 ·
0 收藏

java 使用intern()性能对比

JDK 7及其之后的版本,intern()方法可以直接把堆中的字符串对象的地址放到字符串常量池表共享,从而达到节省内存的目的。对于内存占用使用intern方法,可以减少一半左右。时间上也有一半的差距。
原创
发布博客 2024.08.30 ·
239 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

字符串版本号转换为整形版本号比较

格式:标准版本号格式为x.y.z.e,其中x代表主版本号,y代表次版本号,z代表补丁号,e代表额外版本号,每个字段之间由.分隔。主版本号:主版本号一般从0或者1开始,可包含修饰信息,如stable_0,dev_v1,fixed_1等,一般当项目进行重大修改,如API兼容性变化时,则版本号加1。次版本号:次版本号是相对于主版本号而言,一般对应的是主版本下局部的调整,如增加功能时(不影响API的兼容性)。补丁号:一般是Bug的修复或者细小的变动。额外版本号。
原创
发布博客 2024.08.30 ·
209 阅读 ·
7 点赞 ·
0 评论 ·
4 收藏

不同JDK版本string的intern()方法

虽然intern()方法都是指返回字符串常量池中字符串对象引用,但是在不同的JDK版本中,字符串常量池的位置不同,
原创
发布博客 2024.08.30 ·
348 阅读 ·
7 点赞 ·
0 评论 ·
0 收藏

mybatis plus 使用 nested、 or查询

有多组版本号区间需要查询,同时有需要跟其他条件的关系为and。
原创
发布博客 2024.08.30 ·
489 阅读 ·
4 点赞 ·
0 评论 ·
0 收藏

java字符串常量池

String是字符串的意思,可以使用一对双引号引起来表示,而String又是一个类,所以可以用new关键字创建对象。因此字符串对象的创建有两种方式,分别是使用字面量定义和new的方式创建。字面量的定义方式以new的方式创建String类声明是加final修饰符的,表示String类不可被继承;String类实现了Serializable接口,表示字符串对象支持序列化;String类实现了Comparable接口,表示字符串对象可以比较大小。String在JDK 8及以前版本内部定义了。
原创
发布博客 2024.08.29 ·
704 阅读 ·
10 点赞 ·
0 评论 ·
27 收藏

java方法区

运行时常量池相对于class文件常量池的另外一个重要特征是具备动态性,Java语言并不要求常量一定只有编译期才能产生,也就是说,并非预置入class文件中常量池的内容才能进入方法区运行时常量池,运行期间也可以将新的常量放入池中,这种特性被开发人员利用得比较多的便是String类的intern()方法。上面我们讲了class文件中的常量池,接下来我们再讲一下什么是运行时常量池。加载该类的类加载器已经被回收,这个条件除非是经过精心设计的可替换类加载器的场景,如OSGi、JSP的重加载等,否则通常是很难达成的。
原创
发布博客 2024.08.27 ·
989 阅读 ·
26 点赞 ·
0 评论 ·
31 收藏

java直接内存

直接内存不是虚拟机运行时数据区的一部分,也不是Java虚拟机规范中定义的内存区域。直接内存是在Java堆外的、直接向操作系统申请的内存区间。直接内存来源于,可以通过ByteBuffer类操作。ByteBuffer类调用方法可以申请直接内存,方法内部创建了一个对象,对象存储直接内存的起始地址和大小,据此就可以操作直接内存。直接内存和堆内存之间的关系如图所示。
原创
发布博客 2024.08.26 ·
1028 阅读 ·
29 点赞 ·
0 评论 ·
24 收藏

java修改常量值

【代码】java修改常量值。
原创
发布博客 2024.08.26 ·
185 阅读 ·
3 点赞 ·
0 评论 ·
0 收藏

JVM对象在堆、栈、TLAP上的分配

一般在java程序中,new的对象是分配在堆空间中的,但是实际的情况是,大部分的new对象会进入堆空间中,而并非是全部的对象,还有另外两个地方可以存储new的对象,我们称之为栈上分配以及TLAB对象经过逃逸分析,有可能把对象分配到栈上。也就是说如果将对象分配到栈,需要使用逃逸分析手段。逃逸分析是一种可以有效减少Java程序中同步负载和内存堆分配压力的跨函数全局数据流分析算法。通过逃逸分析,Java HotSpot编译器能够分析出一个新对象引用的使用范围,从而决定是否要将这个对象分配到堆上。
原创
发布博客 2024.08.16 ·
742 阅读 ·
25 点赞 ·
0 评论 ·
16 收藏

ios解析系统符号表

下载完dyld源码后,解压,打开进入launch-cache打开dsc_extractor.cpp文件,将预处理指令从0改为1,执行该命令,会生成。需要通过之前准备的dsc_extractor来解压获取,使用方法。源码,我使用了dyld-519.2.2.tar.gz。使用其中的dsc_extractor工具,下载地址。该网址可以下载系统库beta系统库符号表。解压后可以双击打开dmg文件,在其中的。类似这样的文件,这些就是压缩的系统库。下载对应版本的固件。
原创
发布博客 2024.08.11 ·
417 阅读 ·
4 点赞 ·
0 评论 ·
8 收藏

ios手动符号表解析

内存地址(Memory Address):内存中每个数据单元的唯一标识符,用于在运行时访问数据,即 0x0000000103164eb2。基地址(Base Address):内存块或内存区域的起始地址,用于表示数据段或代码段的起始位置。即 0x103163000。结束地址(End Address):内存块或内存区域的终止地址,用于表示该内存块的范围。即 0x103166fff。解析符号表使用bugly提供的jar执行,即可。
原创
发布博客 2024.08.06 ·
504 阅读 ·
5 点赞 ·
0 评论 ·
3 收藏

springboot 实现kafka多源配置

实际开发中,不同的topic可能来自不同的集群,所以就需要配置不同的kafka数据源,基于springboot自动配置的思想,最终通过配置文件的配置,自动生成生产者及消费者的配置。
原创
发布博客 2024.06.02 ·
1011 阅读 ·
11 点赞 ·
1 评论 ·
3 收藏

kafka 发送文件二进制流及使用header发送附属信息

需要使用kafka发送文件二进制以及附属信息。
原创
发布博客 2024.06.02 ·
776 阅读 ·
7 点赞 ·
0 评论 ·
2 收藏

springboot kafka 提高拉取数量

如果 Kafka 仅仅参考 fetch.min.bytes 参数的要求,那么有可能会因为获取不到足够大小的消息而一直阻塞等待,从而无法发送响应给 Consumer,显然这是不合理的。消费者从服务器获取记录的最小字节数,broker 收到消费者拉取数据的请求的时候,如果可用数据量小于设置的值,那么 broker 将会等待有足够可用的数据的时候才返回给消费者,这样可以降低消费者和 broker 的工作负载。开发过程中,使用kafka批量消费,发现拉取数量一直为1,如何提高批量拉取数量,记录下踩坑记录。
原创
发布博客 2024.06.01 ·
911 阅读 ·
6 点赞 ·
0 评论 ·
7 收藏

kafka配置消费者重要参数

这个属性的默认值为5分钟。如果消费者没有在session.timeout.ms指定的时间内发送心跳给群组协调器,则会被认为已“死亡”,协调器就会触发再均衡,把分区分配给群组里的其他消费者。它的默认值是latest,意思是说,如果没有有效的偏移量,那么消费者将从最新的记录(在消费者启动之后写入Kafka的记录)开始读取。如果使用轮询策略为消费者C1和消费者C2分配分区,那么消费者C1将分配到主题T1的分区0和分区2以及主题T2的分区1,消费者C2将分配到主题T1的分区1以及主题T2的分区0和分区2。
原创
发布博客 2024.05.22 ·
1338 阅读 ·
24 点赞 ·
0 评论 ·
21 收藏
加载更多