`
碎星斩月
  • 浏览: 2190 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

割接思想

阅读更多

自:http://blog.sina.com.cn/u/2007040663

 

从割接到灰度,不仅仅是策略,更重要的是思想

   

 2011年底,浙江公司分管支撑的杨剑宇副总在支撑内部召集了一次头脑风暴,要求部门里各位主管和骨干轮流发言,不讲成绩,只讲问题和思路,一圈人一个一个轮流讲过来:

l  负 责开发的主管说现在业务部门的需求经常考虑不清楚,而上线的时间压力很大,风险也很大,匆忙上线很容易把现有的业务弄乱,同时,上线后往往要在业务规则、 操作便捷性上做多次修改,形成了很多不必要的二次开发,因此要求业务部门和需求管理员加大需求分析的力度,尽早明确需求,降低上线风险,减少二次开发。

l  负责产品配置的同事说新增产品现在只能在测试环境上进行验证,发布后即为生产环境,很难分析新产品上线带来的影响,以及评估对现有产品模型、资费体系的冲击。建议增加一套类生产的环境,进行全量模拟验证。

l  负责测试发布的同事说目前回归测试案例集不全,有些前台功能使用的场景只有一线营业员才知晓,一旦在上线前的回归测试有遗漏,上线后2个小时的核心功能回归并不能保证系统正常。要求加强自动化测试范围,完善回归测试案例集。

l  负责投诉处理的同事说上线后的功能不稳定导致的前台保障、批量客户投诉对日常的运维工作的冲击很大。要求提高需求分析和上线质量,避免故障和批量差错的发生。

那为什么会有这么多的事情呢,这一切都是因为2011年浙江移动新版本的CRM割接上线后各类事件、问题非常多,对于割接前已经稳定了很多年的开发、运维体系造成了极大的冲击。

 

割接,是一场战争

割接,尤其是核心系统的割接,对支撑,对前台,就是一场战争,因为每一次的系统割接,基本就等同于第二天系统无法使用、或者用户的批量投诉。

先来回顾一下什么是割接。2003年刚毕业,我就赶上了浙江移动第一次全省集中BOSS系统的割接。我和同批进公司的朱骏一起问当时的BOSS项 目经理罗文模(现福建移动支撑的副总):什么是割接,他说:割接,就是把老系统割下来,把新系统接上去,哈哈,非常形象吧。后来,百度了一下“割接”,发 现这是一个从网络专业延伸到支撑网的名词:传统的割接是指使用一种新的事物替换原有旧的事物,也指将一种业务或流量从一个网中移植到另一外网络中。现在, 凡是以新的系统替换旧的系统的行为都称为割接。

在通信行业,割接是一件很慎重的事情,凡是割接,都是在晚上进行,要求进行周密的测试、数据的备份、以及失败紧急回退方案演练等等,不管是正向,还是反向,都要有充足的准备和演练,才能保证割接的成功。同时,一般在临晨56点前要求割接完毕,完成业务验证,不能影响第二天的运营,因此,留给真正开始割接的时间并不多,对各配合方要求都非常高。浙江移动CRM割接步骤当时专门印发成了一本小册子,A4的打印纸,100多页,详细到每一个人、每一个时间点、每一个步骤、每一个命令。

割接方案中,最难的就是涉及数据模型升级的地方了。现在的割接方案都是先把老的数据模型在系统升级前,通过批量操作方式,“一次性转换”成新版本的数据模 型。我们做过软件开发的朋友们都很清楚,做正向的升级比逆向的降级要简单,就好像连微软等这些传统的大软件开发商都没有提供这样的服务:我们把OFFICE软件从2003升级到2010,用了一段觉得不爽,不用卸载而直接回退到2003再 使用。从正向考虑把老的模型升级到新模型,大家都认为是理所当然要做的事情,从项目建设之初就考虑的很清楚,在准备割接脚本时也很充分。但反过来,从新模 型降级回老模型,绝大部分开发人员都是从内心拒绝这个事情的,人的思维中总是存在侥幸心理,万一不成功才用到的脚本,为了这个“万一”值得么,有这功夫还 不如好好想想怎么确保成功呢,所以,最容易出问题的地方往往就在这些回退的脚本上。而且,因为都是批量操作,极易出错,且要消耗大量的时间,这样,把本来 就很紧张的升级时间压缩的更短,因为割接计划中还要预留出足够的回退时间。

 

灰度,是一种策略

这里打断一下,最近这几年您听说过淘宝升级么?如果没有记错,最近的一次淘宝发公告要暂停业务进行系统升级是2008年,之后再也没有听说过淘宝通过半夜停业务的方式来做系统升级的事情了。您听说过QQ升级么,事实上QQ从最开始的只能有500个好友到现在支持上亿的好友,经历过大大小小上千次的升级,从来没有停业务这一说法,为什么啊?因为互联网产品有一个特点,为了减少甚至避免系统升级对用户使用造成影响,在升级的过程中都采用了灰度发布的策略。

什么是灰度发布,这里引用一下百度百科的内容。

灰度发布,是指在黑与白之间,能够平滑过渡的一种发布方式。AB test就是一种灰度发布方式,让一部分用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度。-- 百度百科

哦,原来灰度发布就是保持两份不同的版本,让一小撮用户先在新版本上尝鲜,等这部分小白鼠用户稳定了,在把绝大部分的用户迁移到新版本上来。别的先不说,就针对之前我们部门那么多领导提出来的问题,一一解答下:

n  灰度发布后:上线前需要明确业务主线,如果业务规则、操作上存在纰漏,出问题的范围也可控。而且,现在市场部门做推业务前,采用的也是先挑一个中等营业厅先操作试点,整理出业务规范,确定没问题再大规模推广,灰度发布正好就能适应这种节奏和方式。

n  灰度发布后:可以控制在灰度环境上验证新产品的准确性,验证各种订购、计费、查询等场景。

n  灰度发布后:在灰度环境上观察、收集营业员的操作,并录制成自动化测试的脚本,可以快速提高自动化测试的比例。

n  灰度发布后:前台的影响范围可控,也就是几个台席、百十个客户,完全可以避免上线故障和批量差错的产生。

这么一圈分析下来,灰度发布真是个令人激动的好东西啊!接下来,部门内针对灰度发布的事情组织一拨人讨论,论证我们的CRM系统是否适合做灰度发布。

当前系统典型的分层架构都是三层结构,在WEB层、APP层做灰度发布很容易,只需要搭建两套不同版本的生产环境,然后从WEB层控制访问的源头即可。但是服务总要收敛到数据层,因为客户的数据只能保留一个版本才能保证最小粒度(单客户级)的对外服务一致性,所以,一旦要在这个层上做灰度,不但要保留两个不同版本的数据,而且在程序控制、代码逻辑上会非常困难。

最后的结论是如果只有WEB层的功能上线,做灰度是合适的,但我们每次上线都涉及都后台表的变化,无法承担两份数据的差异,所以无法实施灰度发布。

这事就一直搁置在这里了。

是不是在运营商里,真的就不适合用灰度呢?

 

灰度,更是一种思想 

如果真的能通过在WEB层、APP层的灰度发布控制影响的话,为什么一定要提前批量把数据转换过去呢,为什么不能在客户访问到系统,要用到数据的时候,才把客户数据从老模型转换成新模型呢?

也就是说,除了系统层面、数据层面能做灰度这种选择,我们在过程上为什么不能同样采用灰度呢?

    具体的说,就是把以前批量的数据割接和回退的脚本“单元化”,封装成一个个针对单独数据来源的小脚本。不管你做没做过DBA,我想这类针对单客户的数据迁移,您一定会使用到索引,执行效率非常高,这样,单个数据迁移完成后再调用新版本的服务,对客户感知基本没有什么影响。

    这样,前端 的灰度发布,加上后端数据的即时转换,我们就能做到每次升级后的版本至开放到一两家营业厅、几个台席,控制较少量的用户使用,同时,采取动态数据迁移的方 式,把这些台席上受理的客户数据动态升级到新的数据模型,前台只要加上个“数据转换中,请等待”的提示,前台人员一定能够理解,对这些“小白鼠”客户持续 跟踪,等系统稳定了再逐步放开台席,放开试点数量,这不就是一个完整的灰度发布么?

事情就是这样,只要你持续在一个问题上深入想下去,总会有解决的办法。2013年初去广东公司交流的时候,他们正在做CRM系统的割接,因为地市公司担心割接带来的业务影响,配合意愿不强,而且在第一次割接的时候确实是因为系统问题产生了一些影响,被地市公司把问题放大,给了支撑很大的压力。如果广东公司能考虑下灰度的策略,在地市只挑12个营业厅,让他们先感受新系统,接受新系统,后续的割接应该会顺畅很多。即使是新系统有问题,一两家营业厅、几个台席的失败,对地市公司都是可以承受的。所以,灰度发布看似一个加长系统升级的过程,其实是一个有效减低风险,加快割接进度的好策略呢。

    灰度部署典型的框架如下图,供参考:

 

 从割接到灰度,不仅仅是策略,更重要的是思想


 

   小结

    2011年亚信在浙江割接,2012年在上海、北京、辽宁割接,亚信的余鹏武总还计划写一本移动CRM割接的书,说要把这些经历和痛苦都写出来,虽然我相信这本书里一定有很多的内容和趣闻,但我个人还是不赞成这种宣扬靠人堆、靠硬干蛮干的工作方法。

真心希望移动公司以后的上线不再有“割接”这样的词,而都是采用“灰度”的方式,大家轻装上阵,不用提心吊胆、不用熬夜干活,大家白天里轻轻松松就把事情做掉了。

 

 

分享到:
评论

相关推荐

    干线光缆割接施工组织方案.doc

    现场防护员作业中集中思想,认真了望,坚守岗位,密切注意工地作业的情况。 割接人员安排 割接人员安排主要包括两组:第一小组和第二小组。第一小组负责接头盒 01#的光缆割接工作,第二小组负责接头盒 02#的光缆...

    XX银行网络机房搬迁方案.doc

    3. 搬迁方案核心思想:搬迁方案的核心思想是确保业务的连续性和稳定性,尽量减少搬迁对业务的影响。在设计搬迁方案时,需要考虑到业务的需求和限制,确保搬迁的顺利进行。 知识点:业务连续性和稳定性、搬迁方案...

    安全技术-网络信息-汕头CDMA无线网络基站控制器BSC建设研究.pdf

    - 总体建设原则:包括网络构建的指导思想、目标和技术标准。 - 建设思路:确定无线网络的建设方向和方法论。 - BSC建设方案:详细规划BSC的扩容建设,包括网络组织结构的设计。 - BSC/PCE设置原则:确定BSC和PCF...

    某银行网络机房搬迁方案.doc

    1.3 搬迁方案的核心思想应兼顾业务连续性、数据完整性以及最小化中断时间。这需要在规划中充分考虑到各种可能出现的问题,确保迁移过程中业务不受重大影响,并且在最短的时间内完成切换。 二、实施方案及应急预案 ...

    《[掌上运维移动]移动公司运维部主任职位竞聘的演讲稿》.doc

    还记得在支局设备改造工程中,我亲自在一线工作,制定割接计划,监控每一个环节,确保新旧设备交替的割接工作万无一失。在机房整治工作中,我同样冲在前面,领导并参与整治工作,面对重重困难,我总是能够沉着应对,...

    光缆述职报告.docx

    - 完成了多项支撑网及数据业务工程,包括短信中心迁移工程割接和MSC83的割接工作。 4. **队伍建设**: - 重视员工的政治思想教育,通过宣传市场竞争形势和未来发展,激发员工的工作积极性和责任感。 - 与网络部...

    最新通信公司技术员工作总结范文.doc

    - 学习“xx”重要思想,反映了在工作和生活中应用党的理论成果,提升个人思想境界和职业素养。 6. **目标与愿景**: - 尽管已经取得一定成就,但技术员仍应设定成为多面手的目标,持续努力,以实现个人职业发展的...

    通信监理的年度工作总结怎么写.doc

    1. **工作态度与职责**:通信监理需具备强烈的职业责任感,严格按照工作指导思想执行任务,以“让业主满意”为服务宗旨。在日常工作中,应严谨对待,不马虎、不偷懒,积极请教并处理问题。 2. **项目管理**:在项目...

    大营销体系建设工作总结.pdf

    3. **营销信息化系统的对接与优化**:成立了专门的实施小组,对营销信息化系统进行适应性调整,完成系统测试、割接前后的工作,确保业务数据的准确对接,配合上级公司优化系统配置。 4. **任务分解与节点管理**:...

    分布式网络管理中网元Agent的设计 (2008年)

    黑龙江联通 GSM网络管理中,设备厂家频繁割接造 成的旧版本的 NeAgent(网元 Agent)无法满足现实要求,将智能 Agent的思想引入分布式网络管理中,设计实现 了3期 NeAgent,该版本的 NeAgent充分考虑了以往版本中的不足,把...

    通信监理工作个人总结.docx

    1. **工作指导思想**:通信监理人员需要坚持正确的工作指导思想,以“让业主满意”为服务宗旨,确保工作的专业性和高效性。 2. **职业责任心**:监理人员需具备强烈的职业责任心,对待每一项工作都不能马虎,对待...

    2019通信公司技术员工作总结范文.doc

    这些技能的积累为我在大型割接中发挥关键作用提供了坚实基础。 随着时间的推移,我的职责不再局限于单一的技术操作,而是逐步扩展到了技术管理层面。在调到县公司后,我负责了机房环境整治和交换设备的维护工作。这...

    HCNP-R&S-IEEP部署企业级网络工程项目教材V2.0.pdf

    以及网络规划、设计、实施、维护、排障、优化和割接等知识。通过这些内容的学习,学员不仅能够了解和掌握网络技术知识,还能够培养实际操作和项目管理能力,为今后从事企业级网络项目打下坚实的基础。

    2019年通信行业个人年终工作总结三篇.doc

    5. **配合与协作**: 在机房环境整治、大型割接等工作中,与建设维护部门的协同工作,显示出团队合作精神,这对于通信网络的高效运行至关重要。 6. **学习与适应**: 持续学习“xx”重要思想,体现了将政治学习与业务...

    通信监理工作人员年终工作总结(精选).doc

    在这一年的工作中,这位监理人员始终坚守“让业主满意”的服务宗旨,严格遵循正确的工作指导思想。面对挫折和困难,他认识到这些挫折实际上是最好的生存训练,能够帮助个人成长和进步。在每一个项目中,他都积极参与...

    校园网络整改方案.doc

    详细描述了施工过程、割接测试等实施步骤,确保改造顺利进行。 第四章 售后服务 涵盖售后机构状况、系统质量保证期和产品设备维护措施,保证改造后的网络系统得到持续的技术支持和服务。 综上所述,校园网络整改...

    通信工程师个人工作总结.doc

    在项目执行过程中,我严格遵循公司的指导思想,以业主满意度为导向,尽职尽责地完成了各项任务。例如,在配合电信业主进行光网江苏竞赛计划时,我积极获取上岗证,确保具备足够的专业知识和技能来提供优质服务。 在...

Global site tag (gtag.js) - Google Analytics