<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[aideserter的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/aideserter</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; aideserter]]></copyright><item><title><![CDATA[如何获取java运行时动态生成的class文件?]]></title><link>https://blog.youkuaiyun.com/aideserter/article/details/120488421</link><guid>https://blog.youkuaiyun.com/aideserter/article/details/120488421</guid><author>aideserter</author><pubDate>Sun, 26 Sep 2021 14:36:00 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/yougewe/p/9651555.html

]]></description><category></category></item><item><title><![CDATA[多线程交替打印，循环输出ABBCCC]]></title><link>https://blog.youkuaiyun.com/aideserter/article/details/120450448</link><guid>https://blog.youkuaiyun.com/aideserter/article/details/120450448</guid><author>aideserter</author><pubDate>Fri, 24 Sep 2021 10:48:46 +0800</pubDate><description><![CDATA[多线程交替打印，循环输出ABBCCC

使用synchronized/wait/notifyAll

/**
 * 按照ABBCCC...的顺序打印20次
 */
public class ABBCCC_Wait {

    public static void main(String[] args) {
        ABBCCCPrinter printer = new ABBCCCPrinter(1, 5);
        new Thread(() -&gt; {
            pr]]></description><category></category></item><item><title><![CDATA[Push or Pull: RocketMQ长轮询原理及源码分析]]></title><link>https://blog.youkuaiyun.com/aideserter/article/details/118713781</link><guid>https://blog.youkuaiyun.com/aideserter/article/details/118713781</guid><author>aideserter</author><pubDate>Tue, 13 Jul 2021 23:43:03 +0800</pubDate><description><![CDATA[Push or Pull: RocketMQ长轮询原理及源码分析
1. Push vs Pull
Push即服务端主动发送数据给客户端。在服务端收到消息之后立即推送给客户端。Push模型最大的好处就是实时性。因为服务端可以做到只要有消息就立即推送，所以消息的消费没有“额外”的延迟。但是Push模式在消息中间件的场景中会面临以下一些问题：
1）在Broker端需要维护Consumer的状态，不利于Broker去支持大量的Consumer的场景；
2）Consumer的消费速度是不一致的，由Broker进行推送]]></description><category></category></item><item><title><![CDATA[RocketMQ消费进度offset]]></title><link>https://blog.youkuaiyun.com/aideserter/article/details/118701035</link><guid>https://blog.youkuaiyun.com/aideserter/article/details/118701035</guid><author>aideserter</author><pubDate>Tue, 13 Jul 2021 16:58:15 +0800</pubDate><description><![CDATA[1. OffsetStore:消费进度管理接口
1.1 接口方法

1 ) void load()
从消息进度存储文件加载消息进度到内存。
2 ) void updateOffset ( final MessageQueue mq, final long offset, final boolean increaseOnly)
更新内存中的消息消费进度。
MessageQueue mq ：消息消费队列。
3 ) long read Offset ( fin a l MessageQueue mq, final]]></description><category></category></item></channel></rss>