2017年5月21日
摘要: 最近加班太多,很久没有更新博客了,周末看了下阿里大神并发的书籍,把知识点做个记录。 一:线程安全的定义 当多个线程并发访问某个类时,如果不用考虑运营环境下的调度和交替运行,且不需要额外的辅助,这里认为这个类就是线程安全的。 原子操作的描述:一个操作单元要么全部成功,要么全部失败。后面再看看数据库中关 阅读全文
posted @ 2017-05-21 23:56 二周目赤 阅读(348) 评论(0) 推荐(0) 编辑
  2017年2月20日
摘要: 一:jstack找到最耗cpu的线程并定位代码 1.ps -ef|grep java 或者 jps -l 得到进程pid 2.找到该进程内最耗cpu的线程,我一般使用: top -Hp pid 3.cpu时间最长的就是pid为21742的线程,printf "x%\n" 21742,得到十六进制,为 阅读全文
posted @ 2017-02-20 17:20 二周目赤 阅读(1730) 评论(0) 推荐(0) 编辑
  2017年2月1日
摘要: 我在前面说过了server的启动,差不多可以看到netty nio主要的东西包括了:nioEventLoop,nioMessageUnsafe,channelPipeline,channelHandler等。比较绕的就是handler的顺序:head >tail,这个也是netty链式管理复杂的地方 阅读全文
posted @ 2017-02-01 18:31 二周目赤 阅读(782) 评论(0) 推荐(0) 编辑
  2017年1月23日
摘要: nio server启动的第一步,都是要创建一个serverSocketChannel,我截取一段启动代码,一步步分析: 阅读全文
posted @ 2017-01-23 15:01 二周目赤 阅读(1156) 评论(0) 推荐(0) 编辑
  2017年1月5日
摘要: 转自:http://www.jellythink.com/archives/705 TCP是什么? 具体的关于TCP是什么,我不打算详细的说了;当你看到这篇文章时,我想你也知道TCP的概念了,想要更深入的了解TCP的工作,我们就继续。它只是一个超级麻烦的协议,而它又是互联网的基础,也是每个程序员必备 阅读全文
posted @ 2017-01-05 09:01 二周目赤 阅读(209) 评论(0) 推荐(0) 编辑
  2017年1月1日
摘要: 如果不了解netty的,可以百度下,netty社区现在也比较活跃。 现在所谓的大数据,flume,storm等底层都是netty。 netty的性能模型: io模型 >异步非阻塞io 1:jdk1.4开始提供了非阻塞io,即nio jdk1.5以后,epoll代替了poll,打破了selector上 阅读全文
posted @ 2017-01-01 20:44 二周目赤 阅读(208) 评论(0) 推荐(0) 编辑
  2014年7月13日
摘要: ClassPathResource: String resource = ""; //相对路径 Resource resource = new ClassPathResource(resource); //获取当前类下,同一个包中的资源 Resource resource = new Cla... 阅读全文
posted @ 2014-07-13 23:24 二周目赤 阅读(567) 评论(0) 推荐(0) 编辑