互联网应用与企业级应用的区别
企业需求的提升:除了功能性需求,客户对于安全,性能,大容量,大并发,易维护等特性愈发关注,未来的趋势是企业应用构建在互联网而不局限于局域网,可能是在云,也可能是网格,也可能在其他的新技术上实现。
企业应用和互联网应用从根本来说是相同的,都是基于因特网、HTTP、浏览器的一种应用,但面向的涉众不一样,从而导致些许差异性,比较如下:
企业应用(表1):
1 行业领域 区分行业,各自领域业务背景不一样,并形成了一定的门槛。
2 业务逻辑 业务逻辑复杂,涉及大量的数据和多人协同处理。
3 数据一致性 强调数据一致性,需要通过事务,交易中间件,数据库锁,java同步机制来保证数据的一致性。
4 数据复杂度 数据复杂,有大量的表,表之间有复杂的牵涉关系,在某些行业维护这些表之间的关系和数据就需要一个团队。
5 并发量 不是特别大,比如通用应用为100~200并发,重度并发500的系统就能满足国内大部分的系统要求。
6 系统集成 关键系统需要和很多外部系统集成,集成的方式可能采取esb,jms,web service,socket。
7 用户交互 强调界面交互和数据表达,需要支持多种数据展现方式,需要众多数据在页面上的展现,传输
8 开发过程 强调软件过程,讲究行业经验,需要撰写大量的文档和多人的协同,需要版本控制和问题跟踪回溯。
互联网应用(表2):
1 行业领域 跨行业,按应用类型区分,比如blog,wiki,个人门店等。
2 业务逻辑 业务逻辑简单,大部分是通过页面进行数据的增删改查。
3 数据一致性 要求有事务,但和高并发博弈中,让位给高并发。
4 数据复杂度 数据不复杂,表之间的关联不多
5 并发量 强调高并发,支持用户数量多,并采取企业开发中极少采用的技术,比如web反向代理,memcache(分布式缓存),表的垂直分隔、水平分隔,强调高速读低速写。支持百万用户。
6 系统集成 弱。极少需要和其他系统集成
7 用户交互 弱。交互不多,表现方式简单,更多的是数据的增删改查。
8 开发过程 强调敏捷,快速开发,基本不需要版本控制。
互联网应用与企业级应用的区别总结为一下3个方面:
1:企业级应用业务逻辑较为复杂,涉及大量的数据并且需要多人协同处理完成;互联网应用业务逻辑比较简单,不要太多人手处理,大部分是通过页面进行增删查改。
2:企业级应用并发量要求不大,500并发就能满足绝大多数的需求;互联网应用对并发量要求很大,强调高并发,支持用户数量多达百万。
3:企业级应用数据复杂而且需要很多外部系统集成;互联网应用数据简单且系统集成相对较弱。
互联网应用(网站或app),和企业应用的本质区别,应该从用户谈起。
互联网是陌生用户,网站对于他们来说是自助系统(类似于ATM取款机),不需要、也不可能对他们强制培训,比如用户注册。所以它们要做得绝对的弱智化,尽量降低学习成本。
企业应用是公司员工,带有强制性,而且上岗前、或系统上线前,一般都有培训,比如工行柜台员工那个Windows客户端的功能,比如存款,都是通过输入“2397”调出的。相对于互联网应用,用户体验并不是优先考虑的。但有一点会很重视,那就是便捷性,如快捷键,因为这些应用一般都是运营系统,员工每天都是重复做那些事情,效率很关键