- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
阿⾥开源经验分享
阿⾥云
朱照远(叔度)
2015-03-28
⾃我介绍
• 真名朱照远,花名叔度(sudo)
• 2009年加⼊淘宝,现负责阿⾥云-核⼼系统-Web平台
• 技术⽅向为Web架构优化,CDN ,云计算
• 开源爱好者,Tengine项⺫发起⼈
• 阿⾥巴巴开源委员会成员,⻅证了阿⾥巴巴开源过程
个⼈开源的经验
开源对于⼯程师的意义
• 东⻄做好了,回报⾃然会来
• 通过开源,可以得到很多开发⼈员和⾼⼿的帮助,不
断提⾼⾃⼰的能⼒
• 通过开源,可以得到更多的⽤户
• 通过开源,可以让⾃⼰的代码有更⻓的⽣命周期
• ⽤户的⽤法,会超出⼯程师的想象
如何参与别⼈开源项⺫
• 从⼩事做起,写⽂档做翻译都是做贡献
• 遇到问题提bug report ,有能⼒就提patch
• 主动贡献,从⼩到⼤,逐步获得信任
• 不被接受也不要⽓馁
⾃⼰做开源项⺫
• 需要很好的解决某⼀个问题
• 如Memcached和Redis各⾃诞⽣并流⾏的原因
• 项⺫要容易上⼿
• Quickstart⽂档
• 简单的步骤可编译运⾏,减少外部依赖
• 代码、架构良好,容易扩展
• ⽂档⻬全
开源社区的运营
• 制定规则(社区的“宪法”)
• 如何提patch
• code review
• 打造⾦字塔型的社区
• ⽤户/开发者/核⼼
• 宣传
• ⽤户的⼝碑是最核⼼和最重要的传播⼿段
• ⽂章、会议介绍
贵在坚持
• 开放了源代码只是开源的第⼀步
• 持续更新,包括修正问题,增加功能等
• 保持较快的发布节奏(更新次数)
案例:Tengine开源
Tengine简介
• 阿⾥巴巴基于Nginx开发的开源Web服务器
• 针对⼤访问量⺴站的需求,添加了很多⾼级功能和特
性
• 从2011年12⽉开始开源
• 据W3Techs统计,全球⽤户量排名第9 ,使⽤量0.2%
Tengine的⼀些特性
• 动态模块加载(DSO)⽀持
• ⽀持SO_REUSEPORT选项,建连性能提升为官⽅Nginx的三倍
• ⽀持SPDY v3协议,⾃动检测同⼀端⼝的SPDY请求和HTTP请求
• 流式上传到HTTP后端服务器或FastCGI服务器,⼤量减少机器的I/O压⼒
• 更加强⼤的负载均衡能⼒,包括⼀致性hash模块、会话保持模块,主动健康检查
• 动态脚本语⾔Lua⽀持,增加灵活性
• 输⼊过滤器(input body filter)机制⽀持
• ⽀持管道(pipe)和syslog (本地和远端)形式的⽇志以及⽇志抽样
• 组合多个CSS、JavaScript⽂件的访问请求变成⼀个请求
• ⾃动去除空⽩字符和注释从⽽减⼩⻚⾯的体积
• 监控系统的负载和资源占⽤从⽽对系统进⾏保护
• 更强⼤的防攻击(访问速度限制)模块
Tengine的外部⽤户
• Internet Archive
• 腾讯
• ⼟⾖
• 京东
• PPTV
• 国美
• 凤凰⺴
• 太平洋电脑⺴
• 开源中国
•
…
Tengine社区
• ⺴站
• (中英⽂)
• 邮件列表
• /mailman/listinfo/tengine-cn
• GitHub上开发
• /alibaba/tengine
• star数⺫2364 ,fork数⺫719
• 社区通过pull request⽅式驱动,做代码review
Tengine的开发和发布
• 开源后发布21个版本
• ⼏乎每周都有代码提交
• 核⼼开发者8⼈
• 国内外代码贡献者共37⼈
• 中国、美国、荷兰、匈⽛利、葡萄⽛
企业开源的经验
开源前
原创力文档


文档评论(0)