java
文章平均质量分 74
王谷雨_
一个苟且偷生的Java程序员(找工作ing)
展开
-
RabbitMQ个人实践
MQ(Message Queue)就是消息队列,其有点有很多:解耦、异步、削峰等等,本文来聊一下RabbitMQ的一些概念以及使用。原创 2022-11-24 14:55:04 · 453 阅读 · 0 评论 -
DelayQueue达到定时触发效果
DelayQueue的特点就是插入Queue中的数据可以按照自定义的delay时间进行排序。只有delay时间小于0的元素才能够被取出。这样子,只要开启一个线程循环从DelayQueue中取值执行,就可以达到想要的效果定义执行的任务类public abstract class Task implements Delayed, Runnable{ private String id = ""; private long start = 0; /** * @par原创 2022-05-15 10:03:32 · 184 阅读 · 0 评论 -
Netty-ProtobufVarint32
效果ProtobufVarint32LengthFieldPrepender编码器用于在数据最前面添加Varint32,表示数据长度ProtobufVarint32FrameDecoder是相对应的解码器Varint32讲编码器之前,先来讲讲什么是VarInt32(vary int 32),即:可变长的int在java里,int的长度固定为 4 byte,即 32 bits,最高位为符号位。而Varint32则不固定长度,最小 1 byte,最大 5 byte,每个byte的最高原创 2022-05-15 10:02:03 · 988 阅读 · 0 评论 -
《Effective Java》读书笔记
以下是本人在阅读《Effective Java》期间记录的笔记,未经整理。有兴趣的可以看看,有问题可以探讨。第二章 创建和销毁对象1. 考虑使用静态工厂方法代替构造方法优点:静态方法可以命名(见名知意)单例模式(减少创建对象的开销)可以返回当前类的子类而不是当前类根据参数不同返回不同实现类类不需要存在,可以反射生成(比如数据库的DriverManager)缺点:没有公共或受保护构造方法的类不能被子类化???程序员很难找到它们2. 当构造方法参数过多时使用 builder 模式原创 2022-05-13 17:57:03 · 557 阅读 · 0 评论