流年不利的社交游戏服务商Zynga近日在官方博客宣布开源zPerfmon——该工具负责监控Zynga数以千计的社交游戏服务器。zPerfmon的源代码目前已经上传至Github

包括Facebook、Google、Netflix和Twitter在内的众多互联网公司经常会开源自己的开发的工具,但是zPerfmon不同 寻常之处在于其规模:作为单一服务器系统,zPerfmon每天处理的数据量高达150G,增加1亿条数据库记录,并能生成“5000万个档案和上百种查 看方式。”

zPerfmon不是人们想象的那样“大量子程序像珍珠一样轻灵地串缀起来”,而是能够处理海量不同类型文件和任务的单一系统,为每个游戏都提供数十种数据查看和访问方式。流程处理速度超快,稳定性和弹性也值得称道。

Zynga的Philips在博客中详细介绍了zPerfmon的技术原理,摘要如下:

作为处理引擎,zPerfmon服务器的“冲程”为30分钟,所有30分钟内的数据都将被分组、切碎。除了档案外,服务器还保存用户、实例和系统指标数据。所有这些数据都用时间戳赋予键值。通过时间戳可以回溯实例数、CPU峰值以及页面断链和死循环等。

服务器性能监控和故障排查领域已经有大量工具可用,从商业软件如Splunk到开源软件如Ganglia,但是很多互联网公司还是乐于开发自己的产品。这是因为每家公司的系统架构和分析需求都各不相同。例如Facebook就自行开发了至少两种系统监控工具,其中一个是基于Hadoop的数据仓库-Operations Data Store,另一个是事实工具Claspin,负责管理Facebook的缓存架构。

Zynga用zPerfmon监控其自行建设的zCloud混合云架 构中的生产服务器。在公司起步阶段,Zynga选择的是亚马逊AWS应对暴涨的用户数,当需求可以预测后,2012年初zynga选择放弃亚马逊的AWS 转向混合云方案。据Zynga首席技术官Allan Leinwand介绍,Zynga可以在24小时内部署1000台服务器。Allan还把亚马逊比作“四门轿车”,而Zynga的zCloud则是“运动 型跑车”。

Zynga 开源其服务器性能监控分析工具 zPerfmon的更多相关文章

  1. Web服务器性能监控分析与优化

    Web服务器性能监控分析与优化 http://www.docin.com/p-759040698.html

  2. 开源性能监控分析工具glowroot

    最近在做java性能瓶颈定位分析工具的研究,发现glowroot工具是一款相当不错的APM工具(Wonderful tool),架构简洁,部署简单,上手容易. 经过亲身搭建体验,总结了产品的架构,工具 ...

  3. MiniProfiler性能监控分析工具在.NET项目中的使用

    MiniProfiler是一款针对.NET, Ruby, Go and Node.js的性能分析的轻量级程序.可以对一个页面本身,及该页面通过直接引用.Ajax.Iframe形式访问的其它页面进行监控 ...

  4. UAVStack JVM监控分析工具:图形化展示采集及分析监控数据

    摘要:UAVStack推出的JVM监控分析工具提供基于页面的展现方式,以图形化的方式展示采集到的监控数据:同时提供JVM基本参数获取.内存dump.线程分析.内存分配采样和热点方法分析等功能. 引言 ...

  5. Web服务器性能压力测试工具http_load、webbench、ab、Siege使用教程

    Web服务器性能压力测试工具http_load.webbench.ab.Siege使用教程 作者: feng 日期: 2012/07/25 发表评论 (0) 查看评论   一.http_load 程序 ...

  6. linux ---性能监控(工具)

    linux服务器性能监控-nmon Nmon 是一个分析aix和linux性能的免费工具,出自IBM,其采集的数据通过nmon_analyser生成报表 一.下载 官网下载地址 百度网盘 二.运行和使 ...

  7. Apache服务器性能监控

    Apache服务器性能监控 1.使用自带mod_status模块监控 1)加载mod_status.so 模块 在httpd.conf中打开LoadModule status_module modul ...

  8. linux 服务器性能监控(一)

    这篇文章主要介绍一些常用的linux服务器性能监控命令,包括命令的常用参数.指标的含义以及一些交互操作. 几个问题 命令本身并不复杂,关键是你对操作系统基础知识的掌握和理解,先来看看下面几个问题: C ...

  9. Linux性能监控分析命令(四)—top命令介绍

    性能监控分析的命令包括如下: 1.vmstat 2.sar 3.iostat 4.top 5.free 6.uptime 7.netstat 8.ps 9.strace 10.lsof ======= ...

随机推荐

  1. NHibernate系列文章七:NHibernate对象状态

    摘要 NHibernate对象持久化 NHibernate对象的三个状态:临时态.持久态.游离态(托管态) NHibernate三状态的相互转化 1. NHibernate对象持久化 NHiberna ...

  2. mysql主从复制的一篇文章(转载)

      管理mysql主从有2年多了,管理过200多组mysql主从,几乎涉及到各个版本的主从,本博文属于总结性的,有一部分是摘自网络,大部分是根据自己管理的心得和经验所写,整理了一下,分享给各位同行,希 ...

  3. androidstudio 查看源码

    handler.postDelayed(myrunable,10000); ctrl+鼠标左键,点击postDelayed显示(不可以查看源码) ctrl+鼠标左键,点击postDelayed显示(可 ...

  4. Linux设置静态IP

    在做项目时由于公司局域网采用自动获取IP的方式,导到每次服务器重启主机IP都会变化.为了解决这个问题,我参考了http://blog.sina.com.cn/s/blog_537977e50100qh ...

  5. ZTSD_008_1表没有某订单数据,无法回写交期

    ZTSD_008_1表没有某订单数据,无法回写交期, 取系SAP组检查执行此RFC:ZFM_FP_025_1 为什么没有将数据导进来 select * from SAPSR3.ZTSD_008_1@S ...

  6. Looping Techniques

    [Looping Techniques] 1.When looping through dictionaries, the key and corresponding value can be ret ...

  7. scala 学习: 逆变和协变

    scala 逆变和协变的概念网上有很多解释, 总结一句话就是 参数是逆变的或者不变的,返回值是协变的或者不变的. 但是为什么是这样的? 协变: 当s 是A的子类, 那么func(s) 是func(A) ...

  8. log4net注意事项

    log4net的配置信息可以直接配置在系统的配置文件中,也可以单独写一个配置文件,文件名随便起,如log4net.config,单独的文件属性“复制到输出目录”应该是true.因为log4net框架会 ...

  9. C# 代码页获取input的值

    <input id="aa" name="iaa" type="text" /> Label1.Text = Request.F ...

  10. c# 线程信号量 Mutex

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...