作者:独孤依人x_762 | 来源:互联网 | 2023-09-07 14:49
如何解决高并发:
1 解决方式一:在前端加上ngnix 负载均衡服务器
1000个请求,2个tomcat 服务器
当我们的服务器有1000个服务器请求的时候,因为tomcat 服务器一般只能是最多能够承担理论上只能是500,实际上也就是300-400个并发请求,所以1000个并发请求要平均分配给2个服务器,两个服务器之间session要共享,用到服务器配置cluster,来共享session通过两个服务器之间互相广播来发送session使他们共享session
10000个请求,20个tomcat 服务器
那么20个服务器之间互相通信发送session,那么这种广播的形式是很消耗带宽(就是一个网络服务器和另外一个网络服务器之间传输信息的最高值,就是像是公路,就那么宽,都用来干别的了)的,那么处理请求的效率就降低了都用来广播共享session了,所以采用单点登录的方式,把登录这个过程分到一个服务器上,让他自己去单独解决去,如果压力还是大的话,性能还是低的话,那么就采用集群的方式
基于soa 的架构只分为表示层和服务层,并且把服务层中又分为多个服务,那么这样订单系统也有搜索服务,会员系统也有搜索服务,前台系统也有搜索服务,这么多的表示层的服务,都可以调用服务层的服务,那么这样情况下,代码的复用性就提高了,因为要想系统之间通信必须用到webservcie,但是不用http+xml(SOAP)不用基于soap 协议的webservice,用restful,不用xml ,用的是json,用restful 传递json数据,
系统之间通信的性能pk
webservice:基于http协议+xml(SOAP)的方式但是由于xml作为数据传输的性能不行,所以采用json 的数据格式
restful:restful 就是基于http 协议,采用json 格式作为传输格式的,但是基于http 协议的不如socket 的传输速率快,所以采用dubbo
dubbo:dubbo 就是采用json 的传输格式,但是是采用socket 的方式进行传输的