WebLogic首先是一个分布式(Cluster)中间件,然后才是一个J2EE中间件。对于大部分人来说,他们可能过于注重在J2EE支持特性上,将WebLogic与其他比较中间件(JBoss以及Oracle AS相提并论),而忽略了在分布式协议栈与J2EE之间的权重关系。
实际上,我们很难将分布式与J2EE分离,如果仅仅比较J2EE feature,可能我们无法拉开与其他中间件的差距,甚至,公众认为WebLogic已经在开源技术支持仍落后于JBoss。
但从另一个角度,WebLogic为了支持一个新的J2EE,它考虑的不仅仅是J2EE规范,而是如何在当前我们的分布式协议栈上更好地支持此规范。
举一个生动但没有证据的例子,比如JBoss为了支持JDBC 3.0,需要投入了200个工时去完成此特性;则对WebLogic来说,可能是1400个工时。为什么呢,因为WebLogic分布式协议栈比JBoss复杂很多,因此同时带来了实现某J2EE feature的复杂性。
我们的协议栈是工业级,JBoss是面向中小企业级别,因此,理解WebLogic的强大之处,请关注分布式而非J2EE。
在技术的层面,我更倾向于接受Ed Pozarycki所定义的协议栈,即: Socket->RJVM->RMI->Cluster
以下是WebLogic核心在启动的时候,加载的四个对应于上述协议栈的服务。
文章来源于领测软件测试网 https://www.ltesting.net/