性能安全
文章平均质量分 65
沙加神
I like to program and write stuff, making things a reality always make me excited.I love open source and I spend most of spare time studying and contributing to it
展开
-
前端性能优化参考资料
推荐几篇不错的关于前端性能优化的原创E文: 1. http://developer.yahoo.com/performance/rules.html 2. http://code.google.com/intl/zh-CN/speed/page-speed/docs/rules_intro.html原创 2012-02-15 09:39:01 · 789 阅读 · 0 评论 -
Java Thread 那些事
这篇文章被压在草稿箱许久,最近公司内部的技术社区有同学贴出了几篇分享Java线程的文章,发觉有很多概念没有讲清楚,所以花点时间继续撰写,便有了这篇博文。本文只聚焦JVM层面的线程模型,不考虑和真实的操作系统Thread模型挂钩(由于篇幅有限,本文也不会介绍调优过程中对工具的综合使用,如ps,top,iostat,jstack,TDA plugin,Thread inspector.如果有问题,欢迎大家留言交流)。后面会考虑对xUnix和Windows平台的线程/进程模型进行深入分析,也希望大家能够喜欢。原创 2013-12-12 12:56:13 · 4194 阅读 · 0 评论 -
jvm serializer 功能&性能基准测试
该项目分析了目前主流分布式通讯相关开源产品中使用的No Schema序列化产品Kryo,Fastjson,Hessian的序列化机制,通过构造相对比较复杂的数据model,针对序列化size,序列化时间进行了细致测试。通过测试报告可以清晰的看出Kryo无疑是大赢家,无论是序列化大小,还是速度上都更胜一筹,这也就不难理解为什么Spark,Storm等流计算框架会选它作为序列化工具。另外,可以看出这三款软件在BitSet,EnumSet等特殊类型的序列化上还有不少问题,作者也给Kryo,Fastjson社区提了原创 2015-01-07 17:42:51 · 2172 阅读 · 0 评论 -
关乎性能的思考
现在工程师们越发的喜欢谈性能(CPU, memery, IO, container, middleware等),性能调优似乎也成为软件行业基础架构师越来越倚重的技艺之一。通常情况下,性能shooting也无外乎分为几个过程。其一,performance diagnostic & bottleneck positioning,这一步往往是关键,当然手法也是千奇百怪,这里不做赘述。第二,perform原创 2012-08-28 00:14:26 · 8690 阅读 · 14 评论 -
欢迎使用Performance analyzer 开源小工具!
开源性能分析小工具,欢迎大家使用!原创 2014-03-21 13:01:34 · 2554 阅读 · 0 评论 -
精通组件兼容性依赖
<<精通组件兼容性依赖>>,这篇文章首先从Java语言层面阐述了什么是兼容性,JDK是如何处理兼容性的?然后提出了一个最佳实践路线图,首先要保证你的组件包是面向接口编程的,别人可以稳定地依赖你的接口,而实现可以采用动态发现的机制去做。原创 2014-10-28 15:08:02 · 2006 阅读 · 0 评论 -
APNS 那些事!
之前在消息推送中间件APush里实现了对APNS的桥接,并利用业余时间阅读了官方指南Local and Push Notification Programming Guide,蛮有心得的。稍作总结,分享给大家,希望能够喜欢,欢迎留言讨论!原创 2014-08-19 20:34:37 · 4514 阅读 · 0 评论 -
分布式通讯优化篇 – IRQ affinity
在一次C500K性能压测过程中,发现一个问题:8 processor的CPU,负载基本集中在CPU0,并且负载达到70以上,并通过mpstat发现CPU0每秒总中断(%irq+%soft)次数比较高。 基于对此问题的研究,解决和思考,便有了这篇文章,希望大家能够喜欢,也欢迎大家留言讨论。原创 2014-11-10 19:44:26 · 3108 阅读 · 0 评论 -
MOM系列文章之 - Final Consistency 讨论
消息中间件的最终一致性如何保证?架构上面,主要考虑以下几个方面: 1。事务同步; 2。消息缓存or持久化; 3。定时钟轮询 事务同步很好理解。我的消息总不能在事务提交前发出去吧?为此,架构设计中我们通常这么干: public boolean publish(AsyncEvent event) { bool原创 2012-02-28 19:45:43 · 968 阅读 · 0 评论 -
Using HttpClient properly to avoid CLOSE_WAIT TCP connections
Apache的HttpComponent组件,用的人不在少数。但是能用好的人,却微乎其微,为什么?很简单,TCP里面的细节实现不是每个人都能捕获到的(细节是魔鬼),像并发请求控制&资源释放,Nagle算法参数优化,Connection eviction,跟ulimit配对的total connection,重定向策略定制化,两类超时时间的合理设置,流读写等等。 在最近的项目中,原创 2013-07-29 14:03:18 · 3329 阅读 · 0 评论 -
二进制兼容原理 - C/C++ && Java
从某种意义上来讲,现代软件已经不是数据结构与算法的简单聚合,更多的是构件开发以及基于体系结构的构件组装.而这些构件,通常都是由不同厂商、作者开发的共享组件,所以组件管理变得越来越重要。在这方面,一个极其重要的问题是类的不同版本的二进制兼容性,即一个类改变时,新版的类是否可以直接替换原来的类,却不至于损坏其他由不同厂商/作者开发的依赖于该类的组件? 在C++中,对域(类变量或实例变量原创 2012-07-29 17:15:16 · 2521 阅读 · 1 评论 -
web profiler 环境搭建
初尝LAMP,WAMP or MAMP,可能大多数同学会想到使用AppSer套件吧。今天,借着我们的Web Profiler,我想和大家分享的一下LAMP环境搭建(不过这里暂时不需要M)。 一. 环境准备 工欲善其事必先利其器。首先,我们需要列出环境搭建过程中的Requirements and Optional。 1. Apache HTTP Server 2.4.x原创 2012-04-07 15:08:29 · 1137 阅读 · 0 评论 -
开发那点事系列四 - 如何构建高效Ajax应用
如何提高Ajax应用的质量和性能,概括来讲,该过程主要包含以下几个步骤: 1.JavaScript代码的潜在错误和代码风格检查。通过集成JSLint可以找到代码中潜在的问题。 2.JavaScript文件的合并、缩减和混淆。通过合并可以把多个JavaScript文件合成一个,减少页面加载时的HTTP请求个数;通过缩减可以去掉JavaScript代码中多余的空原创 2012-06-25 10:48:23 · 1127 阅读 · 0 评论 -
JVM调优文献参考
俗话说的好,净信书不如无书。怀揣着怀疑,翻阅了诸多权威文献。这里总结了自己工作、学习中做性能调优时经常翻阅的文献,希望能为大家带来方便。如果在阅读过程中有什么不清楚的,也欢迎大家留言,一同探讨。 (1) http://www.oracle.com/technetwork/java/javase/tech/exactoptions-jsp-141536.html 我们都知道,JVM spec,早原创 2012-01-14 15:42:54 · 1862 阅读 · 2 评论