目录
单体架构应用
这种架构的典型的特点:就是把所有的业务和模块,源代码,静态资源文件等都放在一个一工程中,如果其中的一个模块升级或者迭代发生一个很小变动都会重新编译和重新部署项目。
各个模块在同一个工程中一起干活,一个请求由一个服务器完成处理。
这种应用的架构缺点就是耦合度太高了,功能扩展起来困难,维护成本大等等,不符合时代的发展了,所以推出了分布式架构应用。
分布式架构应用
不像单体架构应用了,分布式架构应用就是分家,各个模块分开工作,简单一句话,一个请求就是由多个来自不同服务器的模块协同处理完成的。
中间件
在分布式架构应用中,由于请求是由各个模块服务协同处理完成的,因此各个模块之间就需要通信,就像生活中工地中每个人一起干活完成某个项目肯定需要沟通通信才行。
中间件需要满足的特性:
通信:可以完成数据的传递。
持久性:发来的数据要能够保存起来,后面发给别的模块。
高可用性:一台中间件崩了,要能有另一台顶上,就考虑到集群了。
消息中间件
在分布式架构应用中,各个模块服务之间需要互相调用完成请求,而这个互相调用的过程,就需要发送一些消息,就是通信的过程。
分布式系统通信的模式有两种:直接调用模块,借助第三方消息中间件完成通信。
消息的发送方称为生产者,消息的接收方称为消费者。