- 浏览: 258145 次
- 性别:
- 来自: 北京
最新评论
-
knightniu:
请教下 3.没有消费的消息,中间可能会修改优先级 是怎么实 ...
activemq完全优先级队列的设置以及使用 -
xiaoyu966:
bewithme 写道我操,毕业6年就有50万,还有20万公积 ...
买房四部曲之纪念自己人生中第一次买房 -
xiaoyu966:
qindongliang1922 写道恭喜,有房族了 谢谢~小 ...
买房四部曲之纪念自己人生中第一次买房 -
bewithme:
我操,毕业6年就有50万,还有20万公积金,请问你是哪个单位的 ...
买房四部曲之纪念自己人生中第一次买房 -
qindongliang1922:
恭喜,有房族了
买房四部曲之纪念自己人生中第一次买房
文章列表
1. 前言
2005年,我怀着对大学生活无限的憧憬,上了某大学的软件工程专业。从报这个专业的第一天起,就听过无数软件行业是“青春饭”的言论。时至今日,当年青涩的毛头小子也已工作了8年之久,转眼就步入了而立之年,并且成为了一个孩子的父亲。
现在说IT行业是“青春饭”的言论已经少了很多,但是对于IT行业”中年危机“的讨论越来越多,尤其是前端时间华为那个34岁员工被裁员的事儿,引爆了大小媒体。
最近几年对于”中年危机“这方面也思考了很多,下面分享一下自己应对中年危机的一些目标和规划。
2. 目标与规划
总目标:平稳的度过”中年 ...
背景
很多人在同步异步、阻塞非阻塞这2组概念上不能讲的很清楚,而且网络上也有几种完全不同的看法,总之这个部分有不少争议。
笔者也在这部分困惑过,花了一些时间去弄透这个问题,以下是个人理解的一些总结。希望能帮到大家。
1. 通用概念
例子:”我”烧水(注意:这里的主语是”我”,也就是我们讨论的who)
1.1. 同步异步
1.1.1. 例子
关注点:是否需要”我主动”去看水烧开没(注意,”我”和”主动”这两个词)
同步:“我”要主动看水烧开没
异步:不需要”我”主动去看水烧开,水壶响了通知”我”
1.1.2. 概念
抽象概念:事情执行者对事情结果的获取机 ...
从决定买房到签约,历时5天,和做梦似得就完成了自己第一次买房子。至今心情还是没那么平静(主要是太快了!都没反应过来,原谅我脆弱的小心灵= =#),所以整理整理心情后,决定分享一下自己买房的经历和自己的一些心得,希望帮助到一些朋友! 一部曲:背景 楼主毕业6年,外地户口。2015年刚刚具有买房资格,手里头攒了不到50万现钱,另外公积金账户有20万。
前言
Tornado是很优秀的非阻塞式服务器,我们一般用它来写Web 服务器,据说知乎就是用Tornado写的。
为了更好的用Tornado来编写程序,用了点时间把它的源码详细阅读了一下。主要关注的是Tornado如何实现的异步Server和异步Client。这里我先把分析异步client时跟踪源码的记录整理之后放上来,便于以后回忆和翻阅。
读者可以通过我这篇文章作为阅读Tornado源码的一个参考,如果你希望比较透彻的了解Tornado,切记不要放过任何你觉得有疑问的地方,实在不懂的部分,可以先放过,之后再回头儿看。
如果对tornado源码不是很了解,可以先 ...
开始之前,推荐一个专栏:http://developer.51cto.com/developer/top10Architect/
我们期待自己成为一个优秀的软件模型设计者,但是,要怎样做,又从哪里开始呢?将下列原则应用到你的软件工程中,你会获得立杆见影的成果。
1. 人 ...
============================================================================
原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。
请注明转自:http://yunjianfei.iteye.com/blog/
============================================================================
问题描述
1.开启多个GearmanServer,端口号分别为4730、4731
2.使用python-gearm ...
============================================================================
原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。
请注明转自:http://yunjianfei.iteye.com/blog/
============================================================================
一.状态机简单介绍
软件设计中的状态机概念,一般是指有限状态机(英语:finite-state machine,缩写:FS ...
============================================================================
原创作品,允许转载。转载时请务必以超链接形式标明原始出处、以及本声明。
请注明转自:http://yunjianfei.iteye.com/blog/
============================================================================
最近在用tornado写一个基于Rest的WebService服务端,只提供后端服务,其他webserver应用通 ...
一. 结论:
1. nginx最多只能维持(65535*后端服务器IP个数)条websocket的长连接,如果后端websocket服务器IP只有一个,那么就只能最多支持65535条连接。瓶颈就产生在了nginx上。
2. 建议采用LVS的DR模式来做负载均衡,这样最大 ...
问题描述
相关组件:
1. WebService:对外提供web接口服务,这里启动了5个(端口分别为:9001-9005)
2. nginx:反向代理5个webService做负载均衡(nginx对外提供9999端口服务)
3. httpclient:调用nginx的9999端口访问webService提供的http接口 ...
问题现象
手头一个系统上线后,节点机中agent应用在运行10天后,占用系统内存居然高达10GB以上,这显然是发生了严重内存泄露。
问题原因
python是动态语言,对用动态语言的内存分析不是很容易,尝试了一下比较经典的内存分析工具meliae,但是发现不是很好用。查了很多资料后,发现了https://github.com/pympler/pympler 这个工具,官方文档地址为:
http://pythonhosted.org/Pympler/tutorials/muppy_tutorial.html
具体的分析过程我就不在这里描述了,大家可以通过pympler的官方文档去 ...
问题描述
Nginx的日志出现大量的upstream time out, dmesg 和 /var/log/messages查看系统日志后,发现很多的错误日志:ip_conntrack: table full, dropping packet
问题原因
nf_conntrack工作在3层,查看当前连接数的命令如下:
# grep conntrack /proc/slabinfo
nf_conntrack 跟 nat 有关,用来跟踪连接条目,它会使用一个哈希表来记录 established 的记录。nf_conntrack 在 2.6.15 被引入,如果该哈希表满了,就会出现: ...
什么是systemtap
SystemTap 是监控和跟踪运行中的 Linux 内核的操作的动态方法。
假如现在有这么一个需求:需要获取正在运行的 Linux 系统的信息,如我想知道系统什么时候发生系统调用,发生的是什么系统调用等这些信息,有什么解决方案呢?
最原始的方法是,找到内核系统调用的代码,加上我们需要获得信息的代码、重新编译内核、安装、选择我们新编译的内核重启。这种做法对于内核开发人员简直是梦魇,因为一遍做下来至少得需要1个多小时,不仅破坏了原有内核代码,而且如果换了一个需求又得重新做一遍上面的工作。所以,这种调试内核的方法效率是极其底下的。
之后内核引入了一种Kpr ...
前言
在下面这个博客里,介绍了tornado的异步TCPServer和TCPClient。
http://yunjianfei.iteye.com/blog/2186646
那么,tornado的性能到底怎么样呢?让我们来做一个性能测试吧。
这里推荐关于C10K问题的一个文章:http://www.kegel.com/c10k.html
...
背景
关于tornado,我这里就不详细讲了,有兴趣的同学可以通过以下两篇博客了解一下:
http://yunjianfei.iteye.com/blog/2185476
http://yunjianfei.iteye.com/blog/2185446
我们一般用tornado来编写web程序,但实际上,tornado底层的代码非常优秀,也可以用这些代码来编写TCP应用。
github地址:https://github.com/yunjianfei/tornado-async-tcp
代码
tornado最突出的特点就是“异步”,所以,我这里编写了一个异步的TC ...