领导力大挑战
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
该内容已经被标记书签!
标记书签错误,请重试!
作者 贾国清 发布于 2011年6月2日
在5月28日百度主办,InfoQ策划组织实施的第14期百度技术沙龙活动上,来自百度的运维部技术委员会主席付晔以及腾讯产品运维副总监赵建春分别分享了各自公司运维实践的相关话题,包括自动化运维平台以及速度与成本共赢的运维实践等。本文针对他们各自的分享做简单回顾,同时提供相应的资料下载。
主题一:自动化运维平台让万台服务器共舞(视频,MP3和Slides等资料下载)
在百度运维部技术委员会主席伏晔的演讲中,先是从运维面临的挑战说起,在企业运维工作中,核心的目标是保证服务持续稳定的高效运行,目前主要面临的挑战有:
紧接着在自动化运维技术的部分,伏晔分享了百度现有的运维技术框架。从架构图中不难看出,运维机制建立在运维标准之上,同时,监控管理、安全控制和灾难管理贯穿于整个运维活动的始末。此外,在分布式集群和传统集群的支持下,通过上层的容量管理、关联关系、任务管理和自动部署等这四大核心组件有力地保证了自动化运维的实施。
最后,伏晔讲解了自动化监控的技术框架和手段,这也是本主题的重点。他先由监控技术框架说起,然后结合具体的异常捕获实例,进一步介绍了百度是如何进行有效地监控、如何进行智能分析以及故障自动处理的相关原理和实践。其中,以“百度知道”产品为例,详细介绍了语义级别的监控原理和方法。伏晔提出了关于如何把运维工作做到以守为攻:
一个服务能够被用户所使用,是多个层级共同协作的结果。任何层级出现问题都会导致服务质量下降,甚至不可用。要在用户感知到服务质量下降前发现问题、定位问题、解决问题。其实是源于多视角及多类型的监控方法。
所谓多视角是要从用户和系统两个层面对服务进行监控。包括用户层面是通过模拟用户行为对服务的访问速度、流量变化、页面内容等进行监控。优点:可以定位对用户的影响,缺点:不知道哪个部分导致的。
系统层面则是使用丰富、多样的监控方法,覆盖每个层级的各个部分。对其运行状态进行全面监控。优点:可以定位哪个地方出现了问题,但不知道对用户的影响是什么。
两种视角相辅相成,结合使用可以快速的了解影响,定位问题。
自动化监控中另外一个重点是如何实施智能分析,智能分析主要包含两部分的内容:异常根源分析及如何进行波动性预警。比如在三个异常报警周期内,异常次数达到用户设定报警阀值的两倍这种机制。对于日常的运维来说,智能分析之后,紧接着要做的事情就是如何去处理异常。在伏晔的分享中,他提出故障自动处理过程中使用的三个有效手段,分别为:
这些手段都是在日常维护中需要频繁面临的问题,在分享中伏晔介绍了他的经验以及通过具体的性能监测图表,来帮助大家理解百度的运维方法。
主题二:速度与成本共赢的运维之道(视频,MP3和Slides等资料下载)
这一部分的分享嘉宾是来自腾讯互联网运营平台部的赵建春,他的分享主要包含三个部分:关于运维工作的思考、成本与速度的案例以及如何固化速度与成本收益。
赵建春以一个问题作为开场白:究竟应用运维指的是什么?在经过“思考者”与“速度与激情”的启发下,他最终回答了这个问题:应用运维就是在公司与用户之间,不断地去均衡速度、质量、成本、效率这几者之间的关系。
接下来赵建春提出“长度”和“宽度”都是成本,此外还通过具体的数据说明了请求数、流量以及速度三者之间的关系。在介绍完毕相关的概念之后,他提到了腾讯内部的几个案例,包括音乐miniportal产品、QQ空间中的信息中心、日志贴图,以及如何通过给图片“减肥”来提升用户体验的问题。
最后的部分是如何固化速度与成本收益,这也是运维人员都非常关注的话题。赵建春提出了非常关键的几个问题:
此外,赵建春还针对数据监控体系做了介绍,并分享了监控机制的原理:自动抓包、获取日志、统计入库、展现。此外,还提出了一些问题与新的尝试,比如图片控制体系,长Cache工具以及度量考核体系等,并针对工作机制与优化方法进行了讲解。
Open Space(开放式讨论环节)
和以往的环节一样,为了让参会者能够有更多的时间进行相互的交流,本次活动依然设置了Open Space(开放式讨论)环节。除了讲师付晔、赵建春外,开源领域的专家、现在奇艺网负责运维的黄冬也参与了小组讨论。在Open Space的总结环节,几位嘉宾也分享了每个小组讨论的话题:
伏晔:现在是一个分布式和虚拟化的时代,服务器的规模很大,相对来说,对于服务器硬件的质量要求会不是很高。比如一万台的服务器规模,如果突然坏了100台,不去处理会怎样或是每周集中处理又会怎样?其实对服务是没有影响的。此外他还与小组成员深入探讨了运维模式如何去适应未来的分布式和虚拟化技术等问题。
赵建春:针对自动化运维平台进行了讨论,涉及监控、调度、容错容灾等方面。结论是,服务要尽可能模块化,集群化,一致化,同时在一组服务中的某台服务器遇到问题时,要能做到主动探测并且将故障服务器自动卸载,然后自动上线健康的机器,从而达到免维的目标。
黄冬:介绍了峰值的计算方法:峰值有三种,5分钟采样点的5分钟均值的峰值、5分钟采样点的1小时均值、5分钟采样点的2小时均值。视频服务质量的分析方法:在Server端Apache的Access Log中,利用Bodysize和Bodysend的时间,再利用视频的满流的比较,即可判断出用户播放视频时是否是流畅的了。如何利用调度系统去自动化的做调度、以及通过简单的运营商结构分析来实现将用户跳转至正常的网络服务器上访问。以及如何分析出不同个省份不同机房各自带宽的简单算法。
会后新浪微博ID为@seadragonnj 的参会者分享了他的感受:
百度的演讲总结:1、最大化的自动化运维,自我修复和自动切换;2、监控是运维的根本所在;3、运维是一个系统工程,包括网络、DNS、端口、程序等;4、感觉互联网行业的运维比开发的责任更大;6、在项目开发的时候就把运维考虑进去;7、报警。
腾讯的演讲总结:1、运维的速度和成本是相辅相成的;2、固化运维的速度和成本的理念;3、通过在页面中加入时间方法,来统计各地加载页面所需要的时间;4、分析access.log文件;5、图片压缩;6、减少http的请求数。
有关百度技术沙龙的更多信息,可以通过新浪微博关注@百度技术沙龙,或者加入百度技术沙龙微群,InfoQ上也总结了过往14期所有百度技术沙龙的演讲视频和资料等,感兴趣的读者可以直接浏览阅读。
贾国清 是InfoQ中文站高级策划编辑,热爱生活,喜欢旅游和体育运动。
在实施Scrum项目的过程中,Scrum Master的角色是相当关键的,因为他是团队的推动者。本文围绕什么是仆人式领导、仆人式领导的起源、如何将领导力传达给团队、Scrum Master作为仆人式领导者的角色展开叙述,同时重点阐述仆人式领导者应有的基本内外特征。
论道WP第三篇专栏,以应用程序栏的使用为中心,包括了软键盘带来的问题、应用程序栏介绍、如何绑定应用程序栏的属性等几个方面的具体话题,为开发者顺利使用应用程序栏开发提供了具体指导。
在多线程并发编程中Synchronized一直是元老级角色,很多人都会称呼它为重量级锁,但是随着Java SE1.6对Synchronized进行了各种优化之后,有些情况下它并不那么重了,本文详细介绍了Java SE1.6中对于锁的性能优化,以及锁的存储结构及升级过程。
本次分享将首先介绍现代富文本编辑器的组成和实现,然后结合UEditor的开发过程,与参会者分享UEditor在设计和实现的过程中,所涉及到的核心功能的细节实现。
本次演讲视频录制于百度技术沙龙。
我们所开发的应用程序大多都需要提供一个图形用户界面(GUI)。关于GUI应用的架构设计,已经有了Form & Control、MVC,、MVP、 Passive View等多种模式。模式可以帮助我们建立优雅的架构,但前提是弄清楚模式的应用场景。弄清楚GUI应用面临的设计上的问题,有助于我们正确的挑选设计方案。
MongoDB是一种非常易用的NoSQL方案,Brian C. Dilley在这篇文章里介绍了MongoDB的优劣势,并介绍了MJORM项目。MJORM用于MongoDB,是一个没有注解的Java ORM库。
随着网络基础设施的逐步成熟,从RPC进化到Web Service,并在业界开始普遍推行SOA,再到后来的RESTful平台以及云计算中的PaaS与SaaS概念的推广,分布式架构在企业应用中开始呈现出不同的风貌,然而殊途同归,这些分布式架构的目标仍然是希望回到建造巴别塔的时代,系统之间的交流不再为不同语言与平台的隔阂而产生障碍。
1 条回复
关注此讨论 回复