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

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

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

04-19 7,879 views

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

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

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

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

04-17 6,428 views

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

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

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

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

04-09 7,787 views

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

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

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

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

04-07 11,076 views

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

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

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

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

04-05 10,434 views

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

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

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

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

04-02 7,620 views

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

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

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

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

04-01 8,431 views

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

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

python 7,772 views
我旁边的同时一直在捣鼓redis的分页功能,详细的分析了list和sorted set的两个结构.   我自己也对sorted set的数据结构很是感兴趣…  我这边的有个微信抓取的任务就是用python rq做的,里面的选用的redis数据类型就是sorted set…   这里...
阅读全文 2

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

03-27 7,772 views

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

python实现获取根据日期时间切分的数据库的调度信息

python 6,580 views
哥很是寂寞呀…    寂寞…. …. 年后负责的回溯的任务,数据已经从hbase转移到了ES里面。  替换的原因不是Hbase不行,而是 我们的回溯任务更加的适合用ES全文索引的功能。  这块业务的逻辑,一开始不是我负责的,那哥们...
阅读全文 0

python实现获取根据日期时间切分的数据库的调度信息

03-04 6,580 views

哥很是寂寞呀…    寂寞…. …. 年后负责的回溯的任务,数据已经从hbase转移到了ES里面。  替换的原因不是Hbase不行,而...
阅读全文 0

python elasticsearch创建连接时sniff探测和timeout的问题

python 10,056 views
elasticsearch的集群方式就那么几种,一个是直接用nginx、haproxy这样的负载均衡在集群的调度。另一种是用siniff方式自动嗅探。  这里简单说下,在python语言下创建elasticsearch连接时,遇到的一些小问题。 query filtered Traceback (most recent...
阅读全文 0

python elasticsearch创建连接时sniff探测和timeout的问题

03-02 10,056 views

elasticsearch的集群方式就那么几种,一个是直接用nginx、haproxy这样的负载均衡在集群的调度。另一种是用siniff方式自动嗅探。  这里简单说下,在...
阅读全文 0

python使用flask实现leveldb的rest api

python 8,810 views
     马上就要放假了,因为临过年了,也没啥事干… …   公司有个数据抽取的模块,是需要一个临时的又高性能的本地KV数据库, leveldb算是个好选择。 以前在人人的时候,我的好多项目都用了leveldb,只是后期改用ssdb的多点。 level...
阅读全文 2

python使用flask实现leveldb的rest api

02-15 8,810 views

     马上就要放假了,因为临过年了,也没啥事干… …   公司有个数据抽取的模块,是需要一个临时的又高性能的本地KV数据库...
阅读全文 2

使用phantomjs抓取动态页面遇到的timeout超时问题

python 9,022 views
原文地址是,http://xiaorui.cc phantomjs无意是强大的无界面的webkit浏览器工具,但是对于有些网站来说,他的返回过慢了点。  我这边是在服务端控制超时的时间,gevent subprocess的组合,但是因为subprocess和我的另一组逻辑有些冲突,所以把超时...
阅读全文 0

使用phantomjs抓取动态页面遇到的timeout超时问题

02-03 9,022 views

原文地址是,http://xiaorui.cc phantomjs无意是强大的无界面的webkit浏览器工具,但是对于有些网站来说,他的返回过慢了点。  我这边是在服...
阅读全文 0

python logging定制logstash的json日志格式

python 11,002 views
最近一直在折腾日志的收集,现在算是收尾了。  写一篇算python优化logstash的方案。  其实大家都知道logstash调用grok来解析日志的话,是要消耗cpu的成本的,毕竟是需要正则的匹配的。  根据logstash调优的方案,咱们可以预先生成json的格...
阅读全文 1

python logging定制logstash的json日志格式

01-30 11,002 views

最近一直在折腾日志的收集,现在算是收尾了。  写一篇算python优化logstash的方案。  其实大家都知道logstash调用grok来解析日志的话,...
阅读全文 1

python使用etcd来实现配置共享及集群服务发现 【上】

docker,python 10,932 views
这两天抽了点时间研究了下现在比较火辣的etcd,网上很多的文章都是写etcd和docker的结合使用。  不说docker,咱们单独就etcd这个高可用键值来聊聊吧。  etcd是一个高可用的键值存储系统,主要用于共享配置和服务发现。etcd是由CoreOS开发并维护...
阅读全文 1

python使用etcd来实现配置共享及集群服务发现 【上】

01-23 10,932 views

这两天抽了点时间研究了下现在比较火辣的etcd,网上很多的文章都是写etcd和docker的结合使用。  不说docker,咱们单独就etcd这个高可用键值来聊聊吧。...
阅读全文 1

Flask使用token来防御csrf跨站攻击

python 7,718 views
做pytoner工程师很多时候也是需要写web的。 那么你已经会碰到被攻击的危险。比如Csrf攻击,那么csrf是什么我这里就不再详细的描述,我想大家也应该知道。 Flask本身提供了插件,一些社区也在简单的token之上又做了一些关于csrf的防御。 图中Browse是...
阅读全文 2

Flask使用token来防御csrf跨站攻击

01-19 7,718 views

做pytoner工程师很多时候也是需要写web的。 那么你已经会碰到被攻击的危险。比如Csrf攻击,那么csrf是什么我这里就不再详细的描述,我想大家也应该知道。 F...
阅读全文 2

关于使用动态轮训切换ip防止爬虫被封杀

python 14,936 views
上次有说过,我在新公司有部分工作是负责爬虫业务的,爬虫机器有上百台,节点也要计划迁入了Docker平台上。  这两天遇到一个棘手的问题,就是因为我们为了追求数据量,在某些机房,用docker启动了不少爬虫节点,导致一些傻逼网站,开始封禁我们…. ̷...
阅读全文 7

关于使用动态轮训切换ip防止爬虫被封杀

01-12 14,936 views

上次有说过,我在新公司有部分工作是负责爬虫业务的,爬虫机器有上百台,节点也要计划迁入了Docker平台上。  这两天遇到一个棘手的问题,就是因为我们...
阅读全文 7

吐槽之关于influxdb聚合计算sum的问题

python 8,013 views
和朋友讨论了下关于influxdb在多个字段下的汇聚聚合计算,看官网的介绍貌似比较的简单,sum(a,b,c)就可以了 。  麻痹,就是不行….  …. 麻痹,爬虫真你妈霸道,原文地址是, xiaorui.cc Python ...
阅读全文 2

吐槽之关于influxdb聚合计算sum的问题

01-10 8,013 views

和朋友讨论了下关于influxdb在多个字段下的汇聚聚合计算,看官网的介绍貌似比较的简单,sum(a,b,c)就可以了 。  麻痹,就是不行….  …...
阅读全文 2

关于python使用AsyncInflux异步操作influxdb的方案

python 7,728 views
虽然Influxdb写入速度还是很给力,但是谁不想更给力呀.   在github看到了一个利用codap和gevent实现的针对influxdb异步的模块,测试了下,挺不错。  博客的原文地址是  ,   http://xiaorui.cc 最主要就是调用codap这个东...
阅读全文 0

关于python使用AsyncInflux异步操作influxdb的方案

01-06 7,728 views

虽然Influxdb写入速度还是很给力,但是谁不想更给力呀.   在github看到了一个利用codap和gevent实现的针对influxdb异步的模块,测试了下,挺不错...
阅读全文 0

大并发下socket通信连接时会导致TCP自连接

python 6,911 views
    今天是2015的第二天了, 心情有些不佳,遇到的狗屎问题更是心情不爽 !还好妈蛋的给解决了 !     问题提示说大不大,说小不小的 ~    TCP的自连接就是client和server bind的端口碰上了 !导致出现连接的异常。 用pyt...
阅读全文 1

大并发下socket通信连接时会导致TCP自连接

01-02 6,911 views

    今天是2015的第二天了, 心情有些不佳,遇到的狗屎问题更是心情不爽 !还好妈蛋的给解决了 !     问题提示说大不大,说小不小...
阅读全文 1

python multiprocessing之间的通信性能测试 Pipe vs Queue

python 8,626 views
今天12306的数据库爆出来了,午饭过后,自己搞了个针对12306密码查询的小api,结果影响有些大,VPS都挂了好几次 !  搞得哥们很是销魂呀 !  后来又听说,搞不好进去,尼玛    吓尿了 !  老规矩,标记下这篇文章的原文地址, http:...
阅读全文 2

python multiprocessing之间的通信性能测试 Pipe vs Queue

12-26 8,626 views

今天12306的数据库爆出来了,午饭过后,自己搞了个针对12306密码查询的小api,结果影响有些大,VPS都挂了好几次 !  搞得哥们很是销魂呀 !  后来...
阅读全文 2

python使用gipc实现gevent的多进程及ipc通信

python 8,930 views
今天在和FK聊天的时候,聊到了利用gevent的多进程模式,我和他交流了下,我的用法,其实模仿了php-fpm的进程模式,就是fork进程,然后开辟一个队列,这个队列是放链接的对象,然后每个进程里面也有一个gevent pool池另外还附带一个队列 。   main Thred的队列...
阅读全文 1

python使用gipc实现gevent的多进程及ipc通信

12-22 8,930 views

今天在和FK聊天的时候,聊到了利用gevent的多进程模式,我和他交流了下,我的用法,其实模仿了php-fpm的进程模式,就是fork进程,然后开辟一个队列,这个队...
阅读全文 1