EagleEye系统整体情况
近两年集团业务和规模始终保持着高速的增长,纵深上,交易量屡攀新高,双十一零点的交易峰值也再一次刷新了历史;横向上,集团涉及的行业和领域也不断的拓展,各行各业在不断加入阿里(高德、优酷、友盟及大麦等等),共同前进。
面对数据规模持续增加,如何应对在业务高速发展的背景下系统采集的数据量级的持续增长,如何在越来越大的数据规模面前保障EagleEye自身业务的稳定,成为EagleEye今年双十一面临的巨大挑战。
eagleeye 是什么?
淘宝现在是一个由很多个应用集群组成的非常复杂的分布式系统。这些应用里面主要有处理用户请求的前端系统和有提供服务的后端系统等。这些应用之间一般有RPC调用和异步消息通讯两种手段,RPC 调用会产生一层调一层的嵌套,一个消息发布出来更会被多个应用消费,另外,应用还会访问分库分表的数据库、缓存、存储等后端,以及调用其他外部系统如支付、物流、机彩票等。
请试想一下,现在淘宝一个买家点击下单按钮所产生的网络请求到达淘宝服务器之后,就会触发淘宝内网数百次的网络调用。这些调用中有哪些出问题会影响这次交易,有哪些步骤会拖慢整个处理流程,双十一的交易高峰需要给应用集群分配多少台机器,这些都是需要考虑的。但是调用环境的复杂度,已经很难用人力去做准确的分析和评估了,这时候 EagleEye 就派上了用场。
EagleEye 系统首页:线上,日常
EagleEye (鹰眼)通过收集和分析在不同的网络调用中间件上的日志埋点,可以得到同一次请求上的各个系统的调用链关系,有助于梳理应用的请求入口与服务的调用来源、依赖关系,同时,也对分析系统调用瓶颈、估算链路容量、快速定位异常有很大帮助。另外,业务方也可以在调用链上添加自己的业务埋点,使网络调用和实际业务内容得到关联。