猪八戒设计网站官网,ppt自动生成器,企业网络规划与设计方案,wordpress页面文本去年参加了一个技术分享活动#xff0c;七牛的一个技术大牛给简要的介绍了一些高可用可伸缩的一些最佳实践#xff0c;虽然只是一次简短的介绍#xff0c;但是依然从中学到了很多东西#xff0c;PPT内容主要分以下几个部分: 入口层高可用业务层高可用缓存层高可用数据库高可… 去年参加了一个技术分享活动七牛的一个技术大牛给简要的介绍了一些高可用可伸缩的一些最佳实践虽然只是一次简短的介绍但是依然从中学到了很多东西PPT内容主要分以下几个部分: 入口层高可用业务层高可用缓存层高可用数据库高可用入口层可伸缩业务层可伸缩缓存层可伸缩数据库可伸缩 打算分两次把参加的技术活动日内容归类整理第一次主要讲下高可用第二次讲一下可伸缩 下面来分层介绍实践方法。 入口层高可用 nigix两个 keeplive保活 心跳做好。 使用心跳技术keeplive提供这个技术比如机器A IP是1.2.3.4机器B IP是1.2.3.5那么再申请一个IP 1.2.3.6我们称之为心跳IP平时绑定再A上面如果A宕机那么IP会自动绑定到B上面DNS 层面绑定到心跳IP即可两台机器必须在同一网段服务监听必须监听所有IP如果仅仅监听心跳IP那么从机上的服务不持有心跳IP的机器会启动失败服务器利用率下降混合部署可以改善这一点 考虑一个问题两台机器两个公网IPDNS把域名同时定位到两个IP这算高可用吗 不算客户端比如浏览器 解析完后会随机选一个 IP访问 而不是一个失败后就去另一个 。 所以如果一台机器当机 那么就有一半左右的用户无法访问 。 业务层高可用 业务层不要有状态 状态分散到缓存层和数据库层 。 只要没有状态业务层的服务死掉后前面的nginx会自动把流量打到剩下的服务 。 所以业务层无状态是一个重点。友情提醒不要因为想让服务无状态就直接用cookie session, 里边的坑有点大考察清楚后再用比较好。比如重放攻击 。 缓存层高可用 缓存层分得细一点保证单台缓存宕机后数据库还能撑得住 。中小模下缓存层和业务层可以混合部署 这样可以节省机器大型规模网站业务层和缓存层分开部署。缓存层高可用缓存可以启用主从两台主缓存活着的时候主缓存读主从缓存都写主缓存宕机后从变主主恢复后 变成新的从。这样可以保证数据完整性实现高可用 数据库高可用 MySQL有主从模式 还有主主模式都能满足你的需求MongoDB也有ReplicaSet的概念基本都能满足大家的需求。这里就不做详细介绍了有兴趣的同学可以自行百度。 高可用小结 原文链接http://www.cnblogs.com/liuroy/p/6536630.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注