自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 Kafka 批量消费

业务背景项目有个需求需要统计IM聊天相关数据,原设计思想是在聊天产生时通过消息队列进行数据记录,利用rocketMQ实现。上线后发现由于内部IM活跃用户量级较大,MQ生产者生产消息过多,消费者实时消费会造成服务器CPU和硬盘读写压力,在改不了硬件配置的情况下,笔者通过了解到kafka批量消费的实现可解决这个问题,记录下该方案。

2022-11-24 16:46:56 10083 1

原创 ping: www.baidu.com: Name or service not known

当在Linux机器上ping域名,提示ping: www.baidu.com: Name or service not known这说明绝大部分原因是由于dns服务器没有配置导致的问题。DNS:8.8.8.8 或者 114.114.114.1141.可以直接在/ect/syconfig/network-scripts/ifcfg-xxx里面添加:DNS1=8.8.8.8DNS2=114.114.114.114重启网络: service network restart查看/etc/res

2021-08-13 13:54:55 4320

原创 @ConfigurationProperties的使用

SpringBoot的配置文件有yml和properties两种,个人觉得properties更好用,但是这里以yml格式为例来说。我们都知道@Value 注解可以从配置文件读取一个配置,如果只是配置某个值,比如 某一个域名,配置为xxx.domain =www.xxx.com ,这样直接在代码里用@Value获取,比较方便。但是如果是一组相关的配置,比如验证码相关的配置,有图片验证码、手机验证码、邮箱验证码,如果想把验证码的长度做成可配置。是否能像springboot的配置呢翻看springb.

2021-06-02 17:59:16 1179

原创 进程调度

进程调度算法1、先入先服务 -------------非抢占式2、时间片轮转法 -------------抢占式3、最短进程优先 -------------非抢占式4、最短剩余时间优先 -------------抢占式5、最高响应比优先 -------------非抢占式6、反馈法 -------------抢占式7、多级反馈队列调度算法 -------------抢占式...

2021-05-06 17:56:29 159

原创 Java线程池的实现(二)---使用wait和notify实现生产者消费者模式

一、wait()和notify()作用wait()和notify()方法是Object类的方法,因为Object类是所有类的根类,因此所有类都有这两个方法。当调用对象的wait()方法时会释放获取的该对象的锁。既然是释放锁,我们首先要有锁才能释放,因此wait()方法必须在同步方法或同步代码块中才能执行即在synchronized修饰的方法或代码块。当调用对象的notify()方法时会唤醒等待获取该对象锁的一个线程,还有一个方法notifyAll()是唤醒等待获取该对象锁的所有线程。同理要唤醒其他

2021-05-06 14:09:10 387

原创 Java线程池的实现(一)---使用LinkBlockingDeque队列

记录下基于线程池工作原理,简单实现线程池的方式之一LinkedBlockingDeque/** * @Description: 用LinkBlockingDeque和volatile实现线程池 * @author:YIJIAREN225 * @Date:2021-4-30 16:44 */public class QueueThreadPool { // 存储任务队列 private Queue<Runnable> queue = new LinkedBlocki

2021-04-30 17:59:22 308 1

原创 logstash性能优化

logstash性能调优基本命令logstash优化基本命令进入容器Docker psDocker exec -it xx bash将容器内文件拷贝至本机docker cp 873220a79c3a:/tmp/dump.hprof /tmp/dump.hprofmysql -h T99PAISCORE-tidb.dbstg.paic.com.cn -P 3021 -u deployop -pDeploy查看CPU核数more /proc/cpuinfo |grep “physical

2021-04-23 17:52:44 944

转载 Java程序运行原理(三)- JVM(转)

Java虚拟机Java虚拟机(JVM)

2020-11-12 22:44:13 410

原创 Java程序运行原理(二)- JVM的类加载

Java多线程

2020-11-08 18:37:04 617

原创 Java程序运行原理(一)- JVM内存区域

Java程序运行原理分析我们先简要描述下,一般的高级语言是如何工作的:我们在编辑器或者IDE里根据每种语言的语法规则输入源代码(源代码一般比较容易理解)。这些代码是以二进制存储在我们的硬盘当中,编辑器或者IDE读取这些二进制还原成我们能读懂的英文。当运行程序的时候,会有个源代码文件转化成可执行的二进制文件的过程(这个过程通常由编译器完成)。有些编译器直接将源代码编译成机器码,载入内存后CPU直接运行。而机器码的格式是跟具体的CPU架构相关,Intel的CPU机器码对于ARMCPU来说是无法理解的。因

2020-11-07 22:46:59 718

原创 elasticsearch missing authentication credentials for REST request

elasticsearch missing authentication credentials for REST requestelasticsearch missing authentication credentials for REST request现在网上错误的、没有经过验证的技术贴漫天飞,很容易给读者造成各种误导,由于这部分关系,笔者也开始认真地进行技术贴的撰写,同时也mark下一些知识点,特别是在这种由于公司内网环境导致无法把资料迁出的情况。场景elasticsearch 在开启xp

2020-11-06 14:19:14 6773

转载 CSDN怎么转载别人的博客(转)

CSDN怎么转载别人的博客(转)博主第一次打算认真地在CDSN留下自己的足迹,由于初次写博客,最开始自然是先以模仿为主。本文的主要目的是描述怎么转载别人博客,熟悉后日后就慢慢转为原创内容,作为相互学习的见证。由于才了解到CSDN默认编辑器是markdown,花点时间来弄明白怎么转载博客。参考博客原址:https://blog.csdn.net/zhongjianblackberry/article/details/79456338 转载CSDN博客步骤: 1.在想要转载的CSD

2020-11-01 23:01:02 638

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除