2008年4月6日星期日

Service-Oriented Programming on MicroKernel

Linux内核是一个单块软件,内核的所有部件都包含在系统上运行已大块特殊的程序上。有关内核状态的任何信息都可以立即共所有内核部件使用。如下图所示:

740)this.width=740" border="undefined">
现代操作系统中的一类内核结构是微内核。这种微类核把大多数关键的控制功能分开。
状态信息不再可供左右功能立即使用,而是作为一个功能传递到另一个功能。

如下图所示

740)this.width=740" border="undefined">

Richard Stallmas使用这种基于微内核的架构开发了GNU系统的内核GNU Hurd,Linus 说这种微内核结构增加了控制模块间消息传递的复杂性使人们更难找出内核中的软件缺陷。Richard承认开发和诊断GNU Hurd内核的复杂性大大延缓了该内核的开发。

如果我们把这种微内核思想应用到应用软件开发中来,让微内核扮演一个中介者的角色,各个组件(模块)之间通过微内核聚集在一起,在整个系统中,模块将是可扩展的,能够在任何时刻融合到系统中,而不影响系统本身的体系结构。


如果把这些组件看做是一种服务,服务间的耦合通过微内核来建立,系统就变换成一种面向服务的结构,这种面向服务是面向代码级的,并不是平时提到的更高层次的SOA, 系统内部服务调用就形成了如下的方式:

740)this.width=740" border="undefined">


代码示例:

740)this.width=740" border="undefined">


JFox on TSS

JFox Application Server 2.0 M1 Released

JFox Application Server 2.0 M1 has just been released.

New features:
  • IoC-based microkernel and pluggable architecture
  • Integrate Jetty 4.2.22
  • Integrate Mr.Persister as DAO solution
  • JavaMail service support
  • EJB 2.1 timer service support
  • Build-in JPetstore as demo program

Download JFox http://sourceforge.net/projects/jfox/
Online JPetstore Demo http://www.jfox.cn/jpetstore

消息刚被发布到TSS不久,就得到很很多的反馈意见,有不屑,有鼓励,有人提到我们是在重新造轮子,为什么不加入现在已有的应用服务器团队。

现在做的比较成功的开源J2EE服务器好像也并不是很多,美国的JBoss, Apache的Geronimo, ObjectWeb的Jonas(实际上是Bull的Jonas)

JBoss现在已经是商业化的产品,基本上很难参与他们的开发,

Geronimo现在正在开发中

Jonas在欧洲实际上是由Bull公司30多人的一个专业研发团队在对Jonas在进行开发

从我个人的观点来看,像应用服务器这样的大型系统,在国外都是由专职人员全职来进行开发的,这样才能保证快速的发布 和高质量的版本,虽然开源提倡的是分布式,多人协作,但是从实际情况来看,好的开源项目的核心团队一般都是由人专职进行,比如PostGreSQL有一个 6人的专职核心团队等等。

在中国可能大家都在为了生计而拼搏,其实对于很多已经相对稳定的朋友,如果每天只需抽出1小时来参与开源,不过也可能就是喝一杯咖啡的时间,或许在这一小时里有比较工作一天获得更多的收获。

总之,作为JFox Team的每一个成员,我们都希望参与这个竞争,因为有竞争才有交流,才会发现出更多好的,不同的东西,J2EE的规范也正在不断改进发展中,如果都是商 业化的软件,他们大多可能会为了自己的利益而破坏技术本身的高速发展,只有不断地参与,才有更多的机会!

中国人能在奥运会上获得110米栏的冠军,JFox也会同样站在与世界众多J2EE应用服务器的相同起跑线上,与他们展开竞争!

Everything is possible!


Meet Open Source Guys

9.10号,虽然上海突然下起了大雨,很多的朋友因为大雨而没有赶来,但是我还是在上海福州路的一家Coffee Bean的咖啡屋与10多位open source的爱好者见面,他们有:

SAP(Michael, Darth..) ,MySQL( Dr. Lars Thalmann CTO), ObjectWeb ( David Li)

HP(Jiao Jian), PagonSoft(Paul Qu), ShangHai FangBang Tech (Wang Qian) , Huihoo(Steven Cheng), 来自FreeBSD的台湾朋友,等等, 大家一起就开源在中国的发展,以及每个人对开源的看法,发展模式进行了交流。

让我们最高兴的是,MySQL 的Lars博士向我们介绍了MySQL的成功经验,并表示他们非常关注中国市场,也正在学习和了解中国,MySQL也非常希望在中国有更多的合作伙伴。

这里向ObjectWeb的David Li组织了这次有意义的活动表示感谢!

活动的精彩照片, :)

740)this.width=740" border="undefined">

740)this.width=740" border="undefined">

740)this.width=740" border="undefined">