一路的java框架

         早期的java web开发,是纯servlet结构bio线程模型,这样开发web系统是个非常庞大的工程.后来出现了很多中间件来解决了这个问题

最有名的是阿帕奇tomcat,再就是struts,hibernate,spring,mybatis.这些解决了造重复的轮子,简化了开发模型.

相继流行的框架组合如下:


更早

存servlet模型


2009前

struts+spring+hibernate


2010后

spring+spring+mybatis


2014年后

spring boot微服务框架


2015年后

spring cloud基于boot的系统模块整合资源调度管理框架



崛起

        java有一度时间出现了业界质疑,说java并不适合做web互联网项目,因为互联网应用很多都是高并发应用场景,当时这个问题java解决不了.

这个问题给java带来了一时的危机,java为了解决这个问题在jdk1.4版本中假如了nio特性,从而使java走出困局。


        当时很多银行,证券交易系统服务高并发后台都是用c/c++实现的,因为他能够利用操作系统底层的异步通信模型机制解决高并发问题。


        被c/c++统治的高并发服务器很长一段时间,java是这么处理异步请求的,当浏览器发送一个请求给服务器服务器创建一个线程等待用户处理完请求.

线程是非常占用系统资源的,当并发量达到一定请求后会出现宕机情况。


        java在漫长的岁月中进行生死挣扎,终于在2002年sun发布了jdk1.4.0,新增了nio异步io机制,后来很长一段时间高并发系统都被c/c++所占据。

java发展了相当长一段时间后出现了异步通信框架netty,它是对java nio的一次封装,能够解决高并发,异步通信的机制.


目前感觉java处理高并发业务需求与c/c++比,相差已不是那么遥远了,完全可以替代大部分的高并发业务处理