Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
平台架构的服务监控 
UPYUN / @oneoo
一般情况做什么监控?
硬件监控 
•网络带宽 
•磁盘状态 
•内存状态 
•系统负载 
•…
软件性能监控 
•Nginx 连接数、吞吐量 
•MySQL 连接数、吞吐量 
•…
不足之处 
•仅提供数值输出,被动依赖监控服务来获取数据 
•监控埋点成本高 
•实时性差 
•无法反馈应用服务的状态信息
ActionMoni 狗眼 
UPYUN 的服务监控系统
特性 
•支持TCP/UDP/HTTP/WebSocket接口 
•支持counter和average操作 
•支持历史数据持久化存储 
•每秒可提供超10万个操作 
•实时查询接口 
•提供多个语言的Client(TCP/UDP)
怎么做服务监控?
一个上传图片并缩小存储的服务 
•客户端发起 PUT 请求 
1.API 服务接受请求,并获取文件内容 
2.API 连接 MySQL,审核是否合法请求,和对应的账号 
3.根据请求的具体要求,连接做图服务集群,进行图片 缩小操作 
4.连接存...
•1~5 是整个文件上传业务的总耗时 
•2、3、4 分别是MySQL、做图服务和存储服务的耗 时 
•1~5 的耗时 = 2+3+4
监控哪些东西? 
1.某个服务、子服务的 qps 并发数的高低直接影响服务稳定性。假设做图服务集群 的处理能力是 1000/qps ,那如果当前监测到的值大于 800/qps 就要考虑扩容 
2.某个服务的平均处理耗时 平均处理耗时可以直接反馈...
main{ 
t = time(); 
job start; 
st1 = time(); 
subjob start; 
… 
subjob end; 
actionmoni.set(SUB_KEY1, time() - st1); 
st2...
埋点粒度尽量细致 才能更清晰的反馈出整个平台的问题
UPYUN 的服务监控
CDN 性能监控
API 性能监控
_CDN_DQ DNS解析耗时(ms) _API_U 上传耗时(ms) _CDN_D 下载耗时(ms) -QN 竞争对手
Q & A 
@oneoo 
UPYUN 联盟 https://www.upyun.com/union.html
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
2014 Hpocon 黄慧攀   upyun - 平台架构的服务监控
Upcoming SlideShare
Loading in …5
×

2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控

2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控

  • Be the first to comment

2014 Hpocon 黄慧攀 upyun - 平台架构的服务监控

  1. 1. 平台架构的服务监控 UPYUN / @oneoo
  2. 2. 一般情况做什么监控?
  3. 3. 硬件监控 •网络带宽 •磁盘状态 •内存状态 •系统负载 •…
  4. 4. 软件性能监控 •Nginx 连接数、吞吐量 •MySQL 连接数、吞吐量 •…
  5. 5. 不足之处 •仅提供数值输出,被动依赖监控服务来获取数据 •监控埋点成本高 •实时性差 •无法反馈应用服务的状态信息
  6. 6. ActionMoni 狗眼 UPYUN 的服务监控系统
  7. 7. 特性 •支持TCP/UDP/HTTP/WebSocket接口 •支持counter和average操作 •支持历史数据持久化存储 •每秒可提供超10万个操作 •实时查询接口 •提供多个语言的Client(TCP/UDP)
  8. 8. 怎么做服务监控?
  9. 9. 一个上传图片并缩小存储的服务 •客户端发起 PUT 请求 1.API 服务接受请求,并获取文件内容 2.API 连接 MySQL,审核是否合法请求,和对应的账号 3.根据请求的具体要求,连接做图服务集群,进行图片 缩小操作 4.连接存储集群,存入缩小后的图片 5.给客户端返回结果
  10. 10. •1~5 是整个文件上传业务的总耗时 •2、3、4 分别是MySQL、做图服务和存储服务的耗 时 •1~5 的耗时 = 2+3+4
  11. 11. 监控哪些东西? 1.某个服务、子服务的 qps 并发数的高低直接影响服务稳定性。假设做图服务集群 的处理能力是 1000/qps ,那如果当前监测到的值大于 800/qps 就要考虑扩容 2.某个服务的平均处理耗时 平均处理耗时可以直接反馈出该服务是否正常,和处理 性能如何。假设我们的MySQL查询服务正常情况应该在 50ms以内,那如果当前监测到的值大于100ms,就得检 查MySQL服务出什么问题了
  12. 12. main{ t = time(); job start; st1 = time(); subjob start; … subjob end; actionmoni.set(SUB_KEY1, time() - st1); st2 = time(); subjob start; … subjob end; actionmoni.set(SUB_KEY2, time() - st2); job end; actionmoni.set(KEY, time() - t); }
  13. 13. 埋点粒度尽量细致 才能更清晰的反馈出整个平台的问题
  14. 14. UPYUN 的服务监控
  15. 15. CDN 性能监控
  16. 16. API 性能监控
  17. 17. _CDN_DQ DNS解析耗时(ms) _API_U 上传耗时(ms) _CDN_D 下载耗时(ms) -QN 竞争对手
  18. 18. Q & A @oneoo UPYUN 联盟 https://www.upyun.com/union.html

×