zoukankan      html  css  js  c++  java
  • J2EE和EJB有什么关系?

    其实j2EE就是java的企业版,与javaSE(标准版)有是有区别的,所以运行环境会有差异(简单点可以说,这是两组不同的接口),我们一般所熟悉的tomcat仅仅只实现了j2ee的一小部分规范,它只是一个serlvet的容器(Web)容器,它不能跑J2EE的程序,EJB说到底也是种规范,它是j2EE下面的一个子分类(核心类),所以j2ee包含EJB,同时我们都可以说JBOSS,Weblogic,WebSphere是J2EE容器,也可以叫EJB容器。因为它们能跑EJB组件。那么什么是EJB组件呢?其实就是java写出来的一段程序被打包成EAR包,这个EAR包放在某个EJB的容器的特定目录下启动就可以跑了。类似于互联网公司经常使用的WAR包(部署在tomcat上)。

    如果有兴趣,请详细看

    http://blog.csdn.net/jojo52013145/article/details/5783677

    作者博文的前半部分讲解的很好,把EJB的原理和底层概念讲解了。但是后半部分EJB应用所遇到的架构问题我并不同意,因为从开发经验上来说这无关于EJB的事,EJB应用同样可以支持高并发,互联网也会出现类似的数据库瓶颈问题,真正的实践上应该是文章下面的那个评论所回复的一样: 客户端通过http先传到负载均衡服务器上,负载均衡服务器在把请求传递到接口服务器,接口服务器再通过RPC调用EJB组件对象实现业务功能,大部分时间内都是EJB组件间的调用(EJB服务器之间的调用),这些EJB组件都在内网。

    当然,从知乎上看到J2EE技术栈似乎用的公司越来越少了,互联网直接不用,用的是java web体系,Spring + tomcat + mybatis之类的快速轻量的开发。反而用的最多的是电网公司,电信这样的运营商,还有银行系统。原因似乎是J2EE不是很轻量,而且难调试,也难使用(但是又听说最新的EJB已经越来越好用了简洁强大,分布式事务处理很强)。其实如果成本和资源能较好把握,是不是电信等大型企业的系统也可以用互联网的技术体系替换掉呢?而且效果也理想?

    references:

    https://www.zhihu.com/question/50665320

    https://www.zhihu.com/question/40988395

    https://www.zhihu.com/question/27505535

  • 相关阅读:
    tensorflow基础【3】-Session、placeholder、feed、fetch
    tensorflow基础【2】-Variable 详解
    字符串处理、变量初始值处理、扩展的脚本技巧、正则表达式
    循环结构、while循环、case、函数及中断控制
    数值运算、条件测试、 if选择结构
    逻辑+系统管理命令
    PXE 装机服务器的搭建
    DNS服务器的功能
    RAID阵列概述,进程管理,日志管理,systemctl控制,源码包编译安装
    快照制作、vim编辑技巧、发布网络YUM源、查看本机网络连接信息
  • 原文地址:https://www.cnblogs.com/foohack/p/5952631.html
Copyright © 2011-2022 走看看