blog.hesey.net
舒の随想日记
http://blog.hesey.net/page/2
和分支预测一样,有时候你会采用一些试探性的方法去处理并发中产生的问题,例如经典的CAS Compare And Swap 算法,可能成功可能失败,喜忧参半。 Written by Hesey Wang in: 并发. Written by Hesey Wang in: 并发. Written by Hesey Wang in: 分布式. 你也可以在slideshare查看和下载 http:/ www.slideshare.net/heseymx/linux-io-scheduler. Written by Hesey Wang in: 技术. Written by Hesey Wang in: 分布式. Written by Hesey Wang in: 分布式. Written by Hesey Wang in: Linux. Public Key Infrastructure)设计,它默认认为 一台服务器 或者说一个IP 只会提供一个服务. Server Name Indication 定义在 RFC 4366. Written by Hesey Wang in: 技术.
blog.hesey.net
舒の随想日记 » 数据库
http://blog.hesey.net/category/tech/database
Written by Hesey Wang in: 分布式. Written by Hesey Wang in: 技术. 最近正在召开QCon北京2011大会,趁此机会学习了一部分QCon大会的PPT,大会的PPT可以在QCon大会官网下载 http:/ www.qconbeijing.com/schedule.html. 讲师 淘宝核心系统数据库组 余锋 褚霸. 在技术方案的着眼点上,讲师主要强调了 通过高性能硬件支持平台,充分利用Cache 这一点在之后的演讲中多次强调 ,充分考虑容灾性. 随机数据和顺序数据分离,随机数据采用Direct IO 优点是CPU占用率小,适用于缓存命中率较低的文件 ,顺序数据通过缓存读。 对于InnoDB,分配尽可能大的Buffer Pool,日志数据分开存储,减少锁对多核CPU的影响 减小锁的开销 ,适时清除InnoDB产生的日志Cache。 Written by Hesey Wang in: 技术. Written by Hesey Wang in: 技术. Java CAS 和ABA问题 菜鸟飞翔. 我只是认真 聊聊工匠情怀 [zz] 程序员的信仰.
blog.hesey.net
舒の随想日记 » 支持生产阻塞的线程池
http://blog.hesey.net/2013/04/blocking-threadpool-executor.html
等一下,既然J.U.C已经帮我们实现了线程池,为什么还要采用这一套东西 直接用ExecutorService不是更方便. Public void execute(Runnable command) { if (command = null) throw new NullPointerException(); if (poolSize = corePoolSize! AddIfUnderCorePoolSize(command) { if (runState = RUNNING & workQueue.offer(command) { if (runState! RUNNING poolSize = 0) ensureQueuedTaskHandled(command); } else if (! AddIfUnderMaximumPoolSize(command) reject(command); / is shutdown or saturated } }. EisShutdown() { r.run(); } } }. Written by Hesey Wang in: Java. Method g...
blog.hesey.net
舒の随想日记 » Java应用线上问题排查的常用工具和方法
http://blog.hesey.net/2013/09/common-troubleshooting-tools-and-methods-on-java.html
首先讲讲工具,JVM自带的一些工具是必须熟练掌握的,例如jstack, jmap, jstat等,它们可以帮我们去深入了解JVM正在做的事情,主要的适用领域有这些. 一般来说,我们用jstat去查看GC情况,判断是否存在YGC或FGC频繁的情况,再去看gc.log和jamp dump内存,MAT分析来定位问题 后面会有一个case针对这种场景。 常用的用法是jstat -gcutil pid time interval. Dump堆 -dump:[live],format=b,file=dump.bin. 1、MAT Eclipse Memory Analyzer. 官方地址 http:/ www.eclipse.org/mat/. 更多的用法可以参考详细的WiKi https:/ github.com/CSUG/HouseMD. WiKi https:/ github.com/alibaba/TBJMap. Check display last record for alert. 8211;cron/-c run in cron mode, output data to file. 8211;pcsw...
blog.hesey.net
舒の随想日记 » 一次CMS GC的调优工作
http://blog.hesey.net/2013/11/cms-gc-optimize.html
Written by Hesey Wang in: Java. 6 Comments ». 我们xmn设置2g,但当年轻代设大后,年轻代的垃圾收集时间增长比较大.楼主咋解决的? 五月 4th, 2014 at 上午 10:08. 如文中说的, 只要QPS和rt稳定,正在处理的请求中的对象还是那么多 ,MinorGC时间变长通常意味着YoungGen的Live Object变多了。 Comment 2014 年 05 月 01 日. Young GC会stop the world吗 印象中,只有FullGC会。 五月 13th, 2014 at 下午 2:35. 五月 13th, 2014 at 下午 2:42. 五月 13th, 2014 at 下午 3:32. 还好吧,和你young gen的live object大小有关,你可以看下gc log的时间. Comment 2014 年 05 月 08 日. RSS feed for comments on this post. 我只是认真 聊聊工匠情怀 ← 大师兄的博客. 2006 - 2016 Hesey (舒).
blog.hesey.net
舒の随想日记 » 消除Java应用中的Exception开销
http://blog.hesey.net/2013/11/eliminate-exception-overhead-in-java.html
可以用perf top去看下us的开销,如果 ZN19java lang Throwable19fill in stack traceE6HandleP6Thread. 最简单的用BTrace去跟一下Exception. init 看构造Exception的栈是什么样的,然后排序汇总一下,一般就能看到什么Excetion最多,是谁抛的,然后有针对性地把它们去掉或者优化掉。 Written by Hesey Wang in: Java. 9 Comments ». 五月 9th, 2014 at 上午 9:56. 1,可以使用断言,减少if else 可以不用对服务方法设计统一的返回值 增强代码的可读性,扩展性。 Comment 2013 年 11 月 20 日. Comment 2013 年 11 月 21 日. Public MyException extends Exception{. Comment 2014 年 03 月 14 日. Comment 2014 年 05 月 08 日. 1,可以使用断言,减少if else 可以不用对服务方法设计统一的返回值 增强代码的可读性,扩展性。
blog.hesey.net
舒の随想日记 » 面向对象
http://blog.hesey.net/category/tech/object-oriented
Written by Hesey Wang in: 技术. Subtype polymorphism, almost universally called just polymorphism in the context of object-oriented programming, is the ability of one type, A, to appear as and be used like another type, B. 的区别,简单地说,只要是A类运用了extends关键字实现了对B类的继承,那么我们就可以说Class A是Class B的子类, 子类是一个语法层面上的词,只要满足继承的语法,就存在子类关系。 Written by Hesey Wang in: Java. Student stu = new Student(2010, "Hesey", 0, 10, "Software College");. Written by Hesey Wang in: Java. Java CAS 和ABA问题 菜鸟飞翔. 我只是认真 聊聊工匠情怀 [zz] 程序员的信仰.
blog.hesey.net
舒の随想日记 » 如何真实压测一个Web浏览型应用的性能
http://blog.hesey.net/2013/11/how-to-benchmark-web-application.html
构造什么样的请求 构造的请求是否真实 构造的请求各种业务场景的配比 读写比例. Written by Hesey Wang in: 分布式. 2 Comments ». 十一月 18th, 2013 at 下午 7:08. Comment 2013 年 11 月 18 日. RSS feed for comments on this post. 我只是认真 聊聊工匠情怀 ← 大师兄的博客. 2006 - 2016 Hesey (舒).
blog.hesey.net
舒の随想日记 » 何时对null值做Cache
http://blog.hesey.net/2013/04/cache-null.html
1、查询时put 先查Cache,若不命中,则查存储 例如DB ,查到后put进Cache。 四、How to put null. Written by Hesey Wang in: Java. 2 Comments ». 四月 5th, 2013 at 下午 10:04. Comment 2013 年 04 月 05 日. RSS feed for comments on this post. 我只是认真 聊聊工匠情怀 ← 大师兄的博客. 2006 - 2016 Hesey (舒).