我关注的一周技术动态 2015.09.20

分布式系统实践

1. Google编程学院:分布式系统设计简介

http://article.yeeyan.org/view/150661/107052

要点: 这是google code university(可惜已经不维护了)介绍的分布式系统设计的基本原则, 这是中文翻译版. 文章中指出, 分布式编程和单机编程最大的区别在于对故障的处理. 分布式系统中增加了3种故障类型, 分别是成功, 失败和不确定. 不确定是最难处理的情况, 正确的处理了这3种情况, 也就意味着你对分布式系统编程的理解程度.

2. 基于Go实现的分布式MQ

http://mp.weixin.qq.com/s?__biz=MjM5OTcxMzE0MQ==&mid=207242945&idx=1&sn=602190b440d167d9c3b9c11609220b8c&scene=1&srcid=0914dpqL7j4Elhx8QMVwNfUr&key=dffc561732c22651402b277ab70141e60f5cfff06a878a24c3568c20c44ebcbe67dd839f27bd58fb8617e44d7cb19c37&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=OOSneO%2FvM%2BIQNy3WT763BwDz7SztgBHqQb06BiCnZxRSVf1tOjNNdmbcF14Sl7hw

要点: 业界有很多种MQ的开源实现, 本文介绍了一个基于GO语言实现的分布式MQ的架构和设计, 并且通过2PC支持了事务消息, 大家可以从中体会一下MQ的设计方法. 另外, 大家还可以参考这篇介绍kafka架构的文章(http://mp.weixin.qq.com/s?__biz=MzAwNjMxNjQzNA==&mid=208955024&idx=1&sn=21b80c24929766676c6eecc39701acfd&scene=0&key=dffc561732c226513fdf153e0fe20c31e730dd645879dd89d8d4dd04b7ff3580c89c5ed445549e848aaba7e40be7b9ae&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=lNUWV5PLgmKNc55rHWbC36MeVoueFn2rp6OO6t1HbgY0nws%2BlYoBeNl2CeSiFcsp), 和kafka的架构对比一下.

服务化和资源管理技术

1. docker周报45期

http://weekly.dockone.io/issue/45#rd?sukey=b0cb5c5b9e50130340ea61270f0d0ef20444b3f9020e54d72841a332933e26ce478256c6f56553108b22939441b16a74

要点: docker一周动态汇总.

2. google software stack

http://malteschwarzkopf.de/research/assets/google-stack.pdf

要点: 本文整理了出自google 论文或者访谈中的google的基础架构, 清晰了勾勒出了整个google的基础软件架构, 并且都提供了相关的文章出处, 造福人类!

3. 服务发现:Zookeeper vs etcd vs Consul

http://dockone.io/article/667

要点: 服务发现系统很多同学都不陌生了, 公司的bns, beehive的namingService都属于服务发现系统. 但是成熟的服务发现系统很少, 基础的key/value存储系统却比较多, 比如zookeeper, etcd等, 我觉得一个重要的原因就是服务发现系统往往需要根据业务特点自己定制, 不过基于成熟的key/value存储系统构建起来也不复杂. 本文介绍了几种适用于docker的比较成熟的服务发现系统, 或者相关工具的组合构建服务发现系统.

4. Mesos在Qunar的应用

http://dockone.io/article/675#rd?sukey=a805c0b270074a06de8eb269c92901c9d2fe273c2776d65e06e46a3f156d5b80a231c7a93893c30d55e2b6551096e369

要点: 本文比较详细的介绍了qunar在使用mesos过程中构建的软件栈, 以及每个层次的基本功能. 从文中可以看出来, 使用mesos+docker+ELK是可以比较快速的搭建出相对完善的业务运行平台的, 对于中小规模的业务是比较好的选择.

5. Kubernetes性能测试和发展计划

https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=208206438&idx=1&sn=1914df673d9d6d878a64676af93ef53a&scene=1&srcid=0918RCVW8C42gqgVz53j5nSF&key=dffc561732c2265160c2011a1eaa039c202e65755f3bc0bfd4d828604811213652bffa6cf60e4382cb39e9dbbddb6937&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=NgbLW%2BmUMT9uw0gF8p093xTBhQ6N1bZHfyLVxyjBtXiyEujC9vm3JXGJUdzTr6Gn

要点: Kubernetes在v1.0版本支持最多100个节点的集群,但是我们的目标是在2015年末将这个数字番10倍。这篇博文将会介绍我们现在的状态以及我们计划如何达到下一阶段的目标性能。

6. 运行Mesos

https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=208224007&idx=1&sn=fe93f93e7413fe00995dc714622f0fb9&scene=1&srcid=09198Jkz4Ho4Pf5T4SjziM2F&key=dffc561732c226514aa47dcccae18640bcfe345087544b42421ff2fb8c56a4bd06d9f05860753c0d38614378134a8fa1&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=VWw5L3fXKRxnYGILAFOTg%2B5jK7t%2FJb5MZ3fNO4RAu2kqv%2FWZS4bYH3n6XCZyy9NX

要点: 本文是<<Mesos:大数据资源调度与大规模容器运行最佳实践》第一章, 介绍了mesos的基本常识以及在本地搭建mesos集群的方法, 可以用于简单实验.

服务调度和 Trace 技术

1.  ELK stack at weibo.com

http://www.slideshare.net/chenryn/elk-stack-at-weibocom

要点: 早就听说新浪微博使用ELK进行日志收集和分析了, 这篇slide介绍了新浪微博团队使用ELK过程中越到的各种问题以及解决方法, 同时介绍了把logstash替换成rsyslog的优点. 除了ELK本身之外, 从这篇slide中还可以看到, 开源软件也不是免费的, 也有可能出现各种问题, 如果打算在生产环境中使用开源软件, 就意味着你需要有维护开源软件的能力.

2. 最棒的60个DevOps开源工具

http://openskill.cn/article/106?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

要点: 涵盖了持续集成, 持续部署, PAAS平台, 监控和日志分析等多个领域, 非常全面.

3. Apache Kafka:下一代分布式消息系统

http://mp.weixin.qq.com/s?__biz=MzAwNjMxNjQzNA==&mid=208955024&idx=1&sn=21b80c24929766676c6eecc39701acfd&scene=0&key=dffc561732c226513fdf153e0fe20c31e730dd645879dd89d8d4dd04b7ff3580c89c5ed445549e848aaba7e40be7b9ae&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=lNUWV5PLgmKNc55rHWbC36MeVoueFn2rp6OO6t1HbgY0nws%2BlYoBeNl2CeSiFcsp

要点: Kafka可能有些同学并不模式, kafka是linkdin开源的高可用分布式消息系统, 本文介绍了kafka的基本架构和原理, 帮助大家深入理解kafka. 有兴趣的同学可以和公司的bigpipe对比一下.

4. 一份快速实用的 tcpdump 命令参考手册

http://mp.weixin.qq.com/s?__biz=MjM5MzA0OTkwMA==&mid=212054109&idx=1&sn=aaccfceb2596d6875e9284901bf5d81e&scene=1&srcid=0919GfLzmAHRtiRD6eUtWYMr&key=dffc561732c22651f71a2c6a018df4395809e5dd6c4f0fc6d26b4e005920c9663efc4abc54d218bbdef079c7b0febf4e&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=VWw5L3fXKRxnYGILAFOTg%2B5jK7t%2FJb5MZ3fNO4RAu2kqv%2FWZS4bYH3n6XCZyy9NX

要点: 分析网络的各种稳定性问题恐怕离不开tcpdump, 这篇文章通过例子介绍了tcpdump的常用命令.

DevOps 技术

1. 需纠正的几种错误运维认知

https://mp.weixin.qq.com/s?__biz=MzA4NjAzMjEyOA==&mid=208160947&idx=1&sn=64252a304a98122712f7fce335472462&scene=1&srcid=0915C8PXMgtsa0ddEl3TRBoJ&key=dffc561732c226519f1e7cffe5a7173ba91f96cf20beb8f70cdff08424c9c2e49ab09d95985f2f1d8b5763148c751952&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=OOSneO%2FvM%2BIQNy3WT763BwDz7SztgBHqQb06BiCnZxRSVf1tOjNNdmbcF14Sl7hw

要点: 很多人认为运维是OP需要干的事情, 其实不然, 一个系统的可运维性的好坏, 取决于研发, 测试, 运维一系列的合作. 这篇文章总结了对运维的几种错误认识, 我觉得都很有道理.

2. DevOps 能力模型、演进及案例剖析

http://mp.weixin.qq.com/s?__biz=MzA4Nzg5Nzc5OA==&mid=207421614&idx=1&sn=c15e89b71b89454eb88159425b0c21e6&scene=1&srcid=0915XmZBmBWTsTTwKrl5crbr&key=dffc561732c22651e2d390139e8a4ed8f1cfdf5531a142f9d2c27dbab3663fa674d2e3e9809d272abb7c21b00c968923&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=OOSneO%2FvM%2BIQNy3WT763BwDz7SztgBHqQb06BiCnZxRSVf1tOjNNdmbcF14Sl7hw

要点:  本文通过几个案例, 介绍了作者理解的devops能力模型, 作者强调devops一定是ops和dev的结合, 要从两种角色的角度考虑问题.

3. Google DevOps 能力模型(下)

http://mp.weixin.qq.com/s?__biz=MzA4Nzg5Nzc5OA==&mid=207659148&idx=1&sn=ee253db5aa195f213b7210f8338a4f75&scene=1&srcid=0918oyrVPSpiUpvlc8ssqS3B&key=dffc561732c226512e616da6393da3fdce963cc11fcf0ddcbec88e976a2d6228e56877f5f0b0d855fefb500fa18ceaec&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=NgbLW%2BmUMT9uw0gF8p093xTBhQ6N1bZHfyLVxyjBtXiyEujC9vm3JXGJUdzTr6Gn

要点: 本文由 Gene Kim 根据对 Randy Shoup 的采访整理,深入讨论和讲解谷歌 DevOps 的提升之道. "每个人都写很棒的测试;我们不想成为一个写蹩脚测试的团队", 这句话我非常认同, 并且逐步在团队中鼓励RD写出更完善的单元测试, 测试从来都不是只有QA才需要做的工作.

工具集合

1. gdb dashboard

https://github.com/cyrus-and/gdb-dashboard

要点: 让gdb也像IDE一样拥有丰富的调试窗口.

2. 高效 MacBook 工作环境配置

http://mp.weixin.qq.com/s?__biz=MjM5NzMyMjAwMA==&mid=208231200&idx=1&sn=8a76ddc56c1fe8e627fddf67c3a1b338&scene=1&srcid=0920lzISV8EmrHMNPUrPPgN3&key=dffc561732c22651b431446917a1d3e2ff28762b8c403e2155fd75f29151756e0fb3c6c4df544868915b439612092874&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.10.5+build(14F27)&version=11020201&pass_ticket=6MoPE70BWICBDkjC3vV75X%2F3lAHL06SCp9I%2FE%2Be9UjVUawyzR4xKPeNFkCTcnzY3

要点: 之前分享过几篇关于配置mac工作环境的文章, 这是一篇合集, 方便阅读.

时间: 2024-10-19 12:16:34

我关注的一周技术动态 2015.09.20的相关文章

我关注的一周技术动态 2015.09.27

分布式系统实践 1. 走向分布式 http://dcaoyuan.github.io/papers/pdfs/Scalability.pdf 要点: 这是台湾的一个作者写的为期30天的分布式系统设计学习小册子, 刚开始涵盖了分布式系统设计的基本理论, 包括partiton, replication和CAP理论, 后面以kafka和zookeeper为例, 将上述理论加以实例化介绍, 内容非常精简, 适合初学者阅读和学习. 2. 如何编写一个分布式数据库 http://mp.weixin.qq.c

我关注的一周技术动态 2015.09.13

服务化和资源管理技术 1. 「Allen 谈 Docker 系列」之 Docker 镜像内有啥,存哪? http://mp.weixin.qq.com/s?__biz=MzA5NTUxNzE4MQ==&mid=220597399&idx=1&sn=3196ab17d396df2379db61bc1f4e8652&scene=1&srcid=r3aAMluxx25ucjdz8AEA&key=dffc561732c226518710e3db4f30f5904c4

我关注的一周技术动态 2015.09.06

服务化和资源管理技术 1. Docker容器月刊(2015年8月) http://www.duokan.com/book/95298#rd 要点: 8月份docker 容器技术文章合集. 2. 苹果.彭博.Netflix的Mesos使用经验分享 https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=207917628&idx=1&sn=36548b857da893fdd8b326803d8d6eff&scene=1&am

我关注的一周技术动态 2015.11.01

分布式系统实践 1. Hadoop新型数据库Kudu应用经验分享 https://mp.weixin.qq.com/s?__biz=MjM5NzAyNTE0Ng==&mid=400119136&idx=1&sn=dd0663537c799d44553ce57a26c2348b&scene=1&srcid=1026Pny5k9xDNGm2yEKPi5yd&key=b410d3164f5f798efd7fe6a9ab4cf9f52a5aef7b6b4f09d11

我关注的一周技术动态 2015.10.25

分布式系统实践 1. ScyllaDB:用 C++ 重写后的 Cassandra ,性能提高了十倍 http://blog.jobbole.com/93027/?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 要点: 一直非常不喜欢hadoop系列对JVM的重度依赖, 可能是我不熟悉java的原因吧, 总感觉JVM背着我们做了很多不可见的工作, 心里不踏实. ScyllaDB宣称比Cassandra性能提高十倍, 肯定

我关注的一周技术动态 2015.10.04

分布式系统实践 1. Distributed Systems(电子书) http://www.printfriendly.com/print/v2?url=http://book.mixu.net/distsys/ebook.html# 要点: 免费的介绍分布式系统理论的电子书, 这本书的难度非常适合初学者, 涵盖了分布式系统的方方面面, 但是又没有深入细节而无法理解, 结合具体例子, 让分布式理论学起来也不那么枯燥了. 2. 分布式系统一致性的发展历史(一) http://www.dianro

我关注的一周技术动态 2015.11.15

分布式系统实践 1. 一致性哈希算法 http://www.javaranger.com/archives/1781?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 要点: 一致性hash算法是解决分布式系统数据划分的有效手段, 解决了传统hash算法在机器扩容时需要大量移动数据的问题. 这篇文章对一致性hash算法做了简要的介绍, 如果你还不了解一致性hash算法, 那么请读读这篇文章吧 2. 巧用CAS解决数据一致

我关注的一周技术动态 2015.10.18

分布式系统实践 1. 从Storm和Spark 学习流式实时分布式计算的设计 http://www.csdn.net/article/2014-08-04/2821018/1 要点: 流式计算并不是什么新鲜的东西, 相信很多同学也都用过. 不过之前流式计算往往都用在业务相关的地方, 随着大规模分布式系统对trace和metric数据收集的迫切需求, 基于时间序列数据库和流式计算就可以实现复杂的数据分析和汇聚功能, 这篇文章帮助大家理解流式计算的原理, 大家可以想象一下, 如果希望实时统计性能消耗

我关注的一周技术动态2015.7.26

容器技术 1. Docker持续部署图文详解 http://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=208550161&idx=1&sn=e1bdb3d219c110c79850f43c0fe1d297&key=c76941211a49ab5870652c78bff255aa29b56abb1fbd503a3584dea04af2275000a4e796fee253975115f33b11f203b1&ascene