分布式系统一周技术动态 2015.11.22

分布式系统实践

1. 直观理解paxos

http://drmingdrmer.github.io/pdf/paxos-slide/paxos.pdf

要点: paxos协议一直以难以理解著称, 以至于该论文发表10年后才被人们认识到重要性, 这篇文章通过具体的例子来阐述paxos协议, 让人感觉到paxos协议不是发明出来的, 而是演化而来的, 让paxos协议不再那么难以理解了.

2. NoSQL数据库模型

http://darkhouse.com.cn/blog/4?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

要点: 文章很长, 请大家耐心读完. 这篇文章从数据模型的角度, 将键值数据库, 列簇数据库, 文档数据库, 图形数据库这些数据库的数据模型转换为关系数据库模型, 并且进行了对比, 这才是数据库的本质.

3. Leases 一种解决分布式缓存一致性的高效容错机制

http://duanple.blog.163.com/blog/static/70971767201141111440789/

要点: 租约机制广泛应用于分布式缓存一致性问题, GFS, chubby, bigtable等系统都使用了租约机制. 这篇论文详细阐述了租约机制的原理以及如何根据具体条件设置租约的长短.

4. 阿里云梯的多NameNode和跨机房之路

http://mp.weixin.qq.com/s?__biz=MzAwNjMxNjQzNA==&mid=401405502&idx=1&sn=474f562664ba2673aed17ef712b1e1c6&scene=1&srcid=1120vcah4guP0tEFzi89t9PI&key=d72a47206eca0ea95731e1fbf3e3356fe751096ad6d8ced46b2f2e4d0911bd1f33a3fba2c372b9baa4475b342301de61&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=tqXL%2F8WjYPwuROJvJQrbBDZEtJXdPywl5%2FJZgTF9f9w6JB7Qbvn5cOkwxnZsPuE7

要点: 本文介绍了阿里云梯系统实现跨机房分布的技术演变过程, 在不影响业务的情况下实现跨机房的变化, 是非常有挑战的, 也要求架构本身的元数据管理有一定的灵活性. 其实很多基于master-slave的架构都有无缝实现机房迁移的潜在需求, 特别是需要进行机房间部署调整的时候(比如由于历史原因, tc逻辑机房的一批机器连接的总控是jx逻辑机房, 受限于现有架构, 调整回来是非常复杂的). 顺便说一句, 我和作者罗李在2010年网页搜索部的分布式索引构建中有过紧密的合作, 帮助我们解决和优化了很多hadoop的难题.

服务化和资源管理技术

1. Kubernetes 1.1发布:网络性能大幅度提升

https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=400342804&idx=1&sn=1d16cfe4a689a3ba8f52a2449327d4b0&scene=0&key=d4b25ade3662d643af2499ec341db9adfa46fd55b726b73cd88a140a3b9cbcccb015ddcd2fe36b6cea02acacb646e8ba&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=U1qz9MtzxJSMf%2BCPuDdYaRRlFK4jiyXGKmKBTMEJnhLzFHK4zVpZAkDUXMv0FBK0

要点: kuberntest 1.1发布了, 本文介绍了新版本的特性.

2. 互联网金融创业公司Docker实践

https://mp.weixin.qq.com/s?__biz=MzAwMDU1MTE1OQ==&mid=401596539&idx=1&sn=94922b2bf38d8f86777fe3ada47a8389&scene=0&key=d4b25ade3662d6438b0c8b72da54a81fb6a6dff8b193bd3185e339bb32dfc1ed22965656f9ffebcb382c27a5a28cfda4&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=o8upGhLwKUtmv2PgDs9RzfZb3x8DZtIdlLR0ONZeZ6L6mvsjPnXACYclyLDf1Igz

要点: 本文介绍了"雪球"公司在使用docker进行弹性扩容/持续部署方面的一些经验, docker目前看来仍然是部署无状态服务的最好选择.

服务调度和 Trace 技术

1.  从理论到实践,全方位认识DNS

http://mp.weixin.qq.com/s?__biz=MzAxODI5ODMwOA==&mid=404456665&idx=1&sn=5da2d34a2cb2ca89a145593ec7002c4a&scene=0&key=d4b25ade3662d6433824459318f754408a4146c5e54fc23ed12f5ce13fa505f9e25a35fef2b1217f1a4e7be557014b02&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=U1qz9MtzxJSMf%2BCPuDdYaRRlFK4jiyXGKmKBTMEJnhLzFHK4zVpZAkDUXMv0FBK0

要点: 上周分享的文章里有一篇介绍DNS原理的文章, 本文结合实例, 介绍了DNS的申请域名以及DNS劫持的内容

2. LVS在大规模网络环境中的应用

https://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=400613883&idx=1&sn=5b90b790ba4461111b511847bbcfa193&scene=0&key=d4b25ade3662d643fbf745c7da982c76f1cf11f53c0e0ad8162ad6701b1e72a325fe0e86620672f19a362cf6ad2665b9&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=o8upGhLwKUtmv2PgDs9RzfZb3x8DZtIdlLR0ONZeZ6L6mvsjPnXACYclyLDf1Igz

要点: 文章介绍了阿里在应用LVS过程中的经验和遇到的问题以及解决方案.

DevOps 技术

1. SaltStack介绍和架构解析

http://mp.weixin.qq.com/s?__biz=MzA3OTIxNTA0MA==&mid=400539185&idx=1&sn=eba6cc70ba097682c1e4d26336cd18f3&scene=1&srcid=1116DYp40lmTarhQaGPc3FW7&from=groupmessage&isappinstalled=0#wechat_redirect

要点: SaltStack是一种新的基础设施管理方法开发软件,简单易部署,可伸缩的足以管理成千上万的服务器,和足够快的速度控制,与他们交流,以毫秒为单位。SaltStack提供了一个动态基础设施通信总线用于编排,远程执行、配置管理等等。SaltStack和我厂oped开发的ccs系统的定位应该是一致的, 大家也可以在内网搜一下ccs进行了解和对比

2. 接触AWS近5年,谈谈我的运维经验

https://mp.weixin.qq.com/s?__biz=MzA5OTAyNzQ2OA==&mid=400410642&idx=1&sn=da55ad6d5378bd84867e6b5f1314facb&scene=0&key=d72a47206eca0ea95b072f85a7d78fdc13d8936b115eb04fea9fee5803647ac164a0492ebd4d06d35956114d993b75da&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=j3Yx%2F4TRpjE332qPJnHo%2FRLUzmHmPgE%2FoSYR8QqkMM5ZVHv5pm7wtKczzUBWdYO%2B

要点: 作者从故障, 自动伸缩, DDOS攻击几个方面讲述了使用AWS的亲身体会. 可以看出, AWS也是有故障的, 也是需要很多细粒度的工作的.

3. 开源的集中式定时任务管理系统Cronhub

https://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=400613883&idx=2&sn=57eb06d81e610b7b2e6191587f66d723&scene=0&key=d4b25ade3662d643fd6b4cf2ad3fd60445da0e53ae5d13855dc8a4af0d602e37e3df77e13521b90fec63c8e1723bd646&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=o8upGhLwKUtmv2PgDs9RzfZb3x8DZtIdlLR0ONZeZ6L6mvsjPnXACYclyLDf1Igz

要点: 管理crontab我想是很多我厂OP都头疼的问题, 这篇文章介绍了一个基于java的开源crontab管理框架, 提供丰富的GUI帮助大家简化对crontab任务的管理.

4. 运维圈必读10篇精选技术文章

https://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=400637963&idx=1&sn=3df66f61d444569dd8d2691e8f3bac90&scene=0&key=d72a47206eca0ea941235e43f96af828866e60b2f87eb04bd4ffb4aa17c47be863b6c48d12dfbc9e4bc9aea86bd113a0&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=j3Yx%2F4TRpjE332qPJnHo%2FRLUzmHmPgE%2FoSYR8QqkMM5ZVHv5pm7wtKczzUBWdYO%2B

要点: 确实是比较经典的技术文章, 有一些在我之前整理的技术动态中也分享过, 大家可以回顾一下.

工具集合

1. 深入浅出说闪存:拨开 SSD 的神秘面纱

http://mp.weixin.qq.com/s?__biz=MzA4Nzg5Nzc5OA==&mid=400397199&idx=1&sn=18ab1666d1b433b21c4f43506651d812&scene=0&key=d4b25ade3662d6435c930942874557b49d1ff021bd290baf8218fe89b76869ea083620c6e3ab94548fdde439f503aab2&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=U1qz9MtzxJSMf%2BCPuDdYaRRlFK4jiyXGKmKBTMEJnhLzFHK4zVpZAkDUXMv0FBK0

要点: SSD越来越普及了, 大家都知道SSD的速度比普通磁盘那可是快了不只一点半点. 但是SSD为什么这么快呢, 快的背后和磁盘相比有哪些风险呢? 本文介绍了SSD的基本原理来让大家了解SSD的本质.

2. 深度解析】Linux系统启动流程

http://mp.weixin.qq.com/s?__biz=MzA3OTgyMDcwNg==&mid=400442155&idx=1&sn=4f1210007479aa6f023e013fcd644fb3&scene=0&key=d4b25ade3662d6433d0438410cffb89383a8ab338aae6eea47ad83438ed4be8f9371e5e59da1fbe0674becb9d3c3c39c&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=o8upGhLwKUtmv2PgDs9RzfZb3x8DZtIdlLR0ONZeZ6L6mvsjPnXACYclyLDf1Igz

要点: 这是一篇介绍linux系统启动顺序的小文章, 帮助大家理解机器维修过程中初始化策略执行的地方. https://mp.weixin.qq.com/s?__biz=MzAxOTAzMDEwMA==&mid=402242393&idx=2&sn=2e0440065686a38d9000caa211bc0c3c&scene=1&srcid=1120IxVPZZBwFn5E31EsdQNh&key=d72a47206eca0ea984a30396413bd64767d83400c97c2b28df4265c03485e1930fe2b8b81ecbc61c75772e6ccb8c9804&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=tqXL%2F8WjYPwuROJvJQrbBDZEtJXdPywl5%2FJZgTF9f9w6JB7Qbvn5cOkwxnZsPuE7 同时这篇文章对启动初始化的三种方式, sysinit, upstart, systemd进行了详细的说明.

3. 手把手教你用Strace诊断问题

http://huoding.com/2015/10/16/474?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io

要点: 如果你还不了解strace, 那么看看这篇文章吧.

4. Linux进程调度

http://dokey4444.github.io/2015/11/16/Linux%E8%BF%9B%E7%A8%8B%E8%B0%83%E5%BA%A6/

要点: 这是beehive团队的高玮同学自己撰写的一篇技术博客(现场讲解的更透彻~), 讲解了linux进程调度算法的演化过程, 并且深入讲解了CFS调度算法. CFS调度算法是linux 2.6内核采用的新一代调度算法, 让进程调度从学术派走了出来, 算法简介明了, 就像大家学习了令人费解的paxos协议之后在看raft协议一样的感受. 其实CFS的思想可以应用在很多需要任务调度的地方, 比如beehive中下载任务调度, 所以接下来beehive也打算使用CFS的思想来重构下载任务管理模块.

5. 运维工程师必会工具:Nmap 和 TCPdump

http://mp.weixin.qq.com/s?__biz=MzAxODI5ODMwOA==&mid=405085266&idx=1&sn=b35274c948a6cf48e87d1d7d2c14799b&scene=0&key=d72a47206eca0ea97c82196eeb37cf071f2ffa9063cc42cc04fd0fab6f88dca63c5e7cae7f5a4a5a5ad60cf33d57698e&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=j3Yx%2F4TRpjE332qPJnHo%2FRLUzmHmPgE%2FoSYR8QqkMM5ZVHv5pm7wtKczzUBWdYO%2B

要点: 追查网络问题的必备工具. http://mp.weixin.qq.com/s?__biz=MzA3OTgyMDcwNg==&mid=400481563&idx=1&sn=b3b0e6543d32f8743a3e0249998f4a80&scene=0&key=d72a47206eca0ea94c9e0b0f11d5d47aec9932a620df400078218c77a2baad925bca802dc5a41e7b4bcbe9ab0ac7c4c9&ascene=0&uin=Mjk1ODMyNTYyMg%3D%3D&devicetype=iMac+MacBookPro11%2C4+OSX+OSX+10.11.1+build(15B42)&version=11020201&pass_ticket=j3Yx%2F4TRpjE332qPJnHo%2FRLUzmHmPgE%2FoSYR8QqkMM5ZVHv5pm7wtKczzUBWdYO%2B 再补充三个追查性能问题的好工具, htop, glances和dstat. 目前公司默认安装的追查工具太落后了, 希望将一些高级工具作为基础软件安装上去.

时间: 2024-10-08 17:01:56

分布式系统一周技术动态 2015.11.22的相关文章

我关注的一周技术动态 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.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.11.08

分布式系统实践 1. 为什么大部分NoSQL不提供分布式事务? http://www.jdon.com/47671?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 要点: 市面上各种NoSQL数据库种类繁多, 但是大部分NoSQL数据库都不提供分布式事务, 我也经常听到有些同学评价某些NoSQL数据库的缺点时就是说不提供分布式事务. 分布式事务不是实现不了, 而是代价较高, 本文介绍了实现分布式事务需要做出的牺牲和取舍

分布式技术一周技术动态 2015.11.29

分布式系统实践 1. (学术论文)Fail at Scale Reliability in the face of rapid change http://queue.acm.org/detail.cfm?id=2839461 要点: 本文介绍了facebook的在线系统稳定性解决方案. 文章涵盖了配置管理系统, 分级发布, 快速回滚, 控制延迟算法, 并发度控制, 防止雪崩, 核心服务健壮性,  故障演练等涉及服务稳定性的方方面面, 对我们的系统稳定性有很大的参考价值(特别是延迟控制算法, 对

我关注的一周技术动态 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.12.13

分布式系统实践 1. 关于分布式事务.两阶段提交协议.三阶提交协议 http://www.hollischuang.com/archives/681?hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 要点: 分布式系统的数据一致性一直以来就是分布式系统中最难解决的问题之一, 本文介绍了传统的2PC和3PC协议以及他们的缺点, 理解了2PC和3PC之后, 回过头来大家就能理解paxos协议的具备的里程碑式的重要意义了(当然

一周技术动态2015.7.19

容器技术 1. docker 7月刊 http://dockone.io/article/503 要点: dockone 总结的7月份 docker 技术动态 2. 新浪SCE Docker最佳实践 http://dockone.io/article/416 要点: 本文分享了 docker 在新浪 SCE 中遇到的问题和解决方案, 从这些解决方案中可以看到, 没有最好的解决方案, 只有最适合的解决方案. 服务化和资源管理技术 1. Kubernetes 1.0发布,KubeCon也来了 htt

我关注的一周技术动态 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.09.20

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