从卓越工程角度看微软中国开发团队的成长
开发团队的成长离不开优秀的人才,简捷有效的流程和高效率工具这三个卓越工程系统中的重要因素。本文作者从这三个因素分析了微软中国开发团队是如何“从优秀到卓越”的。
作者 Srini Penchikala译者 张龙 发布于 2008年4月25日 上午12时54分
开源的JVM集群框架Terracotta的最新版包含了一些新特性,如集群可视化工具和对Tomcat 6平台的官方支持。周一Terracotta小组发布了该产品的2.6GA版,该版本还包含了一定的性能提升。
集群可视化与监测工具套件提供了整个应用健康度和性能的视图。操作员和开发者可以使用这些工具监测应用的性能,如CPU使用率、网络和磁盘活动、 Terracotta统计、对象改变率和垃圾收集周期。这些工具包括集群可视化和对运行状态快照的可视化图表,这些图表存储在数据库中以便之后可以离线浏 览。我们可以利用Terracotta管理控制台的锁分析器(lock profiler)查看这些快照以找出应用中的死锁和其他可能发生死锁的地方。
Terracotta的CTO Ari Zilka最近写了一篇博文更加深入的介绍了可视化工具和锁分析器(lock profiler)。他介绍了profiler工具以及如何使用它诊断运行时的性能热区。
Terracotta对Tomcat的支持包括web应用中session和应用级数据的集群,只要应用运行在流行的开源servlet容器上就可以。Terracotta 2.6还向其Forge项目站点增加了新的项目,现在该站点已经有了对EHCache和Hibernate的集成。这两个框架以前在Terracotta核心包中。Forge项目站点为Terracotta开发小组和社区成员提供了一个交流平台,这样大家就可以在Terracotta特定的集成和项目上以及任何缺陷的解决上进行交流和协作。Terracotta集成模块支持配置元素集,并且还支持在Terracotta配置中将Java类打包成一个单独的模块。
InfoQ采访了Terracotta小组以了解最新版的新特性。关于新版本中集群可视化和管理工具的细节问题,他们说:
集群可视化特性能以可视化的方式调优应用。除了用来搜集更多统计数据以便进行离线处理的统计器外,该可视化工具还包含运行时统计数据,这样你就可以查看到 实时数据了。运行时统计数据包括:Java堆、系统CPU、Terracotta事务、Terracotta故障率。此外,它还能记录30多种统计数据, 包括:CPU、磁盘、网络、堆、线程转储(Thread Dumps)、Terracotta队列深度等。
现在你可以使用管理控制台查看集群中所有JVMs上的线程转储(Thread Dumps)。通过他们你可以了解到集群上的这些线程在做什么。你还可以使用管理控制台在远程JVMs上调整日志级别,也能从集群中将某些JVMs排除出去以便调试。
关于性能改善问题,该小组解释了这些改善后面的动机以及他们是如何做到的。
性能改善着眼于一些通用操作,如填充缓存时的密集循环、对于实际字符串的自动压缩支持以及对一般的读/写的性能改善。
我们已经构建了一个工作量模型平台以模拟在我们的客户的应用中所遇到的一些用例。该模型平台能围绕着现实世界中的具体代码模式快速创建性能测试,并且将它 们放进自动的持续集成和测试套件中。这使得我们可以建立性能基准,并从该基准中不断改善性能,更重要的是我们可以时刻监视性能以确保没有性能衰退。
InfoQ问到了Terracotta产品在新特性和增强方面的未来路线图。
对于Terracotta来说,2008年最重要的是运行控制台的开发,它将提供应用的可视化、控制和SLA策略管理,包括:
- 服务器striping和极端扩展的镜像
- 历史分析(为你的应用采用Google式的分析)
- 自动化的快照
- 应用消息中心
- 一键部署
- SLA驱动的部署(即需部署)
- 帮助升级(滚动升级,自动化的软件部署)
在其他新闻中,Terracotta宣布他们正在用Terracotta 2.6版构建Hyperic SIGAR(系统信息搜集器和报告器)以获得关键的操作系统和硬件信息。SIGAR是Hyperic HQ管理平台的一部分,它提供了像自动化统计、检测、登录跟踪、控制及远程诊断这样的服务。
查看英文原文:Terracotta 2.6 Supports Cluster Visualization Tools and Tomcat 6 Integration
译者简介:张龙,同济大学软件工程硕士,现就职于理光软件研究所。主要从事文档工作流和办公自动化解决方案的研发工作。热衷于Java轻量级框架的研究,对敏捷方法很感兴趣。曾有若干年的J2EE培训讲师经历。参与InfoQ中文站内容建设,请邮件至china-editorial[at]infoq.com。
开发团队的成长离不开优秀的人才,简捷有效的流程和高效率工具这三个卓越工程系统中的重要因素。本文作者从这三个因素分析了微软中国开发团队是如何“从优秀到卓越”的。
本文是Productive Java with Ruby系列文章的第一篇,我将从单元测试这个话题开始,让Java的开发人员能够在实际工作中利用Ruby提高工作效率。
InfoQ中文站有幸与阿里软件的首席架构师赵进在一起探讨了SaaS的相关话题,包括SOA和ASP与SaaS的异同、云计算、SaaS的前景、它的关键技术、技术瓶颈等等。
在这篇文章中,Adrien Louis和Marc Dutoo在一个典型的ESB场景中讨论了编配和路由的区别和优缺点。他们讨论了几种连接服务的方法,从使用如自定义路由这样的低级别方法,到使用如工作流和编配这样面向业务的高级别方式,并总结说不存在“一边倒”的解决方案。
本文是根据7月26日InfoQ中文站在杭州举行的QClub活动(第三期)后半程小组讨论总结而成。主要内容包括如何在SOA系统中实现服务编排,如何保证分布式系统中的一致性和可用性,以及如何在实施SOA的过程中控制接口的粒度等。
人们很容易想当然的以为虚拟化技术仅仅应用于服务器。而在现实中,虚拟化这一苏醒的概念正被运用于各个层面,其中包括网络,存储以及应用基础架构。在这篇导论中,InfoQ将深入每个方面,详尽向您描述虚拟化技术的运用以及其优点与不足。
在这篇案例研究中,InfoQ对Adobe AIR和Amazon的简单存储服务(Simple Storage Service ,S3)在NASDAQ市场回放程序(NASDAQ Market Replay)中的应用进行了详细的分析。
没有回复
回复