<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[熠耀之森]]></title><description><![CDATA[互联网相关技术]]></description><link>https://blog.csdn.net/networm3</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; networm3]]></copyright><item><title><![CDATA[博客搬新家了]]></title><link>https://blog.csdn.net/networm3/article/details/50594009</link><guid>https://blog.csdn.net/networm3/article/details/50594009</guid><author>networm3</author><pubDate>Wed, 27 Jan 2016 14:28:24 +0800</pubDate><description><![CDATA[博客搬新家了，申请了个人域名www.lightthewoods.me，今后可能会有部分文章同步到CSDN，但是大部分会在新的个人博客发布，大家快来看看留个言吧~]]></description><category></category></item><item><title><![CDATA[当黑客马拉松遇上全栈工程师]]></title><link>https://blog.csdn.net/networm3/article/details/45483195</link><guid>https://blog.csdn.net/networm3/article/details/45483195</guid><author>networm3</author><pubDate>Mon, 04 May 2015 17:03:03 +0800</pubDate><description><![CDATA[4月17号参加了新浪微博平台架构组织的HackAthon24小时黑客马拉松活动。想想还是第一次参加这一类的技术活动，心情上感觉新奇又激情。其实感觉后端工程师在这种创新类比赛上优势不明显，幸遇@赵青-Q不嫌弃，热情的接纳了我，终于有机会得以参赛。





曾经听前辈们闲聊的时候提到过，黑客马拉松应该是起源于FaceBook的一些小活动。每到了周五的下午，开发任务不忙的工程师们会聚在一起]]></description><category></category></item><item><title><![CDATA[博客之星的评选结束了，为互联网后端的技术大牛们鸣不平]]></title><link>https://blog.csdn.net/networm3/article/details/43890383</link><guid>https://blog.csdn.net/networm3/article/details/43890383</guid><author>networm3</author><pubDate>Fri, 20 Feb 2015 21:39:40 +0800</pubDate><description><![CDATA[博客之星的评选结束了，我因为没有去拉票所以顺理成章的落选了。（平时经常转载我文章的各网站小编们怎么没有给我投个票啊！！！难道都是机器抓站吗。。。）翻看了博客之星排名前10的大神们的文章，发现基本上90%都是主要研究移动端相关领域的技术博文，如android HTML5等等。我个人觉得虽然移动端目前是互联网业务增长最快的一个发现，但是一个好的移动端应用，一个具有亿级用户的APP，是少不了一个稳定的后]]></description><category></category></item><item><title><![CDATA[长期关注我博客的朋友，期待你宝贵的一票]]></title><link>https://blog.csdn.net/networm3/article/details/42494807</link><guid>https://blog.csdn.net/networm3/article/details/42494807</guid><author>networm3</author><pubDate>Wed, 07 Jan 2015 16:14:40 +0800</pubDate><description><![CDATA[又到了博客执行评选的活动了，期待您宝贵的一票~
http://vote.blog.csdn.net/blogstar2014/details?username=networm3#content]]></description><category></category></item><item><title><![CDATA[多线程C调用python api的陷阱]]></title><link>https://blog.csdn.net/networm3/article/details/42423393</link><guid>https://blog.csdn.net/networm3/article/details/42423393</guid><author>networm3</author><pubDate>Tue, 06 Jan 2015 11:45:42 +0800</pubDate><description><![CDATA[众所周知，用脚本语言编写的服务（wsgi接口）都需要一个server容器，常见的如php的php-fpm, lightd等。python中一般是用的uwsgi，uwsgi是在wsgi的基础上的一种新的协议，可以用来部署python等脚本程序的运行。然而在不熟悉uwsgi的代码架构和c调用python的api情况下进行开发可能会遇到一些意想不到的问题。
我们先看一段代码，下面这段代码是用的Flas]]></description><category></category></item><item><title><![CDATA[轻轻松松在centos上部署docker服务]]></title><link>https://blog.csdn.net/networm3/article/details/38337057</link><guid>https://blog.csdn.net/networm3/article/details/38337057</guid><author>networm3</author><pubDate>Fri, 01 Aug 2014 15:45:59 +0800</pubDate><description><![CDATA[首先，因为docker的运行需要linux本身某些组件和内核特性的支持，所以要确保centos的版本大于6，并且内核版本大于2.6.32-431。可以简单的升级centos6到最新版本。
sudo yum upgrade

然后安装cgroup
sudo yum install libcgroup
service cgconfig start     #启动croup服务
lssubsys]]></description><category></category></item><item><title><![CDATA[谈谈如何设计秒杀服务]]></title><link>https://blog.csdn.net/networm3/article/details/38147007</link><guid>https://blog.csdn.net/networm3/article/details/38147007</guid><author>networm3</author><pubDate>Sat, 26 Jul 2014 17:33:50 +0800</pubDate><description><![CDATA[上周末去百度参加了一场LBS部门的招聘专场，虽然刚换了工作，但是人力资源美眉盛情邀请，而且是周末也不用请假，本着去学习的心态去试了一下。以前去百度面试过几次，面试官给人的感觉还是很nice的，虽然不会像很多外企的面试官会闲到给你讲课，但是会和你一起讨论面试的问题，共同的提高。
        百度招聘，区别于360等新兴创业型公司，更偏重于工程师的设计技能和思维方法。百度招聘不会深入的考察工程师]]></description><category></category></item><item><title><![CDATA[memcached源码探秘（一）—— hash_table]]></title><link>https://blog.csdn.net/networm3/article/details/37776165</link><guid>https://blog.csdn.net/networm3/article/details/37776165</guid><author>networm3</author><pubDate>Mon, 14 Jul 2014 23:35:09 +0800</pubDate><description><![CDATA[memcached在删除hash_table中的单向表的]]></description><category></category></item><item><title><![CDATA[memcached几个容易被忽略但非常有用的命令]]></title><link>https://blog.csdn.net/networm3/article/details/37741111</link><guid>https://blog.csdn.net/networm3/article/details/37741111</guid><author>networm3</author><pubDate>Mon, 14 Jul 2014 11:25:03 +0800</pubDate><description><![CDATA[Memcached从1.2.4版本新增CAS(Check and Set)协议，用于处理同一个ITEM（key-value）被多个session更新修改时的数据一致性问题。 
你曾经是否也有想知道memcached里面都存了哪些数据的需求，你是否也曾经在寻找一个方法能像redis一样可以遍历memcached所有的key]]></description><category></category></item><item><title><![CDATA[python的一个编解码错误]]></title><link>https://blog.csdn.net/networm3/article/details/31761795</link><guid>https://blog.csdn.net/networm3/article/details/31761795</guid><author>networm3</author><pubDate>Tue, 17 Jun 2014 14:33:43 +0800</pubDate><description><![CDATA[python的一个编解码错误
发表于2012/10/24由latlontude
(1)出错的代码

两者有什么区别呢？
这里的字符串格式化默认是先把每个对象转换为unicode的 (这里是按照a,b的类型进行判断确认最终输出字符串的编码，如果a,b都没有显式声明为unicode，则最终转换的类型为编码为sys.getdefaultencoding()得到的字符集，否则如果a/b任意一个为]]></description><category></category></item><item><title><![CDATA[Linus：利用二级指针删除单向链表]]></title><link>https://blog.csdn.net/networm3/article/details/19341657</link><guid>https://blog.csdn.net/networm3/article/details/19341657</guid><author>networm3</author><pubDate>Mon, 17 Feb 2014 16:43:48 +0800</pubDate><description><![CDATA[感谢网友full_of_bull投递此文（注：此文最初发表在这个这里，我对原文后半段修改了许多，并加入了插图）

Linus大婶在slashdot上回答一些编程爱好者的提问，其中一个人问他什么样的代码是他所喜好的，大婶表述了自己一些观点之后，举了一个指针的例子，解释了什么才是core
 low-level coding。

下面是Linus的教学原文及翻译——

“At the op]]></description><category></category></item><item><title><![CDATA[Tornado用回调代替gen]]></title><link>https://blog.csdn.net/networm3/article/details/17490319</link><guid>https://blog.csdn.net/networm3/article/details/17490319</guid><author>networm3</author><pubDate>Mon, 23 Dec 2013 18:01:18 +0800</pubDate><description><![CDATA[Tornado利用python的yield机制，用gen模块可以用同步的代码逻辑书写异步调用的代码。一般的，在程序开发过程中，方便的书写逻辑必然会带来运行上的额外开销。笔者的一个整合型爬虫服务设计大量的异步调用逻辑，出现HTTP超时的比例大概为1%，查看被调用的服务日志未出现超时，怀疑是gen的协程机制未有能使IOLoop的读时间及时响应。
下面就将常见的两种异步调用场景从Tornado的gen]]></description><category></category></item><item><title><![CDATA[OpenStack基础组件kombu杂谈]]></title><link>https://blog.csdn.net/networm3/article/details/17380635</link><guid>https://blog.csdn.net/networm3/article/details/17380635</guid><author>networm3</author><pubDate>Wed, 18 Dec 2013 09:56:12 +0800</pubDate><description><![CDATA[作为一个典型的分布式系统，OpenStack的各模块之间也需要进行大量的消息传递。OpenStack采用的是AMQP的消息队列方案。
AMQP是一个广泛使用的消息队列的规范。服务端常采用的是RabbitMQ（在AMQP的规范中，消息队列的服务端被成为broker），现在已收归vmware麾下，使用erlang实现。OpenStack除了支持RabbitMQ之外，还支持apache上开源的Qpid]]></description><category></category></item><item><title><![CDATA[redis设置key过期时间]]></title><link>https://blog.csdn.net/networm3/article/details/17266217</link><guid>https://blog.csdn.net/networm3/article/details/17266217</guid><author>networm3</author><pubDate>Wed, 11 Dec 2013 17:16:47 +0800</pubDate><description><![CDATA[redis是一个广泛应用的key-value型内存数据库，和memecached一样，key是可以被设置生存周期的。
redis设置key的过期时间非常简单：
SETEX mykey 10 "Hello"


这样就给mykey设置了10秒的生存周期。
但是当你使用了redis其他的数据结构，比如LIST，HMAP等，就没有现成的命令可以使用了。不过在redis中，上面的命令本来就等效]]></description><category></category></item><item><title><![CDATA[Tornado生产骨架——mownfish介绍]]></title><link>https://blog.csdn.net/networm3/article/details/17092883</link><guid>https://blog.csdn.net/networm3/article/details/17092883</guid><author>networm3</author><pubDate>Tue, 03 Dec 2013 15:39:05 +0800</pubDate><description><![CDATA[曾经给大家介绍了许多优秀的开源项目，今天为大家介绍我的在githup上开源的一个tornado生产骨架——mownfish（https://github.com/Ethan-Zhang/mownfish），欢迎大家拍砖~


Tornado是用python写的一个基于linux epoll的异步非阻塞IO实时框架，最早产生于FriendFeed，09年被Facebook收购并开源。这个框架被]]></description><category></category></item><item><title><![CDATA[Tornado多进程方式log切分错误的解决方案]]></title><link>https://blog.csdn.net/networm3/article/details/16806595</link><guid>https://blog.csdn.net/networm3/article/details/16806595</guid><author>networm3</author><pubDate>Mon, 18 Nov 2013 16:34:43 +0800</pubDate><description><![CDATA[tornado多进程log日志切分错误的解决方式]]></description><category></category></item><item><title><![CDATA[centos 终端字体错位个别字母中间有间隔的解决]]></title><link>https://blog.csdn.net/networm3/article/details/10175171</link><guid>https://blog.csdn.net/networm3/article/details/10175171</guid><author>networm3</author><pubDate>Thu, 22 Aug 2013 11:24:59 +0800</pubDate><description><![CDATA[yum -y install dejavu-sans-* dejavu-serif-fonts]]></description><category></category></item><item><title><![CDATA[SSH私钥管理ssh-agent的使用]]></title><link>https://blog.csdn.net/networm3/article/details/9699821</link><guid>https://blog.csdn.net/networm3/article/details/9699821</guid><author>networm3</author><pubDate>Thu, 01 Aug 2013 11:20:01 +0800</pubDate><description><![CDATA[我所在的公司是使用git来管理和部署源代码的，所以需要将自己的私钥从开发机带到线上机
ssh -A xxx@192.168.0.xxx
但是发现跳到线上机后进行git fetch，提示并没有找到开发机上得私钥，私钥没有带过来。经过几天搜索，发现是开发机需要启动ssh-agent
ssh-agent bash --login -i
ssh-add
这样就可以把自己的私钥加密缓存，ssh内部的]]></description><category></category></item><item><title><![CDATA[OpenStack源码探秘（二）——Oslo.config]]></title><link>https://blog.csdn.net/networm3/article/details/8946556</link><guid>https://blog.csdn.net/networm3/article/details/8946556</guid><author>networm3</author><pubDate>Sun, 19 May 2013 15:20:13 +0800</pubDate><description><![CDATA[OpenStack源码探秘（一）——Nova-Scheduler
OpenStack源码探秘（二）——Oslo.Config


最近因为一直忙于找工作和办理入职离职等相关手续，许久没有更新博客了。笔者这次换工作最后去了一家互联网公司，酷讯旅游。也是想体验一下互联网公司的文化和理念，学习一些这个领域的知识。工作内容大多是互联网应用的后台系统研发，常用语言是Python。酷讯总体上来说还是一]]></description><category></category></item><item><title><![CDATA[OpenStack源码探秘（一）——Nova-Scheduler]]></title><link>https://blog.csdn.net/networm3/article/details/8783667</link><guid>https://blog.csdn.net/networm3/article/details/8783667</guid><author>networm3</author><pubDate>Thu, 11 Apr 2013 10:25:47 +0800</pubDate><description><![CDATA[OpenStack源码探秘（一）——Nova-Scheduler
OpenStack源码探秘（二）——Oslo.Config

许久没有更新OpenStack源码探秘系列了。最近换工作颇不顺利，许多笔者心仪的公司都因为这样或那样的原因而失之交臂，这样下去可能会考虑到互联网公司做些服务器端的工作。晚上回到家心情都不太好，懒得动笔，不过经过了几天起伏，心态也慢慢调整过来了，今天就给大家分享一篇N]]></description><category></category></item></channel></rss>