会员
周边
众包
新闻
博问
闪存
赞助商
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
_00
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
下一页
2015年5月6日
杂记 -- 时间段内应用程序调用次数限制
摘要: 为了避免系统过载, 对系统做负载保护, 往往需要对系统被调用次数做一定的限制, 比如一段时间内调用次数不能超过某个值.先简化下场景, 让描述变得简单一些, 系统在任意60秒内只允许10次调用.絮絮叨叨有一种方案, 是初始化limit(10), 每次调用将limit减1, 每隔60秒, 将limit ...
阅读全文
posted @ 2015-05-06 12:16 _00
阅读(1922)
评论(0)
推荐(0)
编辑
2015年4月11日
rabbitmq -- networking
摘要: RabbitMQ大名鼎鼎, 其networking 部分经常被众多Erlang 程序员, 爱好者分析. 小的时候就见到很多人写过这方面的blog, 比如:1,http://www.blogjava.net/killme2008/archive/2009/11/29/304079.html2,http...
阅读全文
posted @ 2015-04-11 17:50 _00
阅读(1339)
评论(0)
推荐(0)
编辑
2015年4月1日
Erlang tool -- recon
摘要: 遇见recon 以来, 每次定位系统瓶颈, 总是能让我眼前一亮. 比如说, 定位非尾递归导致的内存暴涨, 定位引发CPU满载的进程.得心应手,每每额手称庆.recon是ferd 大神 释出的一个 用于生产环境诊断Erlang 问题的一个工具, 不仅仅是对Erlang stdlib 接口的封装, 还有...
阅读全文
posted @ 2015-04-01 21:35 _00
阅读(1687)
评论(1)
推荐(2)
编辑
2015年3月17日
Erlang tool -- lager overload protection
摘要: log 这个事, 说大不大说小又不小. 大点的, 可以用scribe flume 这样的系统去做, 小点的, 也就打印一个调试信息而已. 在Erlang 中, log 这事情确实比较伤, error_logger 是个单点, io:format 容易导致节点崩溃. 在开源社区, lager 算是使用...
阅读全文
posted @ 2015-03-17 23:38 _00
阅读(2170)
评论(0)
推荐(0)
编辑
2015年3月6日
Erlang ets -- something about cache continue
摘要: 上一次说到了实现一个简单cache 的基本思路和想法,http://www.cnblogs.com/--00/p/erlang_ets_something_about_cache.html在文末, 说到了判断single record 内存占用量. 这次继续说说Erlang 数据项内存的相关问题.在...
阅读全文
posted @ 2015-03-06 15:24 _00
阅读(1666)
评论(0)
推荐(2)
编辑
2015年3月2日
Erlang ets -- something about cache
摘要: 都说用ets 写一个cache 太简单, 那就简单的搞一个吧, 具体代码就不贴了, 就说说简要的需求和怎么做(说设计有点虚的慌).需求场景>> 查询系统,对于主存储而言,一次写入多次查询所以,cache 需要能实现:UserA 在查询 RecordA 时, UserB 也需要查询RecordA, 就...
阅读全文
posted @ 2015-03-02 18:44 _00
阅读(1456)
评论(0)
推荐(0)
编辑
2015年2月24日
Erlang process structure -- refc binary
摘要: Erlang 的process 是虚拟机层面的进程,每个Erlang process 都包括一个 pcb(process control block), 一个stack 以及私有heap .这部分的姿势, 在各种论文中都有提到. 网上也有各种各样的解读,包括但不仅限于:1,http://fengch...
阅读全文
posted @ 2015-02-24 21:03 _00
阅读(4055)
评论(0)
推荐(0)
编辑
2015年2月12日
Erlang pool management -- RabbitMQ worker_pool 2
摘要: 上一篇已经分析了rpool 的三个module , 以及简单的物理关系. 这次主要分析用户进程和 worker_pool 进程还有worker_pool_worker 进程之间的调用关系. 在开始之前, 必须先明确一点, 就是一个worker_pool_worker 进程只有在处理完一个用户进程的任...
阅读全文
posted @ 2015-02-12 18:44 _00
阅读(1202)
评论(0)
推荐(0)
编辑
2015年2月11日
Erlang pool management -- RabbitMQ worker_pool
摘要: 在RabbitMQ中,pool 是以worker_pool 的形式存在的, 其主要用途之一是对Mnesia transaction的操作. 而在RabbitMQ 中, pool 中的worker 数量是固定不变的, 是和虚拟机的schedulers 相关.这次会首先分别分析设计worker_pool...
阅读全文
posted @ 2015-02-11 23:50 _00
阅读(1524)
评论(0)
推荐(0)
编辑
2015年2月10日
Erlang pool management -- Emysql pool optimize
摘要: 在上一篇关于Emysql pool (http://www.cnblogs.com/--00/p/4281938.html)的分析的最后提到现在的emysql_conn_mgr gen_server 进程属于单点,也就是所有的pool 的管理调度都是由一个进程来完成.如果在同一个Erlang nod...
阅读全文
posted @ 2015-02-10 21:02 _00
阅读(1386)
评论(3)
推荐(0)
编辑
上一页
1
2
3
下一页