服务化架构系统监控难题解决方案.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
服务化架构系统监控难题处理方案 2021-04-08 众所周知,系统监控一直是拥有简单IT架构的企业所面临的一个重要问题,而这也并不是每家企业都能够轻松处理的技术挑战。OPPO作为一家国际智能终端设备及移动互联网服务供应商,推出过多款外观精细、功能牢靠的智能手机产品,其品牌知名度也一直名列前茅。但实际上OPPO公司与其他快速进展的现代企业一样面临着本人的IT挑战,而愈加不为人知的,则是其品牌背后同样精彩的IT团队与信息化支持力量。 OPPO后端系统规模近几年快速进展,系统重构以后接受了服务化的架构,各系统之间耦合降低,开发效率得到了很大的提升。然而在服务化带来了好处的同时,难于监控的问题也一并消灭。由于服务之间调用关系错综简单,接口消灭问题,多个系统报错,因而很难定位真正的毛病源头。整个恳求调用链就像一个黑盒子,无法跟踪恳求的整个调用路径,发觉功能瓶颈点。 为了处理这些问题,OPPO公司自行开发了一套监控系统,并结合第三方监控系统,构成了从App恳求开头到后端处理过程的完整监控体系。OPPO监控系统的简称为OMP(OPPO Monitor Platform),历时半年开发,分为两期上线,现在已全面接入OPPO线上项目。 三大理由打算自主研发 之所以选择自主研发监控系统,次要是考虑到三方面的缘由:定制化需求、易用性、以及开发成本低。 首先,在对比之后发觉现有的开源监控软件无法满足OPPO 的需求。对于监控系统来说最核心的一条需求,就是要能够监控每个App恳求的完整调用链,从App发起恳求,到后端的负载均衡接入、API Server、微服务调用、缓存、消息队列、数据库访问时间等。系统架构微服务化以后,服务跟踪和服务调用链监控尤为重要,否则系统毛病及功能瓶颈就很难排查了。 为了打通用户恳求的完整调用链,需要在API框架、RPC框架、缓存操作、数据库操作、队列消费等代码埋点,以及高功能处理和存储系统,而目前的开源软件无法满足需求,各大公司也因而才开发了本人的监控平台。由于服务调用跟踪功能跟开发框架深度关联,各公司选用的框架并不相同,所以业界鲜有类似开源的产品。 其次个缘由是考虑到权限及一体化管理界面的需求。监控平台不只仅面对运维人员,开发人员、运营人员、测试人员也需要经常使用。例如依据监控平台采集到JVM Young GC/Full GC次数准时间、耗时Top 10线程堆栈等信息,经常查看监控平台,开发、测试人员便可以评估代码质量,排解隐患。 监控平台面对用户众多,平安性及权限管理要求较高,同时需要一体化的管理界面,简约易用,而组合多个开源软件,权限和管理便捷性很难满足需求。 第三,监控系统的开发难度比较低。自行研发的监控平台虽有千般好处,但是假如开发的难度太大,以至于无法持续的投入,那也是没有意义的。基于Sigar、kafka、Flume、HBase、Netty等技术,开发高功能、可伸缩的系统难度实际上并不大,需要投入的资源不需要很多。 六项目标内容实现线上应用全面监控 OMP的最终目标是供应一体化的监控系统,在同一套管理界面及权限体系之下,对线上应用系统进行多维度的监控。OMP现阶段次要监控内容包括:主机功能目标监控、两头件功能目标监控、服务调用链实时监控、接口功能目标监控、日志实时监控、业务目标实时监控。 主机功能目标监控方面的开源软件格外多,比如Zabbix、Cacti等。次要采集主机的CPU负载、内存使用率、各网卡的上下行流量、各磁盘读写速率、各磁盘读写次数(IOPS)、各磁盘空间使用率等。 借助开源的Sigar库,可以轻松采集主机信息,为了保证整个监控系统体验的全都性,以及系统扩展性、稳定性的要求,我们没有直接接受Zabbix等开源监控系统,而是本人开发Agent程序,部署在主机上采集信息。 Sigar(System Information Gatherer And Reporter),是一个开源的工具,供应了跨平台的系统信息收集的API。核心由C言语实现的,可以被以下言语调用: C/C++、Java 、Perl 、NET C# 、Ruby 、Python 、PHP 、Erlang 。 Sigar可以收集的信息包括: CPU信息,包括基本信息(vendor、model、mhz、cacheSize)和统计信息(user、sys、idle、nice、wait); 文件系统信息,包括Filesystem、Size、Used、Avail、Use%、Type; 大事信息,类似Service Control Manager; 内存信息,物理内存和交换内存的总数、使用数、剩余数;RAM的大小; 网络信息,包括网络接口信息和网络路由信息; 进程信息,包括每个进程的内存、CPU占用数、形态、参数、句柄; IO信息,包括IO的形

文档评论(0)

duanbingbing + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档