Web Analytics

TB一周萃选[第8期]

本文是首发于个人微信公众号的文章**“TB一周萃选[第8期]”**的归档。 再看看那个光点,它就在这里。那是我们的家园,我们的一切。你所爱的每一个人,你认识的每一个人,你听说过的每一个人,曾经有过的每一个人,都在它上面度过他们的一生。我们的欢乐与痛苦聚集在一起,数以千计的自以为是的宗教、意识形态和经济学说,所有的猎人与强盗、英雄与懦夫、文明的缔造者与毁灭者、国王与农夫、年轻的情侣、母亲与父亲、满怀希望的孩子、发明家和探险家、德高望重的教师、腐败的政客、超级明星、最高领袖、人类历史上的每一个圣人与罪犯,都住在这里——一粒悬浮在阳光中的微尘。 ...

February 3, 2018 · 8 min · Tony Bai

使用wukong全文搜索引擎

近期项目中有一个全文索引和全文搜索的业务需求,组内同事在这方面都没啥经验,找一个满足我们需求的开源的全文搜索引擎势在必行。我们这一期对全文搜索引擎的需求并不复杂,最主要的是引擎可以很好的支持中文分词、索引和搜索,并能快速实现功能。在全文搜索领域,基于Apache lucene的ElasticSearch舍我其谁,其强大的分布式系统能力、对超大规模数据的支持、友好的Restful API以及近实时的搜索性能都是业内翘楚,并且其开发社区也是相当活跃,资料众多。但也正式由于其体量较大,我们并没有在本期项目中选择使用ElasticSearch,而是挑选了另外一个“fame”不是那么响亮的引擎:wukong。 ...

December 6, 2016 · 13 min · Tony Bai

GopherChina2016后记

4月17日晚22:51,伴随着D7次动车缓缓驶入沈阳北站,拖着疲惫的身体和些许兴奋的我,结束了两天的GopherChina 2016之旅。 一、GopherChina大会 GopherChina大会是中国大陆地区Golang语言推广第一品牌。2015年在上海成功了举办了第一届大会;2016年,大会发起人astaxie为充分照顾帝都(及周边)Gophers们的情绪^_^,将GopherChina 2016搬到了北京举行。 这是我第一次参加GopherChina大会,也是由于“第一次”,心里有种莫名的小兴奋。 ...

April 18, 2016 · 7 min · Tony Bai

使用core-vagrant方式安装CoreOS

CoreOS是一种专门为运行类docker容器而生的linux发行版。与其他通用linux发行版(ubuntu、debian、redhat)相 比,它具有体型最小,消耗最小,支持滚动更新等特点。除此之外CoreOS内置的分布式系统服务组件也给开发者和运维者组建分布式集群、部署分布式服务应 用带来了极大便利。 ...

July 20, 2015 · 8 min · Tony Bai

使用consul实现分布式服务注册和发现

Consul是HashiCorp公司推出的开源工具,用于实现分布式系统的服务发现与配置。与其他分布式服务注册与发现的方案,比如 Airbnb的SmartStack等相比,Consul的方案更“一站式”,内置了服务注册与发现框 架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等)。使用起来也较 为简单。Consul用Golang实现,因此具有天然可移植性(支持Linux、windows和Mac OS X);安装包仅包含一个可执行文件,方便部署,与Docker等轻量级容器可无缝配合。 ...

July 6, 2015 · 13 min · Tony Bai

Appdash,用Go实现的分布式系统跟踪神器

在“云”盛行的今天,分布式系统已不是什么新鲜的玩意儿。用脚也能想得出来:Google、baidu、淘宝、亚马逊、twitter等IT巨头 背后的巨型计算平台都是分布式系统了,甚至就连一个简单的微信公众号应用的后端也都分布式了,即便仅有几台机器而已。分布式让系统富有弹性,面 对纷繁变化的需求,可以伸缩自如。但分布式系统也给开发以及运维人员带来了难题:如何监控和优化分布式系统的行为。 ...

June 17, 2015 · 9 min · Tony Bai

Memcached CAS应用一例

近期收到客户一个需求,我将该需求转述为下面这个等价的问题。 【问题】 * 有一个产品包装系统_S_,为某种产品_P_提供产品包装服务; * 系统_S_由若干个处理节点组成,每个节点都可以单独处理组件; ...

November 1, 2013 · 5 min · Tony Bai

利用ZooKeeper服务实现分布式系统的配置数据同步

很多时候,一旦习惯了某些事情,也就习惯了它们的恶劣,习惯了它们的丑陋,习惯了它们“赋予”你的各种痛苦。 – Tony Bai 一、痼疾难解 曾几何时,在那个还没有集群化,没有分布式的时代,它还是一个不错的方案,至少在线上没有暴露出太多问题,它也不在我们关注的重点范围之内。但随 着集群化、分布式的新版本的到来,那一大坨遗留的代码就变得格外让人不顺眼,同时问题也随之在线上暴露开来了。 ...

August 28, 2013 · 9 min · Tony Bai

利用ZooKeeper服务实现分布式系统的Leader选举

每次与Java组的同事们坐下来谈技术、谈理想、谈人生时,Java组的同事总会向我们投来羡慕的眼光:卧槽!又是自己开发的工具,太NB了。这时C程序 员们的脸上就会洋溢出自豪的笑容,然后内心骂道:谁让我们没有现成的呢。另一个空间里的某些“无C不欢”们或者某些“C Guru”们会骂道:靠,有了也不用,自己写! ...

August 23, 2013 · 6 min · Tony Bai