首页 > 代码库 > 高并发集群设计心得及相关术语
高并发集群设计心得及相关术语
mysql主、从复制:当向主服务器操作数据【insert,update,delete】,同样的数据会被自动复制到从服务器,也就是说从服务器是主服务器的一个镜像永远和主服务器上的数据一致
程序上要实现读、写分离:程序当要写数据时写到主服务器,当读数据时从从服务器读。
负载均衡:转发用户的请求到后端的服务器【平均分配:轮询】
硬件:性能好、稳定、价格昂贵
软件:性能还行、稳定也还行,免费
lvs:【已经集成到linux2.6及内核】工作4层,所有服务器才可以用来负载均衡
haproxy:工作在4层
nginx:工作在7层,只能做http协议的负载均衡
在负载均衡中程序上的SESSION会出现丢失的问题?怎么解决?
效果:登录成功之后,刷新一下显示登录,再刷新一下又未登录,再刷新又登录。一会登录一会未登录!
解决办法:SESSION共享:SESSION入库或SESSION存memcache。
反向代理:用户请求数据时,反向代理先在本地找有没有缓存页面,如果有就直接返回,如果没有就到 后端服务器请求数据,请求完之后缓存到本地,下次直接用这个缓存即可。【缓存时间和要缓存的页面都可配置】
穿透:网站中有些页面不能缓存【购物车、搜索页等】,那么可以配置成穿透的行为直接访问后端不缓存这些页面。
软件:
squid:缓存到硬盘上
CDN:内容分发网络:全世界各地搭建数据节点,用户访问网站时从离他最近的节点取数据,这样速度最快!只适合静态内容。
建议:不要自己搭建,因为服务器节点太多维护成本较高。可以使用第三方的。
本文出自 “darren something” 博客,转载请与作者联系!
高并发集群设计心得及相关术语