1.实现原理
首先看下tomcat有哪些组件,以及这些组件之间有什么关系
Server组件:代表了整个servlet(运行在tomcat服务器上的小插件,动态加载和执行)容器组件。包含以下所有组件配置,可包括多个service元素
Service组件:包含一个Engine元素和多个Connector元素
Connector组件:代表和客户程序实际交互的组件,负责处理客户端请求和返回服务端响应。
Engine组件:一个Engine组件处理所有Connector组件的请求和响应
Host组件:可以有多个,虚拟主机的意思,一个虚拟主机下允许有一个或多个应用
Context组件:一个Context代表了一个Web应用。
处理过程:客户端请求最后会由Connector组件传递个Engine,并匹配这个请求的虚拟主机,匹配到虚拟主机后再去找和这个请求对应的Web应用,Web应用逻辑处理这个请求完后,返回数据给虚拟主机,给Engine,通过Connector返回到客户端,最终展示给用户页面或者文件等信息。
刚才说到了Connector组件负责处理客户请求的,而实现负载均衡就是为了防止所有的请求都到了一个服务器下,比如说1w个请求,同时给一个服务器来处理,我靠,服务器一下子要承受1w个并发量,会累死。所以我们要把1w个请求分发到多个服务器,然后每个服务器开一些线程和使用一些内存来处理这1w个请求,是不是压力瞬间就小多了。
BingGo