电商项目总结
1.解决项目高并发
5台WEB服务器,每台TOMCAT服务器并发量是400;
解决高并发问题首先要提高本系统的吞吐能力,在系统中添加缓存,实现网页静态化。系统优化还不满足的话,需要增加服务器,做服务器集群;前端用nginx做负载均衡服务器,并实现Nginx的高可用。将来业务还增加的话 就要考虑添加服务器
2.mycat读写分离
3.互联网项目追求的就是高性能,尤其是数据库查询的时候,在并发量高的时候要对SQL语句进行调优,Mybatis就是面向SQL语句的,所以操作起来比较容易入手,
4.网页静态化的实现方案
创建一个独立的工程, 它的功能就是生成网页静态化页面的;
例如商品详情页面静态化。将此工程独立部署到一个服务器上,页面就生成到当前服务器的磁盘上,并且此工程监听MQ的消息,一旦后台工程添加了商品,此工程将接收消息并且生成静态页面;
在此服务器上安装一个Nginx做为访问静态资源的HTTP服务器
5.系统之间是如何通信的
主体部分采用的是dubbox分布式框架,利用zookeeper实现各系统之间的调用。另外就是使用activeMQ实现系统之间异步调用。前端跨域调用使用cors技术;、
6.项目运用消息中间件有什么好处:实现系统的之间的异步通信,从而实现业务的解耦和执行效率的提升;
7.activeMQ通信的两种方式:queue(多个生产者和消费者,但消息只能被一个消费者接收,一旦消息被消费就没有了)和 topic(多个生产者和消费者。一旦生产者发送消息,可以被所有的消费者接收)
8.activeMQ运用场景:用户注册时,向用户发送短信验证码;采用queue方式。消费端调用 阿里大于短信接口进行短信的发送;
当后台系统对商品数据进行增删改;将发送一个消息变化的消息,此消息用topic进行通信,有多个消费端。商品详情页的静态页面会发生变化