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

python实现代码更新后实时自动reload机制

python 7,354 views
以前分享了一个监控到代码更新后程序自动reload的机制,当时用的是监控启动文件md5的机制。  现在换了一种方法, 用watchdog来监控文件的更新状态。  watchdog相比以前的方法,方便的实现了关于多个文件的监控,或是针对文件夹的监控…   借助于系统的inotify机制,不用像python那种费劲的一个个...
阅读全文

python实现代码更新后实时自动reload机制

4-28 7,354 views

以前分享了一个监控到代码更新后程序自动reload的机制,当时用的是监控启动文件md5的机制。  现在换了一种方法, 用watchdog来监控文件的更新状态。 &...
阅读全文

python开发支持edns扩展协议的dns服务器

python 7,191 views
恩,这两天正在看dns的东西, 对dns的edns的协议很是感兴趣….  有人估计还不知道edns是啥?  简单的来说,我们选用了google的dns地址来做dns的解析,但是如果没有扩展协议的话,我们会在之恩给你的dns层把你识别为国外的用户。 那么后来谷歌提出一个草案,并已由IETF牵头作为一个公开的标准建议,该草...
阅读全文

python开发支持edns扩展协议的dns服务器

4-24 7,191 views

恩,这两天正在看dns的东西, 对dns的edns的协议很是感兴趣….  有人估计还不知道edns是啥?  简单的来说,我们选用了google的dns地址来做d...
阅读全文

python使用happybase thrift库实现hbase的scan搜索

python 10,349 views
原文链接是在    http://xiaorui.cc  我想有些人可能不太懂python thrift scan的用法,我这边写个我自己常用的一个场景实现,查看某个列族里面以xxx开头的 …  恩, 先用happybase实现一个简单的scan,row_prefix的实现… … Python import...
阅读全文

python使用happybase thrift库实现hbase的scan搜索

4-22 10,349 views

原文链接是在    http://xiaorui.cc  我想有些人可能不太懂python thrift scan的用法,我这边写个我自己常用的一个场景实现,查看某...
阅读全文

分享python实现的lfu缓存模块-pylfu

python 6,284 views
根据老外的一篇文章改成的lfu模块,我发现在github或者是pypi里面是有大量的lru代码,但是lfu的反而没有,看来和我一样都喜欢用fifo和lru的算法。。。 那我自己麻烦点,放到开源的库里面, 供应大家下载。  老外的原文连接是在 http://code.activestate.com/recipes/498245-lru-and-lfu-cache-decorators/  ...
阅读全文

分享python实现的lfu缓存模块-pylfu

4-21 6,284 views

根据老外的一篇文章改成的lfu模块,我发现在github或者是pypi里面是有大量的lru代码,但是lfu的反而没有,看来和我一样都喜欢用fifo和lru的算法。。。 那我...
阅读全文

基于最少使用频次的LFU缓存淘汰算法

python 7,753 views
概念分析        LFU(Least Frequently Used)即最近最不常用.看名字就知道是个基于访问频次的一种算法。以前写过几篇关于用python实现lru算法的模块,有兴趣的朋友可以看看。 LRU是基于时间的,会将时间上最不常访问的数据给淘汰,在算法表现上是放到列表的顶部;LFU为将频率上最不常访问的数据...
阅读全文

基于最少使用频次的LFU缓存淘汰算法

4-20 7,753 views

概念分析        LFU(Least Frequently Used)即最近最不常用.看名字就知道是个基于访问频次的一种算法。以前写过几篇关于用python...
阅读全文

python OrderedDict实现有expire和max的队列和缓存服务

python 8,554 views
    周天又寂寞了….今天天气不是太好,有些阴冷,估计大街上的小妞肯定不会穿裙子…   估计不能拿着板凳去看美女的大腿了….        最近一直对服务端的开发很是感兴趣,python本身的数据结构是很容易实现队列或者是缓存的服务的。  我曾经实现一个python...
阅读全文

python OrderedDict实现有expire和max的队列和缓存服务

4-19 8,554 views

    周天又寂寞了….今天天气不是太好,有些阴冷,估计大街上的小妞肯定不会穿裙子…   估计不能拿着板凳去看美女的大腿了…...
阅读全文

使用装饰器为tornado restful api做异常处理

python,tornado 7,093 views
公司正在启动对外供应数据的业务,是两个高手负责, 架构方面看起来很是浏览,nginx lua tornado的组合,识别一些自然语法,由ast语法树来解析构建规则。   遇到一个规范的问题,不是所有的第三方的调用是合法的,这里说的合法更多的是符不符合特定语法的规则,这里语法是dsl结构的, 请求的信息是放在request bo...
阅读全文

使用装饰器为tornado restful api做异常处理

4-17 7,093 views

公司正在启动对外供应数据的业务,是两个高手负责, 架构方面看起来很是浏览,nginx lua tornado的组合,识别一些自然语法,由ast语法树来解析构建规则。 &...
阅读全文

使用logstash和kibana4的新功能metric开发数据聚合

运维 12,973 views
这次把kibana3升级到kibana4,现在我们底层部门的日志都用elk方案了(logstash elasticsearch kibana)   说实话,一开始用kibana4的时候,差点屁了,跟kibana3不同的路数,以前熟悉的前端的操作,在kibana4里都是行不通的,用我们产经经理仕华的话来书,这你妈很said .   这里还是需要标记下我的...
阅读全文

使用logstash和kibana4的新功能metric开发数据聚合

4-16 12,973 views

这次把kibana3升级到kibana4,现在我们底层部门的日志都用elk方案了(logstash elasticsearch kibana)   说实话,一开始用kibana4的时候,差点屁了...
阅读全文

360 QConf配置管理系统简易部署和使用

运维开发 10,414 views
今晚网上测试了下360开源的qconf配置管理。算是个运维平台吧。   其实早就知道他已经开源了,只是今天才开始测试了下,对于测试的结果,我不是很满意,也可能是我测试的场景过于的简单,没有太突出的体现…   最近爬虫很是无品,我标记下我的连接… http://xiaorui.cc/?p=1263 ...
阅读全文

360 QConf配置管理系统简易部署和使用

4-14 10,414 views

今晚网上测试了下360开源的qconf配置管理。算是个运维平台吧。   其实早就知道他已经开源了,只是今天才开始测试了下,对于测试的结果,我不是很满意...
阅读全文

Docker容器和主机如何互相拷贝传输文件

docker 15,097 views
上次遇到一个紧急的调整bug的事情,自己也懒得复制粘贴,看看有没有cp的参数。 结果man docker的文档居然是有复制文件到docker 容器的方式。    这篇文章里面我会把知道的方法都写出来。 这两天写了一个通用的配置文件监控重载的后端程序,非常适合在docker环境下用。 它可以实现在分布式的架...
阅读全文

Docker容器和主机如何互相拷贝传输文件

4-12 15,097 views

上次遇到一个紧急的调整bug的事情,自己也懒得复制粘贴,看看有没有cp的参数。 结果man docker的文档居然是有复制文件到docker 容器的方式。    ...
阅读全文

nginx tcp实现hbase thrift server负载均衡

运维开发 11,031 views
不是爬虫!!    还是那句话,量大了,屁事都是大事 ~~~     过年到现在,工作的内容基本是调优,调优,调优….   从hbase替换成Elasticsearch,分布式任务的docker化,大量的拆解逻辑,改为MQ离线,时序任务队列,查询逻辑加cache层…..  我想有不少人都会遇到thrif...
阅读全文

nginx tcp实现hbase thrift server负载均衡

4-09 11,031 views

不是爬虫!!    还是那句话,量大了,屁事都是大事 ~~~     过年到现在,工作的内容基本是调优,调优,调优….   从hbase...
阅读全文

python zookeeper解决redis做分布式锁带来的坑

python 8,560 views
我自己写了一个redis分布式锁的模块,已经推到pypi里面了。 但是带来了一个问题是,如果客户端自己因为内存泄露被系统内核给oom干掉了。 在分布式的架构下,一堆的节点去获取锁是徒劳的,只能等我们先前redis的TTL自动消逝….当然我自己也扩展了一个追加时间戳的方式,来判断他的进程在不在,但是可能...
阅读全文

python zookeeper解决redis做分布式锁带来的坑

4-09 8,560 views

我自己写了一个redis分布式锁的模块,已经推到pypi里面了。 但是带来了一个问题是,如果客户端自己因为内存泄露被系统内核给oom干掉了。 在分布...
阅读全文

分布式爬虫之python动态获取随机选择出口ip

python 11,998 views
这两天有几个朋友都在问我,你们爬虫的多ip方案是如何搞定的。   其实我们的方案多元化的,根据历史遗留的问题,大部分是采用的分布式http代理的方式,也就是开了n个虚拟机,然后安装http代理的服务,以前是squid做正向代理.  因为squid代理专业是专业,但是不够轻型。So , 用twisted构建了一个...
阅读全文

分布式爬虫之python动态获取随机选择出口ip

4-07 11,998 views

这两天有几个朋友都在问我,你们爬虫的多ip方案是如何搞定的。   其实我们的方案多元化的,根据历史遗留的问题,大部分是采用的分布式htt...
阅读全文

logstash联合python kafka进行异常数据监控

python 11,297 views
kafka的优点,我想大家应该知道…. 一个可以支撑大流量的消息系统, 要比redis靠谱点,毕竟人家数据可以落地硬盘… 现在所有的日志都通过logstash收集到了elasticsearch里面。 我们可以通过kibana来进行查看各种日志报表,但是问题是我们如何针对某些异常进行告警…   比如我临时要过滤些...
阅读全文

logstash联合python kafka进行异常数据监控

4-05 11,297 views

kafka的优点,我想大家应该知道…. 一个可以支撑大流量的消息系统, 要比redis靠谱点,毕竟人家数据可以落地硬盘… 现在所有的日志都通过...
阅读全文

django存储emoji表情时遇到的Incorrect string value问题

python 8,417 views
最近忙活电商数据的接入接口,可以把各大电商的数据同步到我们本地的Elasticsearch…. 也是个蛋疼的事情… 中间遇到个小问题. 在入库的时候遇到了问题,总是会爆  Incorrect string value: ‘\\xF0\\x9F\\x90\\xA8′ for column ‘signature’ at row 1   的问题..  ...
阅读全文

django存储emoji表情时遇到的Incorrect string value问题

4-02 8,417 views

最近忙活电商数据的接入接口,可以把各大电商的数据同步到我们本地的Elasticsearch…. 也是个蛋疼的事情… 中间遇到个小问题. 在入库的时候...
阅读全文

python rq任务队列是如何实现优先级队列 [上]

python 9,241 views
这段时间跟同事聊了些任务优先级队列的话题,正好我们这把大量的celery抛弃,开始用rq来做任务队列,因为celery太大,所以改造起来甚是恶心到爆,还不如选择一个简单干练的python rq。 xiaorui.cc xiaorui.cc xiaorui.cc xiaorui.cc 微信的抓取api,我是用django写的,任务队列也是用django-rq,...
阅读全文

python rq任务队列是如何实现优先级队列 [上]

4-01 9,241 views

这段时间跟同事聊了些任务优先级队列的话题,正好我们这把大量的celery抛弃,开始用rq来做任务队列,因为celery太大,所以改造起来甚是恶心到爆,还不如选...
阅读全文

设想用python实现类httpdns的dns服务

运维开发 7,895 views
看到了以前dnspod的同事发布了一个httpdns的服务,突然记起了来,奶罩最一开始的设想,就是要在手机app里面集成一个httpdns的服务,在当时想法还是很时尚的。  随着腾讯大量的使用httpdns后,紧接着dnspod也发布了类似的产品了。    原文地址是 xiaorui.cc ,能不能别被爬了。。。。 xi...
阅读全文

设想用python实现类httpdns的dns服务

3-28 7,895 views

看到了以前dnspod的同事发布了一个httpdns的服务,突然记起了来,奶罩最一开始的设想,就是要在手机app里面集成一个httpdns的服务,在当时想法还是很时...
阅读全文

折腾redis的sorted set数据结构Skip List跳跃表

python 8,544 views
我旁边的同时一直在捣鼓redis的分页功能,详细的分析了list和sorted set的两个结构.   我自己也对sorted set的数据结构很是感兴趣…  我这边的有个微信抓取的任务就是用python rq做的,里面的选用的redis数据类型就是sorted set…   这里不是重点,有时间专门写一篇关于redis实现时序任务队...
阅读全文

折腾redis的sorted set数据结构Skip List跳跃表

3-27 8,544 views

我旁边的同时一直在捣鼓redis的分页功能,详细的分析了list和sorted set的两个结构.   我自己也对sorted set的数据结构很是感兴趣…  我这...
阅读全文

线上测试docker在cpu密集运算的场景下性能的表现

docker,运维开发 10,965 views
2015-08-22 补充下文档…. …. 先前这文章写的有些零散,不着调…. 今个再把文档给补充下。 题外话,我们先聊下虚拟机和docker在性能的区别.  VM是一个运行在宿主机之上的完整的操作系统,VM运行自身操作系统会占用较多的CPU、内存、硬盘资源。 Docker不同于VM,只包含应用程序以及...
阅读全文

线上测试docker在cpu密集运算的场景下性能的表现

3-26 10,965 views

2015-08-22 补充下文档…. …. 先前这文章写的有些零散,不着调…. 今个再把文档给补充下。 题外话,我们先聊下虚拟机和docker在...
阅读全文

elk调优之修改logstash写入elasticsearch按照时间分库

elasticsearch,运维开发 9,822 views
logstash index服务端又自己挂了,很让人发蒙…. 原因还没找到. 说下现在的问题…. 原本的logstash是按照每天一个库,这样在es集群环境下会做太多的sharding。   所以改成按照月切割,每月一个。 该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新。 xi...
阅读全文

elk调优之修改logstash写入elasticsearch按照时间分库

3-23 9,822 views

logstash index服务端又自己挂了,很让人发蒙…. 原因还没找到. 说下现在的问题…. 原本的logstash是按照每天一个库,这样在es集群环境下...
阅读全文