自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 erlang host address

在rabbitMQ看到一段关于转换地址的代码:留着以后用[code="erlang"]%% inet_parse:address takes care of ip string, like "0.0.0.0"%% inet:getaddr returns immediately for ip tuple {0,0,0,0},%% and runs 'inet_gethos...

2014-03-07 13:40:21 156

record小记

今天阅读rabbitMQ代码,遇到一段代码很疑惑:[code="java"]try log(info, "liufan the #v is ~p~n", [#v1.stats_timer]), run({?MODULE, recvloop, run({?MODULE, recvloop, [Deb, swit...

2014-03-06 17:46:32 145

Distributed Semaphores with RabbitMQ

翻译自(http://www.rabbitmq.com/blog/2014/02/19/distributed-semaphores-with-rabbitmq/)在这篇博客里面,我们将定位“在一个分布式系统里面,如何实现对特殊资源的访问控制”的问题,解决该问题的方案在计算机界广为人知,那就是被成为信号量的东东。“信号量”是在1965年Dijkstra的“Cooperating Seque...

2014-03-04 21:54:00 197

原创 保存yum下载下来的rpm包

修改/etc/yum.conf配置文件里的keepcache=0修改为keepcache=1这样yum下载下来的rpm就会保存在cachedir=/var/cache/yum下面

2014-02-12 14:28:39 454

原创 工作沟通二

工作中总会遇到一些困难的事,每个人面对这些事的时候,会有不同的心态:直接放弃、凑活着做,将过且过、破罐子破摔,尽量想通过其它途径来使事情向好的方向发展,能使自己看到一点点希望。在这个过程中,你的心里会进行激烈的挣扎,而自己能挺过这段难熬的时间,把事情做下去,也许你会看到不一样的风景。 一个积极向上的人,在能力上的进步是不用担心的,但心态的成长是需要过程的,希望自己越做越好。 :ide...

2013-09-25 23:40:45 270

原创 工作沟通一

自己接到了一个领导派发的任务,而在任务的执行过程中,自己会遇到各种各样的问题:与相关人员的沟通交流、遇到了难题、遇到了需要和相关人员沟通交流才能解决的问题、还有自己无法处理的意外情况。 当自己遇到各种情况的时候,需要分清事情的轻重缓急,有些自己可以解决,有些需要协商的,还有些是自己hold不住的。当自己遇到自己hold不住的问题,这时就需要向自己的上级领导反映了,不能让事情压在自己这里,...

2013-09-24 22:57:56 140

原创 system_info模块

在看了[url=http://blog.yufeng.info/archives/2799]Erlang新增全面的系统信息收集器-system_information模块[/url]之后,自己下载最新的代码,查看该模块,仔细看了一下[code="erlang"]report() -> [ {init_arguments, init:get_arguments()}, {cod...

2013-07-31 22:16:29 383

原创 erlang的gdb调试

当我们完成erlang的正常配置和编译后,我们可以构建一个debug模式的erlang运行时系统,过程如下:[list][*]首先我们再源代码的根目录导出ERL_TOP环境变量:export ERL_TOP=`pwd`[*]然后进入$ERL_TOP/erts/emulator目录下面,执行:make debug FLAVOR=smp或者make debug FLAVOR=plain...

2013-07-08 21:00:45 388

原创 ${1+"$@"}

今天看到erl启动脚本的时候,看到[code="shell"]ROOTDIR="/usr/local/lib/erlang"BINDIR=$ROOTDIR/erts-5.10.2/binEMU=beamPROGNAME=`echo $0 | sed 's/.*\///'`export EMUexport ROOTDIRexport BINDIRexport PR...

2013-07-07 15:11:08 893

原创 SystemTap and Erlang: a tutorial

参照该文章安装[url=http://www.snookles.com/slf-blog/2011/11/19/systemtap-and-erlang-a-tutorial/]SystemTap and Erlang: a tutorial[/url]

2013-07-06 19:16:35 111

原创 列表[A||boolen]

今天读到[url=https://github.com/basho/riak_sysmon/blob/master/src/riak_sysmon_filter.erl]riak_sysmon[/url]时,看到列表解析的特殊用法,以前没见过,特做下笔记。[code="java"]%%-----------------------------------------------------...

2013-07-06 16:14:48 121

原创 erlang的erl_eval

自己尝试使用erl_eval做一些联系,发掘改模块的功能:[code="shell"][root@dev-emp-com work]# erlErlang R14B (erts-5.8.1) [source] [64-bit] [smp:2:2] [rq:2] [async-threads:0] [hipe] [kernel-poll:false]Eshell V5.8.1 ...

2013-07-05 13:56:00 589

原创 使用erlang实现动态替换字符串中的变量

通过erlang,我们可以使用{ok, Ts, _} = erl_scan:string(String).来获取Tokens,然后调用:{ok, Expr} = erl_parse:parse_exprs(Ts).转换成可以执行的表达式,之后通过erl_eval:exprs(Expr, Binding).来执行表达式。实验步骤如下:[code="shell"]1...

2013-07-05 13:18:02 511

原创 使用erlang的动态执行编写DSL

今天看到[url=http://www.cnblogs.com/me-sa/archive/2012/02/29/erlang0042.html]Erlang 动态执行[/url]和[url=http://blog.yufeng.info/archives/78]erlang动态解释[/url],实验的代码如下:[code="erlang"]-module(dsl).-comp...

2013-07-05 12:54:55 173

原创 Erlang如何查看gen_server系列的状态 (高级)

引用[url=http://blog.yufeng.info/archives/99]Erlang如何查看gen_server系列的状态 (高级)[/url][quote] gen_server在erlang otp编程中的地位是无可撼动的,几乎都是gen_server或者gen_fsm的模型。那么程序运行起来的时候 我们如何查看gen_server的内部状态呢。有2种方法:1. 自己...

2013-07-05 09:16:42 329

原创 通过port获取相应的节点名

今天看了霸爷的[url=http://blog.yufeng.info/archives/36]节点间通讯的通道微调[/url]和[url=http://blog.yufeng.info/archives/2659]谁引起busy_dist_port[/url]之后,自己将两章的内容连起来,组合成一个小程序,通过节点名查到相应的port,然后通过port查到相应的节点名,代码如下:[code=...

2013-07-04 23:41:19 237

原创 erlang的abstract_code代码

在看了霸爷的[url=http://blog.yufeng.info/archives/76]erlang的abstract code[/url]之后,自己动手实验了一下,效果如下:[code="shell"][liufan@liufan abstract_code]$ erl -s hello -s erlang haltErlang R16B01 (erts-5.10.2) [so...

2013-07-04 21:04:30 253

原创 实验CPU密集型计算

今天实验了一下霸爷博客里的CPU密集型计算,计算的内容时计算四遍斐波纳妾数列的第四十个元素是多少代码如下:cpu_intensive.erl[code="erlang"]-module(cpu_intensive).-compile([export_all]).fib_test() -> fib(40), fib(40), fib(40), fib(...

2013-07-04 20:40:57 282

原创 erlang判断内部pid的方法

在erl_term.h文件里:[code="c"]#define _TAG_IMMED1_PID ((0x0

2013-07-04 13:48:12 491

原创 使用gcc编译c代码的时候报错

[b]今天编译erlang自带的ei_interface的例子时,报错如下[/b][code="shell"][liufan@liufan src]$ gcc -o extprg -I/usr/local/lib/erlang/lib/erl_interface-3.7.13/include/ -L/usr/local/lib/erlang/lib/erl_interface-3.7.13...

2013-07-03 21:51:08 309

原创 inet:setopts/2函数

下面引用[url=http://blog.yufeng.info/archives/336]霸爷[/url]的话,给自己做一个笔记[quote]inet_drv内部每个socket都有个消息队列, 保持着上层推来的消息. 这个消息队列有上下水位线的. 当消息的字节数目超过了高水位线的时候, inet_drv就把socket标志为busy. 这个busy要到队列的字节数少于低水位线的时候才解...

2013-07-03 16:18:14 336

原创 erlang的内联编译

今天再[url=http://www.cnblogs.com/me-sa/archive/2012/01/09/erlang0029.html]erlang inline 编译[/url]中读到erlang的函数也可以内联编译。但是内联功能从来不会默认打开的。如果想使用的话,必须显示的在代码里使用-compile()属性。当再代码里加上-compile(inline).时,编译器会根据自己...

2013-07-02 23:42:59 164

原创 erlang:port_command函数

今天读到[url=blog.yufeng.info]褚霸[/url]博客里的[url=blog.yufeng.info/archives/336]gen_tcp:send的深度解刨和使用指南(初稿)[/url]时,顺着霸爷的思路,跟着lib/kernel/src/gen_tcp.erl[code="erlang"]send(S, Packet) when is_port(S) ->...

2013-07-02 22:10:26 1381

原创 iolist类型

今天读到http://blog.yufeng.info的[url=http://blog.yufeng.info/archives/336]gen_tcp:send的深度解刨和使用指南(初稿)[/url],看到下面这句:[quote]gent_tcp:send的时候数据的格式是iolist. 很多人会误会,特地把iolist特地变成list或者binary. 新生成的binary或者lis...

2013-07-02 21:47:02 480

原创 /etc/security/limits.conf文件

今天看到ulimit命令,追溯到limits.conf文件,自己大概梳理了一下这个文件的配置,下面是文件自带的注释:[code="shell"]# /etc/security/limits.conf##Each line describes a limit for a user in the form:## ##Where:# can be...

2013-07-02 19:38:47 140

原创 epmd的启动参数3

和epmd相关的环境变量[list][*]ERL_EPMD_RELAXED_COMMAND_CHECK[*]ERL_EPMD_PORT[*]ERL_EPMD_ADRESS[/list]相关的使用如下:[code="shell"][liufan@liufan ~]$ export ERL_EPMD_RELAXED_COMMAND_CHECK=TRUE[liufan...

2013-07-01 21:28:27 2966

原创 epmd的启动参数2

使用epmd的-port选项时,实验的例子是:[code="shell"][liufan@liufan ~]$ echo $ERL_EPMD_PORT[liufan@liufan ~]$ export ERL_EPMD_PORT=4444[liufan@liufan ~]$ epmd -depmd: Tue Jul 2 05:00:39 2013: epmd runnin...

2013-07-01 21:07:33 199

原创 epmd的启动参数1

当使用epmd -address时,后面跟的IP_LIST是让epmd监听自己电脑的哪个ip的,例如:[code="shell"][liufan@liufan ~]$ epmd -address 192.168.1.110 -depmd: Tue Jul 2 04:43:17 2013: epmd running - daemon = 0epmd: Tue Jul 2 04:4...

2013-07-01 20:51:40 364

原创 erlang的epmd

epmd有一个-stop的选项,当要是用[code="shell"]$epmd -stop name[/code]的时候,本机启动的第一个erlang shell时要加上-relaxed_command_check选项,例如:[code="shell"]erl -sname -epmd "epmd -relaxed_command_check -daemon"[/code]这样的话...

2013-07-01 20:29:09 272

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除