电商项目解决高并发的问题的策略浅谈

前言:

       本文乃是文章作者在实际电商项目开发参与过程中关于本项目中解决高并发方案的一些思路总结,由于本人水平有限,不足之处,望请留言指正!

       在项目中解决高并发并非解决其中的某一个环节或点,而是全方位的,系统性的从客户发起请求,请求处理,服务调用,数据访问层层优化,解决高并发。 

1.系统硬件

    提升服务器性能。

    1.1 增加内存容量;

    1.2 更换硬盘;

    1.3 升级处理器;

2.系统软件(架构方向)

    2.1.前端请求到服务器-------反向代理服务器(如nginx),

       2.1.1 反向代理 

      拦截无效的客户请求、恶意请求等,可参考:nginx网络服务器上如何阻止特定用户代理(UA)http://linux.cn/article-5487-1.html

       2.1.2 访问静态资源,做缓存 

       反向代理服务器不但可以拦截指定的请求,还能够通过配置缓冲功能可以缓存真实Web服务器上的某些静态资源,减轻真实Web服务器的负载压力,可以在反向代理的服务器上缓存某些静态资源,这样的话在反向代理服务器上存在的资源就不用去web服务器上获取,以减轻web服务器的压力。

       在该环节中我们采用了freemarker技术,实现网页静态化,进而实现上述功能,来提高并发。另外,前端请求我们可以采用get请求的方法,实现一些静态资源缓存在浏览器端,避免了用户重复刷新造成的恶意访问。

       NGINX反向代理缓存配置https://blog.csdn.net/lmy_1/article/details/52791275

       2.1.2 负载均衡

       网站前期使用了nginx代理一台后端服务器,随着网站流量的增多,一台后端服务器无法满足需求的时候,需要配置服务器集群,这时就需要负载均衡配置。负载均衡配置配置策略默认是轮询,轮询策略要求集群中的各服务器性能要一致,同木桶原理;对于性能不一致的,可以配置权重策略。

      负载均衡策略转至https://blog.csdn.net/poisx/article/details/78985010

    2.2  调用服务---------dubbox分布式服务架构以及消息中间件MQ (activeMQ)

    2.3  数据访问----------redis做缓存以及数据库分库 

小结:水平有限,有待进一步学习后,进一步完善。

猜你喜欢

转载自blog.csdn.net/p778970202/article/details/82734806