<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[michaelforgood的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/michaelforgood</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; michaelforgood]]></copyright><item><title><![CDATA[微服务手绘图]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/105856343</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/105856343</guid><author>michaelforgood</author><pubDate>Thu, 30 Apr 2020 10:37:13 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/66caf18f597b?utm_campaign=haruki

]]></description><category></category></item><item><title><![CDATA[Test double]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/105571145</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/105571145</guid><author>michaelforgood</author><pubDate>Fri, 17 Apr 2020 00:38:21 +0800</pubDate><description><![CDATA[https://zhuanlan.zhihu.com/p/26942686
https://dev.to/milipski/test-doubles—fakes-mocks-and-stubs

]]></description><category></category></item><item><title><![CDATA[MongoDB]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/105421953</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/105421953</guid><author>michaelforgood</author><pubDate>Thu, 09 Apr 2020 22:26:19 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/clsn/p/8214194.html#auto_id_0

]]></description><category></category></item><item><title><![CDATA[zookeeper CAP]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/105267988</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/105267988</guid><author>michaelforgood</author><pubDate>Thu, 02 Apr 2020 13:32:55 +0800</pubDate><description><![CDATA[https://www.infoq.cn/article/why-doesnot-alibaba-use-zookeeper/

]]></description><category></category></item><item><title><![CDATA[java VS Python]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/105025053</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/105025053</guid><author>michaelforgood</author><pubDate>Sun, 22 Mar 2020 11:37:32 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/mountain623/article/details/78218533

]]></description><category></category></item><item><title><![CDATA[elasticsearch]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104815377</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104815377</guid><author>michaelforgood</author><pubDate>Thu, 12 Mar 2020 11:45:56 +0800</pubDate><description><![CDATA[https://blog.youkuaiyun.com/jiaojiao521765146514/article/details/83750548

]]></description><category></category></item><item><title><![CDATA[mybatis面试题]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104773735</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104773735</guid><author>michaelforgood</author><pubDate>Tue, 10 Mar 2020 14:19:06 +0800</pubDate><description><![CDATA[https://thinkwon.blog.youkuaiyun.com/article/details/101292950

]]></description><category></category></item><item><title><![CDATA[JVM调优]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104751924</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104751924</guid><author>michaelforgood</author><pubDate>Mon, 09 Mar 2020 14:22:12 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/csniper/p/5592593.html

]]></description><category></category></item><item><title><![CDATA[tomcat并发设置]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104751692</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104751692</guid><author>michaelforgood</author><pubDate>Mon, 09 Mar 2020 14:13:40 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/24338493c82f
https://blog.youkuaiyun.com/huiyunfei/article/details/79165120

]]></description><category></category></item><item><title><![CDATA[GC日志]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104701063</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104701063</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 17:58:11 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/qlqwjy/p/7929414.html

]]></description><category></category></item><item><title><![CDATA[JVM GC]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104697191</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104697191</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 15:33:54 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/50d5c88b272d
https://blog.youkuaiyun.com/chenleixing/article/details/46706039
https://www.cnblogs.com/JavaArchitect/p/8182040.html

]]></description><category></category></item><item><title><![CDATA[Jstack GC 日志]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104695803</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104695803</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 14:42:09 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/f3633da43989

]]></description><category></category></item><item><title><![CDATA[如何准备JAVA工作经验]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104695704</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104695704</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 14:38:15 +0800</pubDate><description><![CDATA[https://www.cnblogs.com/JavaArchitect/p/12298114.html

]]></description><category></category></item><item><title><![CDATA[threadlocal]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104693916</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104693916</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 13:07:33 +0800</pubDate><description><![CDATA[https://www.jianshu.com/p/98b68c97df9b
https://www.jianshu.com/p/a1cd61fa22da

ThreadLocal为什么会内存泄漏
ThreadLocal在ThreadLocalMap中是以一个弱引用身份被Entry中的Key引用的，因此如果ThreadLocal没有外部强引用来引用它，那么ThreadLocal会在下次JVM垃圾收...]]></description><category></category></item><item><title><![CDATA[垃圾回收和引用]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104693804</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104693804</guid><author>michaelforgood</author><pubDate>Fri, 06 Mar 2020 12:58:59 +0800</pubDate><description><![CDATA[·强 引用 是最 传统 的“ 引用” 的 定义， 是指 在 程序 代码 之中 普遍存在 的 引用 赋值， 即 类似“ Object obj= new Object()” 这种 引用 关系。 无论 任何 情况下， 只要 强 引用 关系 还 存在， 垃圾 收集 器 就 永远 不会 回 收掉 被 引用 的 对象。
·软 引用 是 用来 描述 一些 还有 用， 但 非 必须的 对象。 只 被 软 引用 关...]]></description><category></category></item><item><title><![CDATA[mysql分区]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104632599</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104632599</guid><author>michaelforgood</author><pubDate>Tue, 03 Mar 2020 14:51:00 +0800</pubDate><description><![CDATA[https://yq.aliyun.com/articles/694143
https://time.geekbang.org/column/article/118384

]]></description><category></category></item><item><title><![CDATA[mysql避免死锁]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104631653</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104631653</guid><author>michaelforgood</author><pubDate>Tue, 03 Mar 2020 14:12:05 +0800</pubDate><description><![CDATA[https://time.geekbang.org/column/article/117247
解决死锁的最佳方式当然就是预防死锁的发生了，我们平时编程中，可以通过以下一些常规手段来预防死锁的发生：1. 在编程中尽量按照固定的顺序来处理数据库记录，假设有两个更新操作，分别更新两条相同的记录，但更新顺序不一样，有可能导致死锁；2. 在允许幻读和不可重复读的情况下，尽量使用 RC 事务隔离级别，可以避...]]></description><category></category></item><item><title><![CDATA[秒杀限流]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104628383</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104628383</guid><author>michaelforgood</author><pubDate>Tue, 03 Mar 2020 11:24:17 +0800</pubDate><description><![CDATA[https://time.geekbang.org/dailylesson/detail/100044013




]]></description><category></category></item><item><title><![CDATA[CAS ABA]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104617617</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104617617</guid><author>michaelforgood</author><pubDate>Mon, 02 Mar 2020 19:09:27 +0800</pubDate><description><![CDATA[https://yq.aliyun.com/articles/636381

]]></description><category></category></item><item><title><![CDATA[redis 抢票]]></title><link>https://blog.youkuaiyun.com/michaelforgood/article/details/104617247</link><guid>https://blog.youkuaiyun.com/michaelforgood/article/details/104617247</guid><author>michaelforgood</author><pubDate>Mon, 02 Mar 2020 19:07:19 +0800</pubDate><description><![CDATA[https://time.geekbang.org/column/article/132851
首先 Redis 不支持事务的回滚机制（Rollback），这也就意味着当事务发生了错误（只要不是语法错误），整个事务依然会继续执行下去，直到事务队列中所有命令都执行完毕。在Redis 官方文档中说明了为什么 Redis 不支持事务回滚。只有当编程语法错误的时候，Redis 命令执行才会失败。这种错误通...]]></description><category></category></item></channel></rss>