从根本上而言,互联网应用与企业级应用是相同的,均是基于Internet、HTTP、浏览器的应用,其区别是由受众的不同而导致的。从受众而言,互联网应用的用户互相之间是陌生的、离散的,不需要产生联系或是只产生很微弱的联系。由此使得其产生的操作具有极强的随机性,这直接导致:
1 业务逻辑简单 大部分是通过页面进行数据的增删改查。
3 数据一致性 要求有事务,但和高并发博弈中,让位给高并发。
4 数据复杂度低 数据不复杂,表之间的关联不多
5 高并发量 强调高并发,支持用户数量多,并采取企业开发中极少采用的技术,比如web反向代理,memcache(分布式缓存),表的垂直分隔、水平分隔,强调高速读低速写。支持百万用户。
6 系统集成度弱 极少需要和其他系统集成
7 用户交互弱 交互不多,表现方式简单,更多的是数据的增删改查。
企业级应用则不然,它是为商业组织、大型企业服务的。这一特点直接导致了其绝不可能是一个个独立的系统,而一般是多个彼此连接的、相互通过不同集成层次进行交互的企业级应用,
同时这些应用又都有可能与其它企业的相关应用连接,从而构成一个结构复杂的、跨越Intranet和Internet的分布式企业应用群集。这使得其具备以下特点:
1 业务逻辑复杂 涉及大量的数据和多人协同处理。
3 数据一致性高 强调数据一致性,需要通过事务,交易中间件,数据库锁,java同步机制来保证数据的一致性。
4 数据复杂度高 数据复杂,有大量的表,表之间有复杂的牵涉关系,在某些行业维护这些表之间的关系和数据就需要一个团队。
5 并发量要求不高 不是特别大,比如通用应用为100~200并发,重度并发500的系统就能满足国内大部分的系统要求。
6 系统集成度高 关键系统需要和很多外部系统集成,集成的方式可能采取esb,jms,web service,socket。
7 用户交互强 强调界面交互和数据表达,需要支持多种数据展现方式,需要众多数据在页面上的展现,传输
由此可知,企业级应用与互联网应用的不同之处主要是由于二者各自所针对的领域不同而造成的。