版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
去哪儿旅行基础架构部/资深研发工程师马阳阳为什么去哪儿网会启动系统瘦身项目?背景效率下降效率下降系统瘦身背景&痛点一年内无变更应用:20%服务精简代码精简服务精简代码精简系统瘦身目标&挑战其他火车票机票酒店其他火车票机票酒店系统瘦身时间及组织架构规划票瘦身公共支撑团队(虚拟)筛选模型(方法论)找得到删得好找得到删得好如何自动化、低风险地精简服务?可精简服务特征分析网关服务C②③InfoQ极客传媒“删得好”-准全快0c278849ce91c4cbbae98867a03075da4d9d34f08a48bcb1083下一操作时间0ebc3c12d46742c5b3e465a0bc36fa60e3b4394c588cd45a54c>服务平台0c278849ce91c4cbbae98867a03075da4d9d34f08a48bcb1083下一操作时间0ebc3c12d46742c5b3e465a0bc36fa60e3b4394c588cd45a54c5c944a575e3045ed878efd1312022-08-1611:37:395c944a575e3045ed878efd1312022-08-1611:37:392022-054c026597ea949b4aaa2b69ed909d16a089c44788b39169ccfad观察期观察2周03代码精简如何精准找到线上无流量的方法?量大通用性(效果)(效率)未被引用的方法(静态)重构privatestaticfinalLoggerlogg@Before("execution(*com.qunar.noah.kvm.*.*(..))")publicvoidlogBefore(JoinPointjoinPoint){("Entering"+joinPoint.getsignature().getName()+"method");}}Agent上报、Agent上报、取出日志DB1、猜测:有方法执行次数1、猜测:有方法执行次数的计数器 起初执行多次后TheServiceabilityAgent(SA).TheServiceabilityAgentisaSunprivatecomponentintheHotSpotrepositorythatwasdevelopedbyHotSpotengineerstoassistindebuggingHotSpot.TheythenrealizedthatSAcouldbeusedtocraftserviceabilitytoolsforenduserssinceitcanexposeJavabbjectsaswellasHotSpotdatastructuresbothinrunningprocessesandinEorefiles.headerklass(oop(oop)Maven:comqunardpartysajdi>META-INForaclejvm.hotspotjfrsun,lvm.hotspotclassfilecodecompilerdebuggetools>jcoresoql>ClassLoaderStats>DumpJFR>JInfoCJMap>cJStackObjectHistogram>PMapInfoQ极客传媒跑数:探测JVM中方法计数,并保存结果的过程方案性能损耗故障风险实现复杂度高低高Agent字节码插桩低中高基于SA工具无无低挖掘特征SA方案详细设计-性能无损跑数度量选型度量方案清理代码对业务性能无影响故障风险为零!不接线上流量了(进程还在)进行SA跑数SA方案详细设计-跑数代码实现度量选型度量方案清理代码起初执行多次后解释执行编译执行VMgetVMgetSystemDictionaryallClasse//扫描所有已被编译成codeBlob的类}InfoQ极客传媒SA方案详细设计-解释执行方L度量选型度量方案清理代码解释执行编译执行}aoverridepublicvoidvisit(Klassklass){if(klassinstanceofInstanceklass){②finalMethodArraymethods=((Instanceklass)klass).getMethods();for(inti=o;i<methods.length();i++){finalMethodmethod=methods.at(i);if(method.getInvocationCount()>θ){}}SA方案详细设计-编译执行方法publicclassCompiledMethodVisitorimplementsCodecacheVisitor{①publicCompiledMethodVisitor(Set<MethodDefinition>result){this.result=result;}度量选型度量方案清理代码解释执行编译执行}取差集取差集SA方案详细设计-计算可精简方法集挖掘特征度量选型度量方案清理代码挖掘特征度量选型度量方案清理代码“删得好”-多种手段注意代码可编译代码身分支分支*ldparamcommand已经与入执行工下又的命令对家//执行hosts同步后返回的当前服务器的hosts进行记录InfoQ极客传媒“删得好”-最佳实践否否全自动精简否全自动精简大仓库半自动精简重要包全自动精简半自动精简全自动精简04最终效果代码少了多少?带来了哪些收益?代码精简服务精简代码精简服务精简(数千万行)发布耗时(秒)需求耗时(天)发布耗时(秒)05展望未来之后还有哪些方向和技术值得探索?代码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年汉中市汉台区工会人员招聘笔试试题及答案详解
- 2025年广安技师学院单招综合素质考试模拟试卷及参考答案详解(黄金题型)
- 风电场施工网格员管理考核细则
- 2025年陕西洛河职业学院单招职业技能考试题库带答案详解(达标题)
- 2026年剑宏职业学院高职单招职业技能考试题库有答案详解
- 2026年辽宁省铁岭市高职单招职业技能考试题库含完整答案详解【夺冠】
- 2024年襄阳职业技术学院高职单招职业适应性测试考试模拟试卷附参考答案详解(综合卷)
- 2027年河南省三门峡市高职单招职业技能考试模拟试卷附答案详解【突破训练】
- 2024年汉江装备学院高职单招职业技能考试题库及参考答案详解【典型题】
- 2027年河北艺术职业学院高职单招职业适应性测试考试题库含答案详解(A卷)
- 2026年乡镇自来水抄表客服招聘考试笔试试题(含答案)
- 容县辅警招聘考试题库 (答案+解析)
- 2025年福州市鼓楼区城投集团招聘笔试历年参考题库(含答案详解)
- 2026内蒙古呼伦贝尔市海拉尔区红旅文化旅游开发有限责任公司下属四家子公司招聘23人考试参考题库及答案详解
- 2026年山东事业编统考考试《综合应用能力》真题及答案解析
- 现代渔业园区规划布局方案
- 期末模拟测试卷(试卷)2025-2026学年五年级数学下册人教版(含答案)
- 中华人民共和国生态环境法典测试题及答案
- T∕CAPID 005.4-2023 垃圾焚烧发电工程质量监督检查大纲 第4部分:厂用电系统受电前监督检查
- 中国专家共识降胆固醇策略2026
- 2026年急诊科质量控制考核细则
评论
0/150
提交评论