编程之美
文章平均质量分 71
沙加神
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
展开
-
APNS 那些事!
之前在消息推送中间件APush里实现了对APNS的桥接,并利用业余时间阅读了官方指南Local and Push Notification Programming Guide,蛮有心得的。稍作总结,分享给大家,希望能够喜欢,欢迎留言讨论!原创 2014-08-19 20:34:37 · 4513 阅读 · 0 评论 -
精通组件兼容性依赖
<<精通组件兼容性依赖>>,这篇文章首先从Java语言层面阐述了什么是兼容性,JDK是如何处理兼容性的?然后提出了一个最佳实践路线图,首先要保证你的组件包是面向接口编程的,别人可以稳定地依赖你的接口,而实现可以采用动态发现的机制去做。原创 2014-10-28 15:08:02 · 2005 阅读 · 0 评论 -
玩转Netty – 从Netty3升级到Netty4
这篇文章主要和大家分享一下,在我们基础软件升级过程中遇到的经典Netty问题。当然,官方资料也许是一个更好的补充。另外,大家如果对Netty及其Grizzly架构以及源码有疑问的,欢迎交流。后续会为大家奉献我们基于Grizzly和Netty构建的RPC框架的更多的内幕,希望大家能够喜欢!原创 2014-11-04 20:03:09 · 6465 阅读 · 0 评论 -
MOM系列文章之 - Spring Jms Integration 解读
前阵子对Spring Jms实现进行了一些扩展,借此机会系统化地研究了一下Spring对JMS的支持,整理成文,希望大家能够喜欢! 本文打算从两个维度(编程API和包结构)展开讨论。首先,让我们来看下Spring中我们最最经常用到的JmsTemplate,上图原创 2013-12-23 20:03:59 · 3427 阅读 · 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 · 3328 阅读 · 0 评论 -
Webx源码研读心得
之前,一直对Webx的印象是厚重,n多无厘头的默认契约等等。最近一段时间,构建在之上的应用安全问题频出,于是花了一些时间,研究了其Spring ext部分的源码,虽说有spring源码知识的基础,不过研究Webx的过程中,还是让人受益匪浅,也慢慢改变了之前的一些看法。这里我摘录下自己研究源码时的带着的疑问,感兴趣的同学可以留言一同讨论,看看有没有更优的实现。1. Webx中是如何做到诸如:原创 2013-07-25 14:19:40 · 1979 阅读 · 0 评论 -
Mind,Diagram,Design
最近在设计新版的流程渲染引擎,考虑采用无损失放缩的矢量图SVG去搞,从技术调研到实现蛮有心得的,这里贴出自己的设计思路,欢迎拍砖~ 首先说下诉求,简单说就是绘制流程地图。其次简单列举下需要注意的技术点:(1) 图形元素和坐标元素解析(合并or分拆)(2) DOM树解析,原生JAXP,DOM4J or SVG DOM utils(混用会带来很多问题)(3) REST S原创 2012-12-04 21:00:49 · 1442 阅读 · 0 评论 -
HttpComponents组件探究 - HttpClient篇
在Java领域,谈到网络编程,可能大家脑海里第一反应就是MINA,NETTY,GRIZZLY等优秀的开源框架。没错,不过在深入探究这些框架之前,我们需要先从最original的技术探究开始(当然,需要大家先熟悉java.net.*类库)。这里,我要和大家分享一下HttpComponents项目的部分组件特性。HttpClient,想必大家早都接触过了吧。HttpComponents和HttpCli原创 2012-03-11 00:51:20 · 11614 阅读 · 1 评论 -
开发那点事系列五 - 发散思维&成就技术
很多做技术的同学,初期都期盼着上面会下派很多任务。做的越多,收获也越多。诚然,自己也曾经历过这么一个阶段。在上研时,积极地帮着导师做了一坨事,有Jos相关的,有C++相关的。不积硅步无以至千里嘛,正所谓。除了做事,往往我还会阶段性的做一些项目总结,并召集组员讨论。无论是技术上,还是非技术上(有些需求是自己去谈的,系统是需要自己去上的,当然关于使用方的反馈意见也是记忆最深刻的)。今天借着工作中一个非原创 2012-08-10 11:04:35 · 1336 阅读 · 0 评论 -
语言之美系列一 - Java篇
受七周七语言、编程语言实现模式等读物启发,计划写一个语言之美系列博文,因为最近工作上用的比较多的语言是Java,所以先从它开刀,希望大家多提宝贵意见~一. 泛型(1). 泛型类并没有自己独有的Class类对象;(2). 静态变量是被泛型类的所有实例所共享的;(3). 泛型的类型参数不能用在Java异常处理的catch语句中;(4). List说明List中可能包含的元素类型是N原创 2012-08-04 22:24:21 · 1254 阅读 · 0 评论 -
jvm serializer 功能&性能基准测试
该项目分析了目前主流分布式通讯相关开源产品中使用的No Schema序列化产品Kryo,Fastjson,Hessian的序列化机制,通过构造相对比较复杂的数据model,针对序列化size,序列化时间进行了细致测试。通过测试报告可以清晰的看出Kryo无疑是大赢家,无论是序列化大小,还是速度上都更胜一筹,这也就不难理解为什么Spark,Storm等流计算框架会选它作为序列化工具。另外,可以看出这三款软件在BitSet,EnumSet等特殊类型的序列化上还有不少问题,作者也给Kryo,Fastjson社区提了原创 2015-01-07 17:42:51 · 2171 阅读 · 0 评论