Skip to content
2012/04/26

《框架设计原则》课程资料

by william.liangfei

在内部分享了《框架设计原则》,大家反应还不错。

因Dubbo已开源,这个课程的资料也共享一下。

主要内容:

阅读全文——共89字

2012/01/13

服务治理过程演进

by william.liangfei

在大规模服务化之前,应用可能只是通过RMI或Hessian等工具,简单的暴露和引用远程服务,通过配置服务的URL地址进行调用,通过F5等硬件进行负载均衡。

(1) 当服务越来越多时,服务URL配置管理变得非常困难,F5硬件负载均衡器的单点压力也越来越大。

此时需要一个服务注册中心,动态的注册和发现服务,使服务的位置透明。

阅读全文——共3540字

2011/09/14

比Velocity快10倍的模板引擎

by william.liangfei

在07年的时候,写过一个模板引擎,当时叫CommonTemplate,以前JavaEye有个开源系列介绍:http://www.iteye.com/news/3381,后来功能越来越多,性能却越来越差,在金大为发给我性能对比结果后,看到惨不忍睹的差距,就打算抛弃原设计进行重写,但因工作忙,就搁置了,最近看温少发了几个EL和JSON的解析器,有点手痒,就抽了个周未,拿出来再改了改,主要将模板改成了字节码编译,并简化了语法及缩小使用范围,只针对HTML场景使用,并将名称改成了HTTL,名字含义是把HTML中的M(Marker)改成了T(Template),放在GoogleCode上:http://code.google.com/p/httl,性能和Java硬编码输出模板内容差不多,比Velocity/FreeMarker等快10倍左右。

阅读全文——共2933字

2011/09/9

DCE使用的问题及其解决方法

by liding

目前,国际站目前还是主要在几个应用上,一个应用多的有三四十万行代码。几乎所有的产品线在这个应用上都有代码;采用分支开发,要改的代码可能只有一点也要Check out出整个工程的代码来。

这样大工程,对于开发效率的影响很大,编译一下10分钟,启动一下5分钟。苦闷的等待是时间的浪费,另一方面也是打断了开发的节奏。开发过程中,每修改了一点内容,就要编译工程、重启应用来验证。每个开发员都会要频繁重启,浪费总量上是巨大的。

当然解决大应用的关键是拆根据功能拆分成小应用,这件事国际站也在积极进行中。

阅读全文——共3302字

2011/08/10

Fastjson技术内幕

by 温少

JSON协议使用方便,越来越流行。JSON的处理器有很多,为什么需要再写一个呢?因为我们需要一个性能很好的JSON Parser,希望JSON Parser的性能有二进制协议一样好,比如和protobuf一样,这可不容易,但确实做到了。有人认为这从原理上就是不可能的,但是计算机乃实践科学,看实际的结果比原理推导更重要。

这篇文章告诉大家:

阅读全文——共6510字

2011/08/2

Netty内存泄露

by william.liangfei

在测试中发现,当不停的开关Netty的NioClientSocketChannelFactory(比如大量连接失败重连等情况下),存在Direct Memory泄露。

测试代码:

阅读全文——共1747字

2011/07/17

Grizzly和Netty以及Mina简单性能对比

by william.liangfei

最近在服务框架中尝试增加了Grizzly传输集成,简单测试后发现,TPS(每秒处理请求数)略低于Netty,略高于Mina,相差并不是很大,但TPS比Netty稳定很多(每秒方差小),不会出现大幅波动,可以考虑备选。

Mina为ApacheDirectory服务器的底层NIO框架:http://mina.apache.org

Netty为JBoss的NIO框架:http://www.jboss.org/netty

阅读全文——共12318字

2011/07/14

RPC框架几行代码就够了

by william.liangfei

因为要给百技上实训课,让新同学们自行实现一个简易RPC框架,在准备PPT时,就想写个示例,发现原来一个RPC框架只要一个类,10来分钟就可以写完了,虽然简陋,也晒晒:

/*

阅读全文——共5298字

2011/07/10

Continuations In Scala

by fujohnwang

Continuations in scala (incomplete version)

http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=continuationsinscala-110710001535-phpapp02&stripped_title=continuations-in-scala-incomplete-version&userName=fujohnwang

阅读全文——共248字

2011/06/24

一个简单的自定义配置格式的Scala实现

by fujohnwang

本来想执行我Object As Configuration的理念, 不过google group上有人推荐我看看configgy, 看过之后, 觉得还是自己写一个简单些, So 马上动手…

 

配置格式先简单定义为:

阅读全文——共1318字