摘要: http://www.teamhost.org/projects/learn-with-open-source/wiki著作权申明本作品选择采用:署名-非商业性使用-相同方式共享 的CC协议。您可以:复制、发行、展览、表演、放映、广播或通过信息网络传播本作品。以及创作演绎作品。惟须遵守下列条件:署名 — 您必须按照作者或者许可人指定的方式对作品进行署名。署名方式为:在转载或新作品开头的显著位置,注明原作者的姓名、来源及其采用的知识共享协议,与本作品在Teamhost上的原发地址建立链接非商业性使用 — 您不得将本作品用于商业目的。相同方式共享 — 如果您改变、转换本作品或者以本作品为基础进行创 阅读全文
posted @ 2012-09-27 19:41 ajian005 阅读(349) 评论(0) 推荐(0)
摘要: http://blog.csdn.net/cutesource/article/details/6192016如何正确使用NIO来构架网络服务器一直是最近思考的一个问题,于是乎分析了一下Jetty、Tomcat和Mina有关NIO的源码,发现大伙都基于类似的方式,我感觉这应该算是NIO构架网络服务器的经典模式,并基于这种模式写了个小小网络服务器,压力测试了一下,效果还不错。废话不多说,先看看三者是如何使用NIO的。Jetty Connector的实现先看看有关类图:其中:SelectChannelConnector负责组装各组件SelectSet负责侦听客户端请求SelectChannelEn 阅读全文
posted @ 2012-09-27 17:45 ajian005 阅读(1327) 评论(0) 推荐(0)
摘要: Netty是JBoss出品的高效的Java NIO开发框架,关于其使用,可参考我的另一篇文章 netty使用初步。本文将主要分析Netty实现方面的东西,由于精力有限,本人并没有对其源码做了极细致的研 究。如果下面的内容有错误或不严谨的地方,也请指正和谅解。对于Netty使用者来说,Netty提供了几个典型的example,并有详尽的API doc和guide doc,本文的一些内容及图示也来自于Netty的文档,特此致谢。1、总体结构先放上一张漂亮的Netty总体结构图,下面的内容也主要围绕该图上的一些核心功能做分析,但对如Container Integration及Security Sup 阅读全文
posted @ 2012-09-27 17:42 ajian005 阅读(291) 评论(0) 推荐(0)
摘要: 本文可看成是对Doug Lea Scalable IO in Java一文的翻译。 当前分布式计算 Web Services盛行天下,这些网络服务的底层都离不开对socket的操作。他们都有一个共同的结构:1. Read request2. Decode request3. Process service4. Encode reply5. Send reply经典的网络服务的设计如下图,在每个线程中完成对数据的处理: 但这种模式在用户负载增加时,性能将下降非常的快。我们需要重新寻找一个新的方案,保持数据处理的流畅,很显然,事件触发机制是最好的解决办法,当有事件发生时,会触动handler,然后 阅读全文
posted @ 2012-09-27 17:34 ajian005 阅读(210) 评论(0) 推荐(0)
摘要: 在开源中间件中,一直活跃着许多出色的中间件产品,比如 ProgressSoftware的 FUSE , RedHat 的JBoss中间件等。最近 JBoss 率先在开源中间件领域中提出了自己的开源中间件参考架构。JBoss 开源中间件涵盖的主要功能包括:流程管理(Processmanagement): 关键业务应用服务集成和高速消息 (Serviceintegration and high-speed messaging): 集成企业内部多个单独的应用,可以将这些应用组合成流线型业务流程数据集成和商业智能 (Data integration and bussiness intelligence 阅读全文
posted @ 2012-09-27 17:23 ajian005 阅读(353) 评论(0) 推荐(0)
摘要: http://blog.163.com/haizai219@126/blog/static/4441255520097162481811/Tomcat6.0源码学习-构建Eclipse源码工程 摘要 对于学习j2ee,且想提高自己Java编程设计水平的每个人来说,研究Tomcat的源码是一件很向往的事,这其中的获益不仅仅是Java编程水平的提高,还有很多其他方面,如j2ee规范的了解,设计模式的运用,产品构建及版本控制等等,这些个方面无一不是我们学习和模拟的对象。但是,当我们开始这段旅程时,往往会迷失于浩瀚的代码海洋之中,这个时候,我们多么希望有这么一盏明灯,指引我们向前进。在Eclipse中 阅读全文
posted @ 2012-09-27 16:17 ajian005 阅读(1118) 评论(0) 推荐(0)