做一个自己的AppServer-JDStream(一) 构想

     一直以来总是有一种紧迫感,想尽力去弥补那些逝去的岁月。可是知识可以积累,经验就没那么容易积累了,另外人都有惰性,上班的时间可以十分投入,一旦下班往往就没了状态。所以我总是给自己业余时间定个目标,有了目标,就有了方向,就可以逼迫自己坐下来去深入技术,再慢慢进入状态,形成良性循环。
      最开始给自己定的几个目标都没能坚持下来,一方面是那时自己很多技术确实没有太多概念,另外与工作也基本无关,所以研究了一段时间后也就不了了之了。
      就在多半年前深入了解了下公司的一个底层RPC框架,主要就是一个包括数据库连接池、模块池、类似mina的socket模块、rmi同步和异步调用这些功能的开发包。在使用中发现该框架存在不少问题,远程调用比较麻烦,没有一个统一的调用接口,同时和业务程序耦合比较严重,每次都要写启动程序。于是就稍稍去研究了下JBoss,将公司的Jar包做了进一步包装,写成服务器的形式,自定义了ClassLoader来加载业务程序,用动态代理统一了远程调用接口,自己写了个Annotation解析器来解析业务程序中自己定义的注释。这些完成后是比原来方便了些,但随着对AppServer研究的深入,发现现有框架仍有非常多的不足,不是修修补补就能解决的了,于是就决定重新写一个AppServer。目的不在于能否写一个多牛的服务器,而是给自己定一个目标,来研究这些技术,希望通过这个能使自己的技术提升一个高度,同时附带着做一个自己用着顺手并且可以完全控制的AppServer出来。
      用了将近一个月的时间囫囵吞枣的读完了《JBoss架构分析》,同时粗略的阅读了JBoss4和JBoss5的启动源代码,对AppServer的实现有了个具体的概念,发现自己以前项目中的应用程序完全可以挂在JBoss下面,但现在的目标是写一个相对轻量级的、可以自己控制的、以IOC为容器而非JMX为容器的、偏重与处理业务数据流的支持高并发的AppServer。
      出于偏重于数据流处理的需要,所以准备暂时将之名称定为JDStream(JAVA Data Stream)。

你可能感兴趣的:(应用服务器,框架,jboss,IOC,Mina)