随笔分类 -  Erlang

From Sharp to Erlang 
[Erlang 0112] Elixir Protocols
摘要:C#中的Extension Methods,Clojure的Protocol,以及Elixir Protocols 阅读全文
posted @ 2013-12-18 17:12 坚强2002 阅读(2369) 评论(0) 推荐(1) 编辑
[Erlang 0111] Erlang Abstract Format , Part 2
摘要:上回书,我们说到飞天玉虎蒋伯芳来到蜈蚣岭,不是,不是,上回咱们说到可以在Erlang Shell里面手工构造,加载并调用一个模块.在那个demo里面,我把多个Form单独生成出来,最后放在一起做compile:forms,是不是可以简单点?我们先看完整的module代码,erl_scan:string之后是什么样子的: 阅读全文
posted @ 2013-12-10 17:22 坚强2002 阅读(2733) 评论(2) 推荐(1) 编辑
[Erlang 0110] Erlang Abstract Format , Part 1
摘要:Erlang Abstract Format并不难懂,只是枯燥一点罢了,如果把Abstract Format的文档翻译出来,其实就是Erlang教科书中语法入门的部分. Erlang Abstract Format实际上是用Erlang代码的AST,下面通过一些真切的实例代码了解一下它的一些细节.本文略长. 阅读全文
posted @ 2013-12-10 10:54 坚强2002 阅读(2535) 评论(1) 推荐(1) 编辑
[Erlang 0109] From Elixir to Erlang Code
摘要:Elixir代码最终编译成为erlang代码,这个过程是怎样的?本文通过一个小测试做下探索. 阅读全文
posted @ 2013-11-25 16:53 坚强2002 阅读(2807) 评论(0) 推荐(0) 编辑
[Erlang 0108] Elixir 入门
摘要:如果你想用Erlang但是不喜欢它的语法,Elixir可能是一个新的机会. 阅读全文
posted @ 2013-11-07 12:51 坚强2002 阅读(9642) 评论(1) 推荐(2) 编辑
[Erlang 0107] Erlang实现文本截断
摘要:文本截断很简单,但是要是文本中有中文呢? 前段时间有网友 @稻草人 问字符串截断的问题"各位大侠erlang截取字符串一般用哪个函数啊",有人支招用string:substr/3,紧接着他补充了一下"大侠们 一个字符串有汉字和字母组合我想截取 但是不管用什么方法每个汉字的长度都是3 字母是1 截取出来总是有乱码 还望高手们赐教",我们一步步看看这个问题. 阅读全文
posted @ 2013-10-11 08:42 坚强2002 阅读(5013) 评论(3) 推荐(0) 编辑
[Erlang 0106] Erlang实现Apple Push Notifications消息推送
摘要:我们的IOS移动应用要实现消息推送,告诉用户有多少条消息未读,类似下图的效果(笑果),特把APNS和Erlang相关解决方案笔记于此备忘. 阅读全文
posted @ 2013-10-09 13:18 坚强2002 阅读(4899) 评论(2) 推荐(0) 编辑
[Erlang 0105] Erlang Resources 小站 2013年1月~6月资讯合集
摘要:很多事情要做,一件一件来; Erlang Resources 小站 2013年1月~6月资讯合集,方便检索. 阅读全文
posted @ 2013-07-24 18:14 坚强2002 阅读(4581) 评论(0) 推荐(0) 编辑
[Erlang 0104] 当Erlang遇到Solr
摘要:Joe Armstrong的访谈中有一段关于"打开黑盒子"的阐述,给我留下很深的印象:Joe Armstrong在做XWindows开发时没有使用对应的类库,而是在了解XWindows底层实现后选择了直接和套接字通信,"把这20条消息映射到Erlang术语上,变个小魔术,然后可以向窗口直接发送消息,它们就开始执行动作了". [访谈全文] 回到今天的任务:Erlang使用Solr服务?当问题落实到数据通信协议的时候,就豁然开朗了,转换为我们熟悉的技术方案组合. 阅读全文
posted @ 2013-07-23 17:07 坚强2002 阅读(3223) 评论(3) 推荐(0) 编辑
[Erlang 0103] Erlang Resources 资讯小站
摘要:好久没有写博客,是懒了吗?不是;前面两个月在紧张地推进一个项目,中间积累了一些RabbitMQ和Erlang的东西;本打算在项目结束之后赶紧总结一下,结果老婆怀孕之后生活节奏大乱:早起做饭,晚上回去做饭,洗刷碗筷,衣服,等忙完了也就精疲力尽了... 阅读全文
posted @ 2013-07-01 21:20 坚强2002 阅读(2464) 评论(7) 推荐(1) 编辑
[Erlang 0102] 愚人节消息 too_big_to_fail_process
摘要:Joe Armstrong 在愚人节介绍了too_big_to_fail flag,这个东西真是好多疑问啊,希望不是愚人节的一个玩笑. 阅读全文
posted @ 2013-04-02 12:06 坚强2002 阅读(1839) 评论(0) 推荐(1) 编辑
[Erlang 0101] Gproc:扩展进程注册机制
摘要:Erlang 进程字典(process dictionary)目前的限制是:names只能是atom,一个进程只能注册一个name,不能进行高效的搜索和遍历,进程信息的检索是通过遍历检查进程的元数据完成的. Ulf T. Wiger的开源项目 Gproc 就是解决上面问题的,难得的是这个项目的文档,范例,测试代码相当完整,还有专门的论文讲述整个项目的来龙去脉,设计取舍. 阅读全文
posted @ 2013-03-25 21:14 坚强2002 阅读(4359) 评论(8) 推荐(0) 编辑
[Erlang 0100] make_ref 与 Selective Receive
摘要:春节前后出于对STM和Lisp宏的好奇一直在关注Clojure,新年过后对于Erlang开发者还是有不少好消息,有两本Erlang的新书出版:第一本是O'Reilly公司的小册子"Introducing Erlang";一本是著名的LYSE,这本书终于从有了正式出版的版本,在此之前有热心的网友编译成电子书,印刷版排版精美保持了原站图文并茂的风格.目前这两本电子书都很容易下载到电子版,请自行搜索. 阅读全文
posted @ 2013-03-06 12:12 坚强2002 阅读(3250) 评论(0) 推荐(0) 编辑
[Erlang 0099] Reduction 一点细节
摘要:公平调度实际上有3部分: erlang函数调用,由于erlang的代码翻译成opcode,由虚拟机执行,所以一次完整的函数调用为一个reduction. 因为erlang的函数通常都是递归执行的,所以函数体一般很小。 bif的trap机制。简单的说就是bif会执行到大概几个reduction这样的时间片后放弃执行,把当前的执行情况记录下来,然后退出。等下次调度再执行的时候,会继续之前的位置往下。 IO的调度。 IO也是公平调度的,把IO的处理量换算成reduction,算在宿主进程的时间片里面。 阅读全文
posted @ 2013-01-08 12:52 坚强2002 阅读(2338) 评论(0) 推荐(1) 编辑
[Erlang 0098] net_kernel与节点互连,断开,监控
摘要:之前记录过 net_kernel:monitor_nodes订阅node连接\断开消息,魔鬼在于细节(Devils are in the details),这个模块还是有一些细节要注意,特别是官方文档上语焉不详的问题.本文关注net_kernel在节点互连,断开,状态监控的一些功能细节. 阅读全文
posted @ 2012-12-27 21:24 坚强2002 阅读(6788) 评论(0) 推荐(1) 编辑
[Erlang 0097] TCP半开的几个小测试
摘要:TCP半开的几个测试,比较简单都在Erlang Shell中完成.立此存照,备忘. 阅读全文
posted @ 2012-12-26 16:34 坚强2002 阅读(3941) 评论(0) 推荐(0) 编辑
我的2012
摘要:这是今年的第91篇博文,又到岁末年初,总结一下过去一年,赶在所谓"末日"之前发出去.这一年,仿佛又只是隔了几篇随笔. 阅读全文
posted @ 2012-12-20 11:34 坚强2002 阅读(2337) 评论(6) 推荐(3) 编辑
[Erlang 0096] RabbitMQ Boot Step
摘要:RabbitMQ启动过程中复杂的依赖关系,以及灵活扩展的要求,不可能随机顺序启动或者硬编码启动顺序. 之前提到RabbitMQ会把启动过程分成若干阶段,按照依赖关系进行启动.rabbit_boot_step里面的requires 和 enables配置节是描述这种依赖关系的关键.require约定了该项目启动所依赖的前置条件,enables 表示当前项目启动之后可以启动什么;如果有多个项目enable一个项目(比如:external_infrastructure),要等这些项目都启动了external_infrastructure 才可以启动. 阅读全文
posted @ 2012-12-14 18:00 坚强2002 阅读(2915) 评论(0) 推荐(0) 编辑
[Erlang 0095] 善用 Erlang module_info
摘要:在.net里面我们可以使用Attribute和反射在运行时完成对程序集元数据的解析; 在Erlang中,也可以做类似的事情,我们可以通过module_info获取模块的元数据;RabbitMQ的启动过程就是一个绝佳的范例. 阅读全文
posted @ 2012-12-12 20:33 坚强2002 阅读(5702) 评论(1) 推荐(0) 编辑
[Erlang 0094] Erlang 杂记 VI
摘要:最近一直忙Storm相关的东西,今天抽时间整理一下Erlang笔记,这一次的内容主要是一些开源项目:Mock ,worker pool...... 阅读全文
posted @ 2012-12-11 21:31 坚强2002 阅读(3912) 评论(2) 推荐(0) 编辑

  我,技术人,身体变胖,头脑依然灵活,喜欢Erlang .net,非著名技术博客,翻译过大师经典文章,也原创了不少.在技术之路上沉思,不断重构着不太优秀的自己.爱生活,爱Erlang!