【软件架构的变迁】
第一阶段是: 单体应用!
第二阶段是: 水平拓展集群!【简单理解为把一个单体应用复制为多份进行水平集群】
第三阶段是: 垂直拓展集群!【这是把单体应用的“前后台系统”进行拆分后进行区别性的集群】
第四阶段是:SOA面向服务编程的微服务架构,RPC技术实现远程调用!【把业务线拆分成服务】
=========================================================================
Netty的简单介绍:
Netty是一个异步事件驱动的网络应用框架【实际上就是一个 网络通信编程 的框架!】。Netty是一个NIO客户服务器框架,它能够快速和容易地开发网络应用,如协议服务器和客户端。【NIO意味着这是“无阻塞”的框架,这将大大提升其通信效率!】
1. NIO全称成为None Blocking IO (非阻塞IO)。【JDK1.4】
2. 非阻塞 主要应用在网络通信中,能够合理利用资源,提高系统的并发效率。支持高并发的系统访问。
Netty框架的常见使用场景:
1. 游戏行业,直播行业
2. 很多框架的通信底层,解决进程间通信。
Spring WebFlux、storm、rocketMQ、dubbo等,是分布式系统,通信的核心。
=========================================================================
网络通信的历史背景介绍:
第一阶段: 使用原始多线程的方式进行网络通信,这个时候问题比较明显!
第二阶段: 使用线程池多线程的方式进行网络体系,这个时候会发生阻塞的问题!
第三阶段: 在线程池多线程的基础之上进行“管道通信”解决了阻塞的问题!