请注意,Zanblog并不支持低于IE8的浏览器,为了获得最佳效果,请下载最新的浏览器,推荐下载 Chrome

关于大型监控系统的高性能组件设计

架构设计,运维开发,高性能 4,349 views
      以前有幸参与过一个分布式监控系统开发,有一些所谓的设计和开发的经验,但苦于公司的内部系统无法开源,所以也就藏着掖着。   前两天跟一途牛网、饿了么的朋友胡扯了监控系统的事,这尼玛正好点燃了我这高射炮,可以有个地好好释放了下。 记得13年的时候,跟金山猎豹的斌哥聊过一些设计方...
阅读全文 3

关于大型监控系统的高性能组件设计

7-16 4,349 views

      以前有幸参与过一个分布式监控系统开发,有一些所谓的设计和开发的经验,但苦于公司的内部系统无法开源,所以也就藏着掖着。   ...
阅读全文 3

怎么用存储过程来提高事务的并发

DB,python 4,386 views
在描述使用存储过程解决事务并发之前,简单描述下上下问。  我做了一个简单积分的对外接口,因为需要做几个表的查询和创建更改,在调用特别频繁的时候,会发现小范围阻塞的情况,作为同步的接口,这种时间消耗也难让人接受…   事务是做什么的?  他可以保证你的一系列dml语句要么都做,要...
阅读全文 4

怎么用存储过程来提高事务的并发

7-13 4,386 views

在描述使用存储过程解决事务并发之前,简单描述下上下问。  我做了一个简单积分的对外接口,因为需要做几个表的查询和创建更改,在调用特别频繁的时候...
阅读全文 4

技术分享 《分布式一致性raft算法实现原理》

Golang,技术分享 5,863 views
       这段时间跟同事聊了不少分布式系统中的常用算法协议,中间有聊到分布式一致性的话题,当然我们对一致性理解都是那种介绍的层次。  哈哈 , 后来用了心思去学习分布式一致性协议 raft,  现在有些心得,就拿出来给同事分享下。           &nb...
阅读全文 7

技术分享 《分布式一致性raft算法实现原理》

7-08 5,863 views

       这段时间跟同事聊了不少分布式系统中的常用算法协议,中间有聊到分布式一致性的话题,当然我们对一致性理解都是那种介绍的层次...
阅读全文 7

源码分析peewee的异常重试

python 4,370 views
……源码分析peewee的异常重试 … 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新.  http://xiaorui.cc/?p=3520 Peewee 是个好用的orm,我们这边遇到复杂的业务逻辑都会使用orm来减轻我们写sql语句代码的痛苦。 几十个表,每个表都有几十个字段,时常要...
阅读全文 0

源码分析peewee的异常重试

7-05 4,370 views

……源码分析peewee的异常重试 … 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新.  http://xiaorui...
阅读全文 0

开源模块之python函数调用性能统计

python 4,638 views
群里有个人问我最近怎么不活跃了。 问我这话的人,一看就知道工作不饱和。  话说最近有些忙,走了个小弟, 然后各种开发迭代在后面排着,这堆任务够我跟小弟忙一段时间了。  公司缺高级水平的python程序员, 有兴趣的朋友可以跟我联系。  该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请...
阅读全文 0

开源模块之python函数调用性能统计

6-28 4,638 views

群里有个人问我最近怎么不活跃了。 问我这话的人,一看就知道工作不饱和。  话说最近有些忙,走了个小弟, 然后各种开发迭代在后面排着,这堆任务够我...
阅读全文 0

记一次压测引起的nginx负载均衡性能调优

运维 6,769 views
     这边有个性能要求极高的api要上线,这个服务端是golang http模块实现的。在上线之前我们理所当然的要做压力测试。起初是 “小白同学” 起头进行压力测试,但当我看到那压力测试的结果时,我也是逗乐了。   现象是,直接访问Golang http api是每秒可以到3.5W的访问,  为了理论承受更强的QP...
阅读全文 0

记一次压测引起的nginx负载均衡性能调优

6-26 6,769 views

     这边有个性能要求极高的api要上线,这个服务端是golang http模块实现的。在上线之前我们理所当然的要做压力测试。起初是 “小白同学” ...
阅读全文 0

技术分享之《cdn的设计原理及架构》

python,技术分享,运维 5,464 views
      这次公司大队人马去乌镇庆祝十周年,过程结果都很happy,抽奖还中了人民币,这运气没的说呀。 在乌镇西栅的小河边,我们量子团队一边聊MM,一边聊cdn的东西,很是happy。 同事们都是纯开发出身,对于运维的基础架构没有深入了解过。 在同事的鼓吹下,我觉得有必要跟大家好好聊聊cdn的各种场景,...
阅读全文 6

技术分享之《cdn的设计原理及架构》

6-21 5,464 views

      这次公司大队人马去乌镇庆祝十周年,过程结果都很happy,抽奖还中了人民币,这运气没的说呀。 在乌镇西栅的小河边,我们量子团队一边...
阅读全文 6

使用python封装sd_notify到systemd

python 4,257 views
        我们知道Centos7之后搁浅Sysvinit,改用复杂功能又及其强大,又特别惹人烦恼的systemd.  这个名字取得很大气,直接用system + d .   Sysvint从unix时期就已经早早的存在了,在各大国外的社区都很不少大牛针对init 和 systemd进行讨论,目前来看支持Sysvinit的人多点。   ...
阅读全文 0

使用python封装sd_notify到systemd

6-16 4,257 views

        我们知道Centos7之后搁浅Sysvinit,改用复杂功能又及其强大,又特别惹人烦恼的systemd.  这个名字取得很大气,直接用sys...
阅读全文 0

技术分享 《大话redis设计实现》

python,技术分享 4,619 views
        这次又给朋友公司 (Naver) 做了一次技术分享,主题是《大话redis设计实现》 ,  里面的内容来自 学习《redis设计与实现》 和 阅读redis源码的心得。   话说, 我用redis的历史也有些时间了, 应该有4、5 年了。  运维方面从最开始单机扩展成主从,从单主从到proxy方案,现在...
阅读全文 1

技术分享 《大话redis设计实现》

6-11 4,619 views

        这次又给朋友公司 (Naver) 做了一次技术分享,主题是《大话redis设计实现》 ,  里面的内容来自 学习《redis设计与实现》...
阅读全文 1

理解linux网络的tcp超时和重传

内核,运维 5,227 views
       怎么突然会说起这么底层的话题, 这两天跟小白同学聊了GO服务端开发的事情,重点在于tcp重传个超时的事情。 有不少写服务端的人,包括我自己很多时候都直接调用tcp的框架写业务。 因为socket本身就屏蔽了tcp协议的事务,让我们更专注于业务本身,所以造成了不少朋友对于tcp不甚理解。 &nbs...
阅读全文 1

理解linux网络的tcp超时和重传

6-05 5,227 views

       怎么突然会说起这么底层的话题, 这两天跟小白同学聊了GO服务端开发的事情,重点在于tcp重传个超时的事情。 有不少写服务端的...
阅读全文 1

聊聊threading的condition条件变量

python 4,576 views
     Python下有很多的Lock锁,比如Mutex,Rlock,semaphore…  这些都是比较常用的Lock锁。  然而很多时候我们都忘记threading下还有一个叫做condition的条件变量。   condition内部是含有锁的逻辑,不然也没法保证线程之间的同步。  该文章写的有些乱,欢迎来喷 ! ...
阅读全文 0

聊聊threading的condition条件变量

5-31 4,576 views

     Python下有很多的Lock锁,比如Mutex,Rlock,semaphore…  这些都是比较常用的Lock锁。  然而很多时候我们都忘记threa...
阅读全文 0

技术分享 《python gil的那些事儿》

python,技术分享 3,653 views
      前段时间一个老友叫我过去做一场技术分享,盛情难却,又有大保健做挟持,不得已还是要花点心思来准备一下。  我承认自己是一个不善于演讲的人,时常会感到词穷,激动的场景下话题有些偏离。 我知道自己这个缺点,所以一直在克服它。  这里也建议大家多做一些分享活动,哪怕技术分享也...
阅读全文 2

技术分享 《python gil的那些事儿》

5-30 3,653 views

      前段时间一个老友叫我过去做一场技术分享,盛情难却,又有大保健做挟持,不得已还是要花点心思来准备一下。  我承认自己是一个...
阅读全文 2

聊聊python libev事件库的定时器调度

python 3,658 views
libev 是个比libevent更加简洁的事件库,python的gevent就是使用libev来实现的。  pyev是libev的python封装版本。 下面是个pyev的定时器例子。  Python import signal import pyev def sig_cb(watcher, revents): print("got SIGINT") loop = wat...
阅读全文 0

聊聊python libev事件库的定时器调度

5-28 3,658 views

libev 是个比libevent更加简洁的事件库,python的gevent就是使用libev来实现的。  pyev是libev的python封装版本。 下面是个pyev的定时器例子。  ...
阅读全文 0

gevent通过socket补丁实现redis.py非阻塞

python 4,785 views
如题,gevent是使用socket补丁把redis.py改成异步非阻塞化. 异步非阻塞是个有点虚的话题,在python下使用gevent确实解决了io阻塞的问题。 业务场景需要python gevent redis.py的组合,因redis.py涉及到网络io的交互,果断的在开源社区找找gevent有关redis的模块。   该文章写的有些乱,欢迎来喷 ! 另外文...
阅读全文 0

gevent通过socket补丁实现redis.py非阻塞

5-23 4,785 views

如题,gevent是使用socket补丁把redis.py改成异步非阻塞化. 异步非阻塞是个有点虚的话题,在python下使用gevent确实解决了io阻塞的问题。 业务场景需要pyth...
阅读全文 0

技术分享《一个异步io调度框架的实现》

python,技术分享 5,064 views
今下午在公司内部做了高端话题的分享,话题是异步io调度器是怎么实现的. 另外结合socket服务器又该如何调度处理? 这次的PPT写的有些简略,但基本说明了构建异步io框架的基本元素。  这次的分享由来是什么? 我前端时间一直再写一个调度器,类似于gevent那种,但中间遇到了不少的问题,比如信号事件化,定...
阅读全文 1

技术分享《一个异步io调度框架的实现》

5-19 5,064 views

今下午在公司内部做了高端话题的分享,话题是异步io调度器是怎么实现的. 另外结合socket服务器又该如何调度处理? 这次的PPT写的有些简略,但基本说明了构...
阅读全文 1

沈灿的新书 《Ansible自动化运维:技术与最佳实践》

ansible,文艺 8,406 views
    说说沈灿吧,在蓝汛、京东、百度…都转悠过,  擅长集群管理运维,水平挺好。 跟沈灿认识也有好几年了,一直说带我去大保健,到现在也没有兑现。  这个槽点,不影响我对他的认识。 对沈灿同学的印象一直是认真、爱钻研、爱学习、抠门、爱美女。  这多少还是有点我的风格。 这是...
阅读全文 7

沈灿的新书 《Ansible自动化运维:技术与最佳实践》

5-19 8,406 views

    说说沈灿吧,在蓝汛、京东、百度…都转悠过,  擅长集群管理运维,水平挺好。 跟沈灿认识也有好几年了,一直说带我去大保健,...
阅读全文 7

给redis-py提交pull request引起的思考

python 4,508 views
起因是这样的,昨天突然发现以前用redis python的时候,从来没注意过他在多线程,多进程下fd复用的情况,直接都是公用一个连接对象。  对比了多个好项目代码,貌似大家对mysql,mongodb十分的注意,都尽量不要让他有socket fd共享的情况,而对于redis的使用很是粗暴,直接共享。  那么话说回来...
阅读全文 3

给redis-py提交pull request引起的思考

5-17 4,508 views

起因是这样的,昨天突然发现以前用redis python的时候,从来没注意过他在多线程,多进程下fd复用的情况,直接都是公用一个连接对象。  对比了多...
阅读全文 3

心路历程之我的阅读书单

文艺 9,900 views
      这些有序的书单是来自于我的印象笔记,京东,淘宝,亚马逊及一些在线pdf阅读列表整理出来的。  整理这些书单花了不少的时间,在整理的过程中还是很有趣的,   看到一些书名时, 会回想起以前读书的场景和当时的工作生活状态.   十分有趣 .      本来是想用爬虫的方...
阅读全文 15

心路历程之我的阅读书单

5-17 9,900 views

      这些有序的书单是来自于我的印象笔记,京东,淘宝,亚马逊及一些在线pdf阅读列表整理出来的。  整理这些书单花了不少的时间,在...
阅读全文 15

探索mysql和redis主从复制的实现原理

DB,运维 7,908 views
前几天跟同事聊了下常见数据库的主从复制是怎么个原理。 另外对于redis的主从数据同步颇有些心得,就跟大家唠唠。 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新. http://xiaorui.cc/?p=3332 Mysql主从同步: Mysql master slave是最常见的主从模式,原理...
阅读全文 4

探索mysql和redis主从复制的实现原理

5-15 7,908 views

前几天跟同事聊了下常见数据库的主从复制是怎么个原理。 另外对于redis的主从数据同步颇有些心得,就跟大家唠唠。 该文章写的有些乱,欢迎来喷...
阅读全文 4

一个让我如痴如醉的python内存泄露问题

python 6,934 views
聊一个有意思的话题, 一个让我如痴如醉的内存泄露问题 (memory leak). . . 熟悉我的人,知道我是从devops再到纯开发的岗位。虽然我写过很多的所谓运维平台,什么自动装机,什么集群管理,什么DBA管理,什么监控系统等等… 虽然前后端都是我自己搞,但我很并不喜欢写前端的东西,当然我写的那些的前端...
阅读全文 3

一个让我如痴如醉的python内存泄露问题

5-12 6,934 views

聊一个有意思的话题, 一个让我如痴如醉的内存泄露问题 (memory leak). . . 熟悉我的人,知道我是从devops再到纯开发的岗位。虽然我写过很多的...
阅读全文 3

源码分析multiprocessing的Value Array共享内存原理

python 5,587 views
这次我们通过分析python的multiprocessing的源码,来看看Value Array怎么通过mmap ctypes实现的多进程之间的共享内存.      当第一次使用python多进程模块(multiprocessing)的Value Array做数据共享,就觉得一定是基于mmap实现的。 当然python文档中也说明是共享内存的方式了。 mmap只是提...
阅读全文 0

源码分析multiprocessing的Value Array共享内存原理

5-10 5,587 views

这次我们通过分析python的multiprocessing的源码,来看看Value Array怎么通过mmap ctypes实现的多进程之间的共享内存.      当...
阅读全文 0