如何做一个快速运转的大规模网络开发公司

标签: 网络开发 公司 | 发表时间:2014-12-11 11:12 | 作者:
出处:http://2014.54chen.com/

以下内容由 [五四陈科学院]提供

受《精益创业》 http://www.duokan.com/book/35802 这本书影响甚多,然而在思考和实施的过程中,却又遇到各种各样的问题。

不仅仅是一些令人苦恼的“人的问题”,还有一些,是无从下手、或者不知道未来是怎样的疑惑。

以下,列出一些“看得见的未来”,因为是一些系统已经在线上服务过亿的用户,如果你在思考相同的问题,也许会有一些用处。

一.流程与制度

1.代码质量

  • 没有经过适量单元测试的代码,不能发起code review。
  • codereview:每行code都经过超过两双眼睛阅读。
  • 没有经过code review的代码不能进入代码库。
  • 没有经过完整bvt测试的代码,不能merge到线上分支。
  • 没有完成上述流程的代码,不应该被用户访问到。

2.故障报告

  • 实际上最有效的制度是postmortem制度,但往往在国内被称为“故障报告”。
  • 如果在你的公司里,《故障报告》与工资是挂钩的,恭喜你,制度用错了。
  • 故障报告的本意,是让发生的故障告诉所有的人,让所有的工程师都学到,这次故障的起因是什么、如何避免。
  • 故障报告绝对不是用来惩罚和警告你犯错了。
  • 不情愿的故障报告,宣告了这个制度在你司实施的失败。
  • 经常性的重复的故障报告,一定是制度没有彻底实施或者招聘人员眼神错了(眼神错的几率小之又小)。

总结

  • 做一个让所有工程师(包括开发测试运维)勇于出来告诉大家我哪里错了的制度。
  • 不断去总结和完善故障中的处理办法。

二.工程

  • 从工程上,不断去提炼与归并,抽象出高度集成化的系统和服务。

1.storage

  • 越早的引入key-value的稳定高效存储,可以事半功倍,但一定要稳定高效(高性能、高可用性)。
  • 类似key-value的业务写法,应该深入人心。
  • 可以选择的开源的有一些类dynamo系统,使用会较复杂,也许直接使用mysql的table更加有效。

2.paas

  • 越早的引入paas平台,也可以事半功倍,但一定要是靠谱的平台。(市面上大量的开源平台,需要有一支团队研究它)
  • paas平台的目的,是统一了dev与op的接口层。
  • paas还可以为你的硬件和网络资源做出更准确的预估。

3.监控与报警

  • 越早的建立此平台,越能提升团队对线上问题的警觉性。
  • 标准的监控与报警平台,有助于更加方便地了解整个环境的情况。
  • 报警一定要命中要害,减少误报,更牛的要做到预报。

4.dbproxy layer

  • 此层需要有高手存在,会各种开发的dba。
  • 目标是做好隔离、做好分区、做好自动化扩容。
  • 这层建立好了,以后服务可用性大大提升。

5.异步事件服务

  • 此服务在人手多时可考虑。
  • 写多线程程序不是容易的事情,把可异步处理的业务,在逻辑中交给一个专门的服务处理。
  • 在这之前,需要统一rpc相关框架。

6.配置中心

  • 典型的开源产品zookeeper。
  • 服务的发现与故障自动摘除。
  • 最好对zookeeper进行一层权限包装,避免实习生干坏事。

7.服务框架

  • 典型的开源产品thrift。
  • 内网的rpc框架,是让你服务与服务之间保持良好架构的必须品。
  • 框架一定要快,一定要有各种可测量的指标。但是thrift是没有的,需要自己加。

8.web框架

  • 典型的开源产品rose spring play。
  • 用于统一大家的代码结构,能够换岗维护。

9.代码规范

  • 不用讲了,就是为了美观。

10.文档规范

  • 不用讲了,就是为了可维护。
  • 闲时多写,忙时少写。
  • 但不能不写。

想快点找到作者也可以到Twitter上留言: @54chen
或者你懒得带梯子上墙,请到新浪微博: @54chen

相关 [网络开发 公司] 推荐:

如何做一个快速运转的大规模网络开发公司

- - 五四陈科学院
以下内容由 [五四陈科学院]提供. 受《精益创业》 http://www.duokan.com/book/35802 这本书影响甚多,然而在思考和实施的过程中,却又遇到各种各样的问题. 不仅仅是一些令人苦恼的“人的问题”,还有一些,是无从下手、或者不知道未来是怎样的疑惑. 以下,列出一些“看得见的未来”,因为是一些系统已经在线上服务过亿的用户,如果你在思考相同的问题,也许会有一些用处.

打造Ubuntu为网络开发利器

- 董 - 笨兔兔
原作者是一位有着3年Ubuntu 网络开发平台的同学. 他将自己的配置公布开来,给大家参考. 让Ubuntu成为你网络开发的利器. 原文简洁、流畅,实在不忍心将那种意境破坏啊. 干净利索、麻麻利利、思路清晰、一气呵成,实为优秀文档之典范. I’m using Ubuntu for 3 years already as my working desktop station for web development and want to share my own list of software each web developer should have.

有家公司……

- jingzhuang - 李承鹏
我有一个哥们欣喜地问:本人自30以来长期为阳痿所困,用圣元能持续晨勃吗. 回复:抱歉,本产品只对3岁以下男孩有疗效……还有一个网友问:我女朋友20了,胸很平......>>点击查看新浪博客原文.

阿森纳,好公司?坏公司?

- Shearer - 南都周刊
多年来,温格执掌的“兵工厂”阿森纳一直走着技术足球之路,在世界各地拥有大批拥趸. 2011年8月28日的那个夜晚,曼联主场老特拉福德,当阿什利·扬在伤停补时阶段接到吉格斯的左路回传,射门命中球门右上角之后,终于给这场8:2的屠杀式的球赛画上了句号. 这场比赛让很多红魔老球迷想起1995年3月的那场标志性战役,在这场保持着英超历史上最大比分胜利纪录(9:0)的球赛中,安迪·科尔一人狂敛5球.

Docker 公司已死 !

- -
作者简介:Chris Short在IT行业有20多年的从业经历,他毕生坚定地提倡使用开源解决方案. 他是身体部分残障的美国空军退伍老兵,现与妻子和儿子一起住在密歇根州大底特律都市区. 要说Docker在2017年的日子非常难过,那已经算是轻描淡写了. 除了优步(Uber)外,我实在想不出还有哪一家更加被利用、被炒作、资金充裕的硅谷初创公司(仍在运营之中)像Docker在2017年那样步履维艰、糟糕透顶.

Bose将公司捐给MIT

- rIPPER - Solidot
慈善家通常是给自己喜爱的学校捐钱,但Bose公司的创始人Amar Bose决定将公司赠送给MIT. MIT本周五宣布,81岁的Bose公司创始人向该校捐赠了公司绝大部分股票. 捐赠的股票形式是“无投票权股份”,MIT无权出售Bose公司,也无法参与管理,但将能收到年度现金分红. 公司仍然由Amar Bose控制.

[转载]冲浪型公司

- 杨振华 - 投资王子的BLOG
原文地址:冲浪型公司作者:少侠巴菲特. 最初看到“冲浪型”公司是在芒格的演讲中,他是这样描述的:“当新的行业出现时,先行者会获得巨大的优势. 你会遇到一种我称之为“冲浪”的模型——当冲浪者顺利冲上浪尖,并停留在那里,他能够冲很长很长一段时间,无论是微软、英特尔、NCR或者其它公司,都是如此. 但如果没冲上去,就会被海浪吞没.

好公司与好股票

- 猪不鸣 - 扬韬
如果说技术分析只是小散户的心灵安慰剂,那基本分析会不会是赚钱利器呢. 很遗憾,按照经典的有效市场理论,任何人都不可能通过基本分析获得超额收益. 自然会有人反驳说,巴菲特似乎就是通过基本分析来研判公司价值,并坚持长线投资而获得了远远超出一般人的利润. 这是大家理解的差异,不算狡辩的解释是:他获得的超出常人的那部分收益,源于他付出的超出常人的努力.

个人开公司流程

- - CSDN博客推荐文章
一、选择公司的形式:¬. 普通的有限责任公司,最低注册资金3万元,需要2个(或以上)股东,从06年1月起新的公司法规定,允许1个股东注册有限责任公司,这种特殊的有限责任公司又称“一人有限公司”(但公司名称中不会有“一人”字样,执照上会注明“自然人独资”),最低注册资金10万元. 如果你和朋友、家人合伙投资创业,可选择普通的有限公司,最低注册资金3万元;如果只有你一个人作为股东,则选择一人有限公司,最低注册资金10万元.

大数据公司Amazon

- - 36氪 | 关注互联网创业
说到 Amazon,它通常给人的印象是一家典型的电商公司——创办于1995年,靠在线书籍销售业务起家,发展至今也已颇具规模. 近日,TechCrunch作者Alex Williams撰文称,Amazon其实并非一家贸易公司,而是一家大数据公司. 联想到Amazon CEO Jeff Bezos曾说过的一句话:“企业家应该愿意在很长一段时间内承受误解的目光.