网站架构的高可用性总结

和自甴很熟 提交于 2020-03-13 05:41:54

一、产品发布与测试:

1、产品的发布测试:自测---公测--预发布测试---典型逻辑案例测试---正式发布(灰度发布);

2、互联网产品一周发布一次,机制:每周四发布(前三天产品研发,周四发布,如有问题,周五解决问题;);

3、灰度发布测试,采取部分服务器先发布,没有任何问题,产品在所有服务器上部署;(AB版本测试);

4、自动化测试(目前研发团队实力无法做大,期待更完善的研发团队)

二、产品发布要求:

1、没有监控功能的产品或者功能模块,不允许发布;

监控:用户行为监控(客户端:百度统计等,服务端)、服务器性能监控(工具:Ganglia)、运行数据报告;

三、代码控制:

1、代码版本控制工具:SVN、GIT;

主要采取:主干发布,分支开发;

四、产品架构的高可用性:

1、网站可用性的度量和考核;

可用性度量:2个9是基本可用,网站年度不可用时间不超过88小时;3个9是较高可用,网站年度不可用时间不超过9小时,4个9是具有自动恢复能力的的高可用,网站年度
不可用时间不超过53分钟(QQ是4个9);5个9是极高可用性,网站年度不可用时间不超过5分钟。
可用性考核:对外是服务承诺,对内是考核指标;(互联网公司,网站可用性与工程师、架构师的绩效关联);

高可用的应用:负载均衡 + 集群;集群中的用户上下文:单独的Session(也可以是redis)管理,利用redis解决用户上下文问题,也是一个很好的方案;

高可用的服务:

1、服务可以分布式部署;

2、重要的服务部署到比较昂贵的服务器或者硬件上;

3、要有超时设置,客户端请求服务端出问题了,可以将该请求自动转移到其他服务上;

4、可以异步调用,采用消息队列的方式去解决,减少并发和阻塞;

5、服务可以降级,使用率比较低的服务可以,关闭或者暂停;

6、数据有效性的验证,避免客户端请求重复操作;

高可用的数据:

CAP原理;

数据的高可用性,必然要忽略一点,就是数据的一致性(通过技术手段,去解决数据一致性;数据的一致性:数据强一致性、数据用户一致、数据最终一致)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!