QCon Beijing 2013 day 3

Posted on Sat 27 April 2013 in it • Tagged with QCon

今天上午听的企业级开发框架整体质量挺高的。

开发多语言持久性应用程序

Sohu邮箱的Python经验,非常好,等ppt。 有时间练练PypiServer,类似maven; Fabric,项目发布,眼下就能用; 还有在C中调用Python的方法,没准儿也能用上 Redhat 应用 JBoss AS7 构建企业云服务平台,非常好的Topic,等ppt出来要好好读。记录一些要点: 云计算的本质是服务外包! JBoss与PaaS平台融合,包括GAE/SAE/AWS。

eBay 打造下一代数据集成平台 我们的业务今年如果发展顺利,运营系统就得参考这个了。

下午是主题演讲。

Oracle 打造未来的Java,介绍了很多JDK 7新特性: 二进制串; switch字符串; 简化泛型等等。

Coud Foundry 分解应用程序以实现可部署性和可扩展性 这个非常好,ppt还没有放出来,google了一下看到去年Chris Richardson就开始讲这个topic了,主要包括4部分内容: 1、 Monolithic Program ...


Continue reading

QCon Beijing 2013 day 2

Posted on Fri 26 April 2013 in it • Tagged with QCon

今天上午听了自动化运维专题,新浪、腾讯、百度、淘宝4场的水准都很高,绝对的物有所值。

新浪CDN自动化运维 http://vdisk.weibo.com/s/z0eoy CDN平台规模:300G带宽,1000+台服务器,覆盖全国7个ISP 40多个IDC 自动化运营经验: 1、基于puppet/Zabbix开源系统的自动化运维系统:提升运维效率,加快故障处理速度; 2、规范主机名:ISP.IDC.City.Group.Role.Product.ip4.domain.com 3、 建立SRE角色(site reliability engineer),保护多数工程师不被打扰 可以顺便参考一下这篇文章:http://wenku.baidu.com/view/6c26cb27bcd126fff7050bab ...


Continue reading

QCon Beijing 2013 first day

Posted on Thu 25 April 2013 in 未分类, it • Tagged with QCon

上午四场够分量,都是很好的内功心法,需要不断自修和磨练,日积月累才能显现效果。

来自Crockford的思维与编程风格:因为人脑分成理性和感性两个系统,programing use both head & gut,所以我们难以做到完美,要用好的风格来减少失误; 后面用JavaScript举例讲了怎样是好的编程风格。 ChatOps at GitHub:Newland向大家炫耀了无所不能的Hubot,可以调用puppet/graph/merge/CI/auto-deploy/log,给出了Building interface arround bad tools的建议。

百度林仕鼎带来了Architecture and Architect,分享了很多精彩观点,例如他对架构的看法、架构是一种组织方式、架构师能力模型、存储/服务/计算架构分析、架构师三板斧等。 架构师能力要求:看到全局-抽象的能力/降低复杂度-分解的能力/把握过程-运用敏捷方法和迭代的能力 能力模型:内力-coding,refactory ...


Continue reading

不能小瞧的Go语言

Posted on Thu 17 May 2012 in 我记 • Tagged with Program Language, QCon

学习了《Go,互联网时代的C语言》的片子。现场没选这个session,是因为看内容介绍,并不是很看好又一个雄心勃勃要取代Java的语言。为什么说又呢,因为去年的qCon上也有一个类似的topic,介绍的是由redhat创建的号称下一代java语言的Ceylon项目。一年过去了,Ceylon今何在?

许式伟真的很看好Go,自己的公司90%的代码都用Go,已经超过10万行了。可介绍号称是互联网时代的C语言满足的功能读起来也让人感觉平平;直到......

看到介绍Go语言的作者们,我震惊了: Ken Thompson,C语言和Unix系统的创建者 Rob Pike,也来自Bell Lab的Unix小组,也开发过其它操作系统,例如分布式的Plan 9,还是UTF-8的作者 Robert Griesemer,制作了Java的Hotspot编译器和Chrome的V8引擎。

看吧,有这些系统大佬在后面,我也对Go语言的前景充满信心了。

主站上列出了作者和贡献者名单,上面提到的三位都只在贡献者名单中。看名单前面的注释,列作者是为了版权原因,而贡献者都是经常贡献代码的。 主站上的作者名单,212人,相当彪悍 贡献者名单,303人 ...


Continue reading

[学习心得]缓存、NoSQL和网格计算——银行能教给我们什么?

Posted on Fri 11 May 2012 in it • Tagged with NoSQL, QCon

演讲者:John Davies,Incept5联合创始人兼CTO、VISA架构师,资深超级极客

John Davies曾在多家世界级金融机构(摩根大亨、法国巴黎银行、Visa的移动支付网站V.me)做首席架构师,作为一个老技术工作者,他在这个主题演讲上分享了很多犀利的技术观点: SQL还是NoSQL的核心问题在于数据是关系型还是结构型的; 分布式计算的首要问题是搞清数据和计算的关系; 企业应用需要扩展性是对于受欢迎的业务来讲内存和CPU永远是不够的; 本地虚拟化、网格和云有什么关系和区别等。

简单的结论背后是他对技术和业务的深刻理解, 一言以蔽之,就是要选择合适的技术。

以下是他的一些直指本源的结论: · SQL might be the wrong language for hierarchical data but it's superb for tables--SQL处理关系型数据(数据表)那是一级棒的语言,但别让它处理结构化的数据 · Question on Page 11 · There are two main ...


Continue reading

qCon Beijing 2012 学习总结

Posted on Sun 22 April 2012 in it • Tagged with Predictably Irrational, QCon

今年的qCon大会安排在工作日:周三到周五,每天日程分为上午3个主题和下午4个并行专题各4个讲座,一共是(3 + 44) 3 = 57个讲座,每人可以当场听(3 + 4)* 3 =21讲。

关于主题演讲

本次的主题演讲者基本上是在国际知名大公司的技术部门摸爬滚打多年的资深工程师或架构师: John Davies是为多家大银行做过首席架构师,他分享的对数据库、缓存、NoSQL等数据处理技术的理解非常深刻; 百度的肖伟的《下一代云平台》据说在之前的某个技术大会上讲过,但对于第一次听的人来说,还是有帮助的,这个PPT对写相关技术文档有很好的参考价值; Joyent公司的工程副总裁Bryan Cantrill分享的Unix哲学和先系统后实现方式的思路对我的启示很大,对以后的资源分配有指导意义; Netflix的高级软件工程师Jason Brown的《利用云技术实现Netflix快速规模化增长》可以作为一个AWS最佳实践来学习; ThoughtWorks的首席咨询师Fabio Pereira的《敏捷软件开发怪诞行为学》对理解驱动人们一起工作并取得相同目标的因素,对一个团队的成功非常有帮助。尤其是今年年初刚看过《怪诞行为学》,对书里的观点非常认同,听起来相互印证,非常过瘾; Mike Lee是一位认同苹果哲学的传奇工程师,由于NASA的Khawaja Shams爽约,第三天上午Mike进行了两场讲座:《如何开发靠谱的应用 ...


Continue reading

QCon BeiJing 2012

Posted on Wed 18 April 2012 in it • Tagged with QCon

今年qcon最大的变化就是把会议时间全放在工作日了。路上感受了人潮汹涌的10号线来到现场发现也是非常火爆,据说本次有1000多人参加。 还有一个变化不太爽,就是没有wifi了,白带iPad了,而且有时候连GPRS信号都没有,qCon应该考虑换个地方举行了,这边的硬件环境太差了。

和去年一样,三天的会议分成上午的主题演讲和下午的4个同步专题演讲,三天一共有12个专题,这篇学习总结是对总共57篇讲座的归纳整理总结。 下面的内容是三天听课的现场感受和后续学习心得的分享链接:

第一天

知名网站架构分析:4399曹政的《分布式数据库及反范式设计》全部来自实践经验,讲得道理举得例子都是来自工作中,非常有参考价值;蘑菇街的双人表演略显稚嫩,倒也都是实践经验; 大数据NoSQL:上午Incept5的CTO John Davies讲得也不错;腾讯的NoSQL实践据说讲得一般,去听的人都有些失望;没去听这个专题,对百度杨栋的《Beyond MapReduce》挺感兴趣,有时间要学习一下ppt;还有John Davies的《构建高效内存NoSQL数据库》和淘宝杨成虎的《Tair存储系统》程序设计:听了黄毅的Haskell和曾冠东的Scala,后者讲得很不错:客观且基本覆盖我感兴趣的内容 ...


Continue reading

QCon第三天见闻

Posted on Sun 10 April 2011 in 我记 • Tagged with QCon, 研发管理

上午三场内容和感受如下

Eric Evans - 《领域驱动设计:解决复杂问题的高效模式》

评价:5星 这个听得很有感觉。举了三个例子:集装箱运输、世界地图和盲人摸象。都很精妙。

  • 什么是模型? model is useful only because it's made for a particular purpose。
  • 两个经常出现的错误如何避免?
  • 模型要够用就好,不必十分精确,满足需求的模型就是好模型;
  • 在信息不全和需求不同时,不要坚持只有一个模型。

这个ppt得好好学习。

Gavin King -《Ceylon项目——下一代Java语言?》

评价:3星 Speaker也是个年轻的牛人。Ceylon是一种由java演化而来,特意为结构化数据而设计的语言。也是跑在JVM上头的。 去年听讲Groovy还有点儿小激动,这次听这个一点儿感觉都没有。感觉语法有些乱!

Evan Weaver-《Twitter中的性能优化原则》

评价:2星 ...


Continue reading

QCon第二天见闻

Posted on Sat 09 April 2011 in 我记 • Tagged with Agile, QCon, Testing

上午三场内容和感受如下

Juergen Hoeller - 2011年的企业级Java和超越:从JavaEE 6到云计算

评价:4星 Speaker是Spring资深的开发者和倡导者。 分享了他对Java领域开发趋势的预测,从JavaEE6的重要特性到Java SE 7,估计会为云计算提供很多新的特性。当然,还有后续的Spring3.1和3.2,也将在两者的基础上,做出更适合开发者的调整。 等ppt出来后再可以细读一下。

吴波 - 百度离线集群整合之道

评价:4星 至少有这么几点直接可以借鉴: 1. 系统的指标维度:硬件要求、OS特性、是否是分布式、使用资源规律、运维要求; 2. BVC架构的计算框架,这个可以先放到知识库里面,等公司有空闲技术资源的时候可以搞一搞; 3. 一个很好的比喻:我们搞架构优化的人,就像在奔驰的汽车里面换轮胎和发动机。

Adrian Crockcroft - 基于云计算架构构建Netflix

评价:3星 作为一个100%使用云计算服务的视频服务网站,介绍了他们对AWS的使用经验,很有参考价值 ...


Continue reading

QCon第一天见闻

Posted on Sat 09 April 2011 in 我记 • Tagged with Architecture, QCon

昨天回家就被感冒病毒和化脓的扁桃体给击倒了。不过经过一晚的充足睡眠和apple的精心照料,今天我又生龙活虎了。

简单回顾一下昨天的会议吧。BTW,ppt已经都提供下载了,会议主办者相当给力。 上午三场的看点如下:

Nicolas Spiegelberg的《支撑Facebook消息处理的HBase存储系统》

评价:4星 每月14TB的消息数据是怎么处理的呢?MySQL怎么迁移到HBase呢? 有兴趣的都去看ppt吧。

David Hussman的《在实践中实现企业的敏捷性》

评价:4星

精妙的比喻比比皆是。在组织内、间、外实施敏捷需要考虑哪些问题。很有借鉴性。

Oracle的《Java EE 7平台:走进云计算》感觉有点儿远,都是神马和浮云啊。

下午分工如下:网址案例-我;敏捷转型-明飞;NoSQL-王晨

潘晓良 - 为速度而生——百姓网如何优化网速

评价:4星 挺质朴的。内容不多,但都是干货。 推荐一下。

杨卫华 - 构建高性能的微博系统——再谈新浪微博架构

评价 ...


Continue reading

QCon BeiJing 2010 PPT

Posted on Tue 11 May 2010 in it • Tagged with Groovy, InfoQ, QCon

InfoQ把2010年QCon的ppt放出来了,可以用如下代码进行抓取:

def url = "http://www.qconbeijing.com/agenda.html"

url.toURL().text.eachLine {line->
    int begin = line.indexOf("href="down")
    int end = line.indexOf("pdf",begin)
    if(end>begin){
        url = "http://www.qconbeijing.com/"+line[begin+6..end+2]
        println "downloading "+url
        ("wget "+url).execute()
    }
}


Continue reading

网络应用系统设计的基本原则

Posted on Fri 07 May 2010 in 我思 • Tagged with Architecture, FreeWheel, QCon

昨天和一个同事闲聊,说起了他近期在做的工作,一个信息聚合系统。在设计开发时没遇到什么问题,但到了真正部署,每次部署都会冒出之前没有想到的问题,使系统不能真正上线。听他讲完,我立刻想起了以前看过的ppt《Hadoop取舍之间──高性能、高流量和多数据中心互联网应用架构设计》中提到的一个重要原则:Design with failure in mind。当时和这个同事一起分享了这个原则和KISS原则。脑子里面又回想了另外几个和架构有关的原则。觉得对当前工作还是挺有意义的,应该和大家一块分享。

这篇ppt的作者信息,来自FreeWheel,这个ppt的原文请自己google吧,网上挺多的。

当时关心这篇文字,是对Hadoop感兴趣,不过这个ppt最后告诉大家,他们觉得Hadoop不适合自己,最后自己搞了一个类似的系统。这部分可以不看了,因为毕竟现在已经有很多公司成功部署了基于自己业务的Hadoop应用,每天好几个TB的数据都处理得很好。但本文前半部分提到的系统架构设计的六个原则,还是留下了很深的印象:

- 系统功能

KISS原则: keep it simple and stupid

从目前来看,最不符合这个原则的地方就是需求了。参加需求评审的时候,经常看到复杂度很高的功能点,比如决定是否给一个用户推送一条消息 ...


Continue reading

QCon第三天见闻

Posted on Sun 25 April 2010 in it • Tagged with Architecture, QCon, SOA

感觉今天两个主题搭配的不错,应该很少有同时关注服务架构和前端开发的人。不过听了淘宝小马的发言,好像也不是那么回事,前端的工程师也是很关心架构的。

下面开始记录今天的流水账,第一个议题是InfoQ团队介绍,米国、罗马尼亚、加拿大和中国的,台上站满了,一共11个左右,挺精干的组成。

Jim Webber《使用 REST构建成功的SOA》 - 四星

第一场是Jim Webber演讲《使用 REST构建成功的SOA》。Jim是个很精悍的小个子,像个海军陆战队员。他的演讲特点就是非常有激情。他讲的重点主题有两个,一个是数据库并不适合扩展性,建议大家都NoSQL吧,然后给出了在安全性、事务性方面的解决方案;第二个是倡导基于HTTP的中间件,人家就是将REST的嘛。很不错。

谢恩伟《微软 Azure云计算平台的应用与发展》 - 三星

第二场是来自微软工具和平台事业部的谢恩伟讲《微软 Azure云计算平台的应用与发展》。老实说我觉得讲得还可以,ppt里面给出了微软的云计算定义、云计算内涵,对微软的战略给出比较清晰的描述。会后给评价,贴了笑脸儿。

萧百龄《性能 ...


Continue reading

QCon第二天见闻

Posted on Sat 24 April 2010 in it • Tagged with Agile, Architecture, QCon, Scrum

今天是QCon的第二天。

Tom Mellor《Agile和Scrum在中国能不能成功》- 三星

开场本来应该是设计模式15年──向设计模式2.0迈进》,因为火山灰的缘故,Erich Gamma不能到场,还真是有点儿遗憾。不过Scrum Alliance总裁Tom Mellor的《Agile和Scrum在中国能不能成功》也挺有意思的。我是头一次听说这位大叔,身份信息参考这篇文 章。汤大叔对Scrum的造诣非常深,在他的演讲中提了3个指导意见:

1. Ask Team,体现了对团队的授权和信任;

2. 持续审视和调整,指出了过程改进中最关键的方法;

3. Delivery Fast,一切软件过程改进的核心目标

Marc Kwiatkowski《Facebook 的扩展Memcached实战》- 三星

第二场是Marc Kwiatkowski的《Facebook 的扩展Memcached实战》。整场讲座投影仪黑掉了n次,这位仁兄涵养真好,每次出问题都自我检讨说I"m ...


Continue reading

QCon第一天见闻

Posted on Fri 23 April 2010 in it • Tagged with Architecture, Program Language, QCon

今天是非常充实的一天:早上7点起床,8点出发,9点进场,上午2场下午4场主题演讲听得非常过瘾,到家后头脑还非常兴奋,开始准备整理一下思维,记录一下今天听讲的感想。

一开场,主持人就告诉大家一个消息,Erich Gamma因为冰岛的火山灰原因,无法出席本次QCon了,他自己深表歉意,并承诺,下次他来北京演讲,本次参加的人都可以去免费听,作为补偿。

Michael Nygard - 《失败来临的征兆》-四星

这是第一个演讲,当时坐得有点儿远看不清楚ppt,听得有些云山雾罩。这里有人做了笔记,回来仔细看了看,觉得很不错。

首先给了两个假设: 1. 用户关注功能而不是你使用什么软件硬件; 2. 失败和错误总会发生。然后引出了工程化失败模型。

工程化失败模式(Engineering Failure Modes)

  1. 容忍:将震荡吸收,而不是传递它
  2. 服务能力:功能缩水而不是整个损坏
  3. 恢复能力:允许组件重启,而不是让整个世界“重新启动”
  4. 弹性:能够从瞬时性 ...


Continue reading