10 月 23 - 25 日,QCon 上海站即将召开,现在购票,享9折优惠 了解详情
写点什么

把越来越多的服务治理好才是当务之急,服务微不微可以慢慢来

  • 2020-04-17
  • 本文字数:1912 字

    阅读完需:约 6 分钟

把越来越多的服务治理好才是当务之急,服务微不微可以慢慢来

最近在和别人的谈话中被问及 “最近忙吗?” 机械化的回答是 “还行吧。”


其实这句话根本就没有经过大脑思考,直接条件反射的出去了。。今天中午吃完饭,又兴冲冲的拿着 IPad 跑去千里之外的星巴克坐着,排队时无意中也听到了一对年轻人如出一辙的对话,我也条件反射的笑出声了


这一笑,联想到了最近所谓“还行吧”的事件上,其实所谓忙,我觉得应该分为 “忙事情” 和 “忙脑子”,也就是做完一个被安排的任务,与发起一个任务让别人去完成。这 2 年我应该都属于后者,所以每天都靠 ‘大运动量+咖啡因’ 撑着,并让自己保持活力与干劲

‘污染’,其实从未停息

作为一家传统金融业务起家的公司,由始至终都选择自研系统,这本身就透漏着一种技术情怀。


不过情怀归情怀,问题还是有不少,咱们先来谈谈这几年随着好买的业务突飞猛进之后,服务(或叫业务系统)建设与管理中所暴露的痛点:


  • 业务条线 - 多:(据不可靠统计)3 个事业群,20+个子系统,150+个应用服务,500+个服务接口

  • 注册中心 - 散:10+个 Zookeeper 集群,做个组合要链一堆 ZK,测试环境更是一把鼻涕两行眼泪

  • 监控方式 - 杂:2 个自主研发的监控系统、ELK、日志分析、端到端…


既然罗列的那么清楚,为什么不去解决它呢?比如说重构不就得了。。来说下为什么这些问题虽然清楚,但却久久不能 “根除” 呢?


1.技术容量与性能并非最大痛点,业务复杂度高带来的治理成本高是当务之急


2.研发资源有限,无法做到在业务高速并行阶段,同时兼顾系统的大规模改造


3.质量关的压力,回归测试依赖于人肉,版本管理带来的隐患等


一口气说了那么多‘问题’,想必身临其境的小伙伴肯定清楚,这些点绝非像文字描述的那样轻描淡写,可谓 “谁做谁知道,感觉真奇妙”


为了寻找突破,我也不断地和小伙伴们一起探索者,另外自从加入 EGO 这半年, 也接触了不少大咖,从某这角度说,上面我所谈到的问题和痛点,是具有普遍性的,只不过大家选择的解决路径不同罢了

‘治理’,先规范下吧

困难永远都在,用我们经常提及的一句话来概括下 “持续污染,持续治理,寻找平衡,夹缝中寻找突破”


通过几轮脑暴,我们打算先从 “dubbo 源码私有化” 开始,那就先谈谈为什么我们要启动 “dubbo 源码私有化”?


在此之前,公司内所有的 dubbo 服务都是“想怎么玩就怎么玩”,也出现了很多的需求和问题,基本都是‘头痛医头脚痛医脚’,解决完就拉倒,所以本次针对这些现象进行以下措施:


  • 版本化:基于最新版本 2.5.3(2012-10-22) ,近 1-2 年,各团队对 dubbo 源码多少修改了一些,版本不一致

  • 避风险:修复一些已知的 bug

  • 技术栈:架构团队对 dubbo 原理较为熟悉,但对源码逻辑、结构及 package tree 不够深入

  • 自定义:通过封装(或变更)底层源码的方式,达到测试 Debug 或技术支持


是的,我们改动了 dubbo 的源代码,并对多条业务线的 dubbo 源码进行了合并及封装、调整,罗列 4 处改动点:



小伙伴们经过 2 周的奋战,用漂亮的身手证明了,dubbo 源码也不过如此而已~

撸起袖子“建平台”

解决了 dubbo 源码私有化,说白了也只不过将原本不标准的流程变得标准了,顺带的解决了几个 BUG,并合了下代码


接下去,为了开展“持续治理”,我们开始基于 Dubbo 建立属于自己的“服务治理平台”~


规划架构设计图:



通过 HRB 平台,帮助我们解决以下问题:


  • 集中化:各接各的 ZK,各用各的 dubbo admin

  • 标准化:APP 名,接口名比较随意,给统计、自动化测试、管理带来困难

  • 强监控:部分业务线使用了 dubbo monitor,无法获取‘RPC 端到端 ’的各项数据

  • 需治理:具不可靠统计,目前 dubbo interface 已超过 500+

  • 洞见性(未来展望):灰度发布、应用分组、限流降级、弹性伸缩等

这么大的‘梦’要几个夜去圆

先从成本的角度说下各方的配合与投入:


  • 对于平台研发而言,主要的研发资源将投入在管理中心上(预计 4 周时间),着重满足多业务线、多视角的用户体验、数据体现等热点

  • 对于应用研发而言,由于对 dubbo 完全兼容和适配,将无需接入

  • 对于测试与运维而言,只需通过 3 项工作即可实现平滑过渡:

  • 替换 dubbo 包(HRB SDK),修改配置(集成配置中心)

  • 迁移 ZK 至新 ZK(两种方案:“一把切:全 dubbo 应用服务覆盖”与“逐步切:挑选应用” )

  • 将 dubbo Admin 下线,使用 HRB 开始工作


多想想,方法总是有的


对于好买来说,今年应该是推行‘平台化’以来的第 2 个年头,有时抬头看看,会觉得很累,路途漫漫,可当你回头看看走过的路,将会觉得成就满满


有时我们会抱怨,因为 A 条件不成立,所以无法达到 B 目标,其实只要我们多想想,多琢磨琢磨,哪怕是一条缝,应该也会有水珠滴落,只不过有太多的时候我们没有去关注,总觉得无在乎罢了


本文转载自头哥侃码公众号。


原文链接:https://mp.weixin.qq.com/s/SjBepU1Bn_0IePrr2k5GQQ


2020-04-17 15:03809

评论

发布
暂无评论
发现更多内容

低代码拖拽式MES系统数据大屏,重塑智能制造新视界

万界星空科技

数字化转型 mes 数据大屏 万界星空科技mes 电子大屏

三种高级RAG检索方法帮企业告别冗长文档!

神州数码

从美图类场景,看火山引擎数据飞轮如何赋能产品增长

字节跳动数据平台

大数据 用户增长 销售 增长 客户

线索系统性能优化实践

京东零售技术

系统 企业号2024年7月PK榜

面向广大中低负载场景,华为云Flexus 云服务器X实例带来“品价比”新选择

轶天下事

MobPush REST API中的创建推送

MobTech袤博科技

文献解读-长读长测序-第十四期|《作为了解棉花驯化的资源,印度棉(Gossypium herbaceum L. Wagad)基因组》

INSVAST

基因组 基因数据分析 生信服务

2024年甘肃省7家正规等保测评机构名单汇总

行云管家

网络安全 等保测评 等保测评机构 甘肃

Apache IoTDB v1.3.2 发布|新增 explain analyze、UDAF 自定义聚合函数框架等功能

Apache IoTDB

技术突破、业界首款!华为云Flexus 云服务器X实例开启柔性算力新时代

YG科技

iOS端海外推送最佳实现

MobTech袤博科技

新一代柔性算力加速企业轻松上云,Flexus X实例有来头!

轶天下事

新一代柔性算力Flexus X实例,加速企业数字化业务创新增效

轶天下事

如何熟悉一个陌生系统

京东零售技术

系统 企业号2024年7月PK榜

手把手教你玩转 Nginx 配置

左诗右码

NGINX Ingress Controller

如何画一个系统的设计图

京东零售技术

架构 企业号2024年7月PK榜

华为云技术新突破:Flexus X实例以其柔性算力加速企业一键上云

YG科技

腾讯云WeData全新升级:数据分类分级管理,构建数据安全屏障

腾讯云大数据

wedata

柔性算力的创新之作!华为云Flexus X实例以6倍性能,带来旗舰体验

轶天下事

在(Linux)ubuntu下通过GTK调用libvlc开发视频播放器

DS小龙哥

7月月更

企业自身数据保护技巧你知道多少?用堡垒机可以实现吗?

行云管家

网络安全 数据安全 堡垒机 企业数据安全

电机行业MES生产管理系统--助力电机企业数字化转型

万界星空科技

mes 万界星空科技 电机行业 电机MES 电机工厂

性能高达6倍,Flexus X实例用实力阐述什么是新一代柔性算力

YG科技

华为云Flexus云服务器X实例:柔性算力新物种,越用越省!

YG科技

轻松破除上云门槛,新一代柔性算力Flexus X实例如此简单

轶天下事

新一代柔性算力Flexus X实例,重新定义企业级云服务新标准

轶天下事

天工一刻 | 一文看懂小模型与端侧模型

新消费日报

煤矿安全大模型:微调internlm2模型实现针对煤矿事故和煤矿安全知识的智能问答

汀丶人工智能

人工智能 智能问答

开源之夏|祝贺MatrixOne开源社区项目中选同学!

MatrixOrigin

数据库 云原生 开源社区

数字化转型加速器,Flexus X实例提升企业核心竞争力

YG科技

把越来越多的服务治理好才是当务之急,服务微不微可以慢慢来_语言 & 开发_头哥侃码_InfoQ精选文章