楼主: wangfans

假如我来架构12306网站(一) - 概论

[复制链接]
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
41#
 楼主| 发表于 2013-4-16 13:25 | 只看该作者
功能测试需要针对多服务器角色集成后按照设计所提供的功能清单依据测试密度以及测试的分布性来确定不同方面的测试case,依据此来分步执行此功能测试,并且依照测试执行的结果来分析各个模块的缺陷密度以及缺陷的消化曲线,以此指导后期的开发设计工作,并藉此可尽快完成功能方面的验收确认;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
42#
 楼主| 发表于 2013-4-16 13:25 | 只看该作者
性能测试针对这个案列相对比较复杂,由于服务器角色很多,其基本的思路还是分析确定前端各业务的使用比例,编写开发自动化测试脚本来模拟用户的操作行为,并且在测试环境下针对特定的服务器数量的集群发起服务请求,同时完整地检测每个角色服务器的CPU/Memory/Disk I|O/Network方面的性能参数值

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
43#
 楼主| 发表于 2013-4-16 13:25 | 只看该作者
通过不断增减客户端请求数(伴随客户端机器的增加、譬如初期使用100台,逐步增加到200台测试机)来观察服务器的性能反应,分析出拐点,同时需要测试出系统的极限吞吐量(RPS,TPS等值),并且测试出增加不同的服务器角色对于这些吞吐量的影响,同时在此阶段需要开发人员的协助来针对不同的角色根据测试结果进行性能调优工作;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
44#
 楼主| 发表于 2013-4-16 13:26 | 只看该作者
安全测试,需要针对以下不同的场景进行模拟攻击测试:
外部安全而言: 包括脚本注入攻击、端口扫描、拒绝服务攻击、主机入侵等安全测试都需要逐个进行验证,确保系统的外部安全;
内部安全而言: 包括各服务器的数据的安全、密码安全等进行测试;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
45#
 楼主| 发表于 2013-4-16 13:26 | 只看该作者
破坏性测试,需要就各个角色服务器所对应的物理服务器进行不同部位失效、移除等试验,看看整个服务器集群的监控、维护服务以及服务输出吞吐的影响,并且完善后续的各种系统对应的维护流程;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
46#
 楼主| 发表于 2013-4-17 11:18 | 只看该作者
持久运行能力测试需要,待系统达到Beta测试版本要求之后,需要针对待部署的系统进行一定负载量持续运行至少2周以上,并且观测系统的稳定性方面的反应,同时就数据库的增长、日志的增长等各种情况进行综合评估并且需要结合后续的部署维护做适当完善性调整;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
47#
 楼主| 发表于 2013-4-17 11:18 | 只看该作者
7. 部署阶段
对于如此巨型系统的部署调试工作,也是个不大不小的工程,那么如何确保部署调试工作进展的顺利,根据笔者多年维护广域网系统的经验,有如下几点需要注意:

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
48#
 楼主| 发表于 2013-4-17 11:18 | 只看该作者
-> 如何管理好不同的服务器之间的发行版本问题,确保发布不会乱,特别是小版本的升级上部署不会乱是个关键,否则对于数以千计的服务器那绝对是个灾难;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
49#
 楼主| 发表于 2013-4-17 11:18 | 只看该作者
->如何能够快速解决单次发布的升级与回退问题同样是很重要,这当中笔者的经验是使用一个经过验证的发布部署流程以及校验流程,整个过程最后放在一个发布脚本中,对于具体的升级与回退,维护人员只需要执行一次命令即可完成,并且对于每个版本发布完毕后的校验工作尤其重要,必须在脚本中予以体现;

使用道具 举报

回复
论坛徽章:
66
现任管理团队成员
日期:2011-05-07 01:45:08版主9段
日期:2013-04-21 02:21:02ITPUB年度最佳版主
日期:2014-02-19 10:05:27ITPUB年度最佳版主
日期:2013-01-30 17:30:25ITPUB年度最佳技术原创精华奖
日期:2012-03-13 17:12:05优秀写手
日期:2013-12-18 09:29:15元宝章
日期:2015-02-10 19:57:54金牌徽章
日期:2015-02-10 19:59:42银牌徽章
日期:2015-02-10 19:59:42铜牌徽章
日期:2015-02-10 19:59:41
50#
 楼主| 发表于 2013-4-17 11:18 | 只看该作者
->最后一点对于部署而言,任何部署都必须要有回滚方案配套,确保任何时间点上系统皆可用;

8. 运行维护阶段
在运行维护阶段有很多细节需要配套考虑:
  ->系统整体的实时状态监控,包括各种角色的应用主机的监控、网络设备的监控、用户访问流量的监控、服务可用性监控、安全监控等;

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表