内容简介:上几节说了中小型电商公司,项目详情页的优化方案,一般是使用freemark模板生成了html静态页面,放到nginx或者tomcat中,但是肯定选择nginx的并发是tomcat的100倍,通过mq的方式刷新缓存生成新的html静态页面。一起看下大型互联网关于商品详情的架构。源码:这些架构是根据业务多年演变而来的,可不是最终就是这样的。机器的内存有上限的话,并发量也是有上限的,一台redis可以存储100g,你水平扩展100台其实还是100g,必须 通过分片的方式这样就是10t的数据存储空间。
上几节说了中小型电商公司,项目详情页的优化方案,一般是使用freemark模板生成了html静态页面,放到nginx或者tomcat中,但是肯定选择nginx的并发是tomcat的100倍,通过mq的方式刷新缓存生成新的html静态页面。一起看下大型互联网关于商品详情的架构。源码:
(一)讲解上图的的详细信息
这些架构是根据业务多年演变而来的,可不是最终就是这样的。机器的内存有上限的话,并发量也是有上限的,一台 redis 可以存储100g,你水平扩展100台其实还是100g,必须 通过分片的方式这样就是10t的数据存储空间。
1. 通过LVS负载后,转发到下面nginx(分发器),这里的nginx(分发器)只有2个,但是实际的环境下可能有多个水平的。
2. nginx(分发器)下面是通过hash转发到nginx(应用层),之前的nginx只有一层,现在的nginx搞了2层,为了是分片存储,大大提高本地缓存的利用率。
3.nginx(应用层)转发到缓存服务,类似tomcat的一个应用,缓存服务在实际的大型互联网公司肯定有很多台,都是水平扩展的。缓存服务里面实际是就是一个web应用,这里画了2个一个redis集群和ehcache。
3. 这里就是转发过来的http请求,然后redis集群拿数据,如果有马上返回给前端,如果没有通过内存中取。ehcache(JVM缓存)和redis这2个顺序不一定,根据场景来的。
4. 商品服务,库存服务,会员服务,交易服务有变动的话异步的调用MQ更新缓存,一般正常的情况都是异步来请求的。更新缓存有很多的并发问题。
5. 之前说过如果处理并发问题最好的方案,就是线性处理,让并发的变成串行。用上MQ一定能保证变成串行。
6. 一个 lua 脚本下面加了nginx的本地缓存去渲染这个html模板,nginx本地。lua脚本相对来说比freemark这种快太多了。
7. 缓存内放入的都是不经常变化的。如果经常变化的都是ajax异步请求的方式来完成的,或者通过其他的系统来负责关联静态的html。
(二)介绍本书
其实之前的几次关于互联网的技术方案,都是通过这个书【亿级流量网站架构核心技术】里面的内容分享出来的,我加入了自己的思路。通过我的思路引导更容易的理解,如果没做过互联网的老铁,直接看这本书不一定看的懂,很多方面他都是一句话就过了。没有详细的解释里面的业务场景。
【亿级流量网站架构核心技术PDF】
链接:https://pan.baidu.com/s/1FOWxvd30iOd7KzR4COa-5g
提取码:o0oo
PS:通过看的技术文章,在详细的看看这本书,其实互联网技术不过如此,自古真情留不住,唯有套路的人心,都是前人总结的解决问题的方案和套路,对于有互联网经验这本书还是很不错的,大大的拓宽技术经验,光看这本书的目录估计都被虎的一愣一愣的,其实都不复杂,都是一些经验,其实在互联网公司呆过这些都是常用的技术。还是那句话,没搞过想破脑子就是不会,需要的还是场景。
>>原创文章,欢迎转载。转载请注明:转载自,谢谢!>>原文链接地址:上一篇:已是最新文章
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 『互联网架构』软件架构-分布式架构(14)
- 『互联网架构』软件架构-电商系统架构(上)(69)
- 『互联网架构』软件架构-电商系统架构(中)(70)
- 『互联网架构』软件架构-电商系统架构(下)(71)
- 『互联网架构』软件架构-电商系统架构发展历程(68)
- 『互联网架构』软件架构-mysql主从(二)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
OpenCV3编程入门
毛星云 / 电子工业出版社 / 2015-2 / 79
OpenCV在计算机视觉领域扮演着重要的角色。作为一个基于开源发行的跨平台计算机视觉库,OpenCV实现了图像处理和计算机视觉方面的很多通用算法。本书以当前最新版本的OpenCV最常用最核心的组件模块为索引,深入浅出地介绍了OpenCV2和OpenCV3中的强大功能、性能,以及新特性。书本配套的OpenCV2和OpenCV3双版本的示例代码包中,含有总计两百多个详细注释的程序源代码与思路说明。读者......一起来看看 《OpenCV3编程入门》 这本书的介绍吧!