CERL
文章平均质量分 75
xushiweizh
这个作者很懒,什么都没留下…
展开
-
计划在C++建立仿Erlang式的分布式并行机制
梳理了下需求,大体如下:进程(Process)。进程是Erlang中一个虚拟的运行单位。既不是操作系统的进程,也不是线程,而是比线程更加轻量的单位,更接近于协程。命名进程(NamedProcess)。命名进程的好处是,你可以向一个不知道进程ID的进程发送消息。由于进程可能会宕掉(crash),进程ID可能会发生变化,所以在考虑了异常的环境下,命名进程降低了编码的难度(你不再需要考虑进程原创 2009-04-15 01:49:00 · 5850 阅读 · 7 评论 -
CERL2 系列2:网络编程该用同步还是异步?
在C/C++中,libevent、boost asio 这两个网络库都采用异步编程模型,当IO完成事件发生时,调用一个回调函数处理它。这种编程模型有很好的IO吞吐量。但是付出的代价也很大:丑陋的代码。应用程序逻辑被一个个回调函数切割得支离破碎。复杂的内存管理。一个不小心,就有可能出现回调函数执行的时候,相应的内存已经被释放。调试困难。由于函数被切割,Debug的时候,代码执行顺序不原创 2010-01-12 01:18:00 · 8081 阅读 · 65 评论 -
CERL2 系列1: Hello,CERL2!纤程!
CERL2 经过一段时间的发展,已经稳定下来,是时候揭开它的面纱了。和 CERL2 最初设想并不一样,CERL2 最终没有成为一种语言,它在 CERL 上进行了编程模型的演化,并且形成了多个子库。最主要的两个子库为 async 和 venus。最底层的是 async,它需要针对不同的平台进行包装,以此形成一个网络层。你可以 拿 async 和 boost asio 类比,两者确实是类似的东西,只原创 2010-01-08 01:38:00 · 10681 阅读 · 6 评论 -
CERL2 系列6:SDL,面向数据流的网络协议
在《CERL2 系列5:SDL与我对网络协议的思考》一文中,尽管我对 SDL 的来龙去脉做了介绍,但是我发现还是遗漏了非常重要的内容。朋友们可能会问,SDL看起来不就是一个普通的IDL(接口描述语言)吗,为什么不直接沿用一个现成的标准呢? 很多时候,看似相似的东西却会是貌似神不是。正是因为我觉得IDL并不符合我对网络接口协议的观点,所以才有了 SDL。 首先,多数 IDL 都是面向原创 2010-01-20 01:37:00 · 6054 阅读 · 20 评论 -
CERL2 系列4:CERL体系与框架概览
在《CERL2 系列1: Hello,CERL2!纤程!》中,我们提到:CERL2 在 CERL 上进行了编程模型的演化,并且形成了多个子库。最主要的两个子库为 async 和 venus。 我们这一篇中,将更加详细地描述 CERL2 的整体框架体系。先一图概括之: async原创 2010-01-17 12:55:00 · 6074 阅读 · 6 评论 -
CERL2 系列5:SDL与我对网络协议的思考
网络编程中,网络协议是最最关键的角色。这就像我在客户端编程的时候,最关心模块接口一样。网络协议是客户端(B或C)与服务端(S)之间的交互接口。 我关注网络协议的时候,和很多人关注的面是不同的。不少人问我,你喜欢用Soap,REST,还是喜欢自己定义网络协议?喜欢用XML,还是json?从某种意义上来说,我不关心这些。对我来说,这些只是网络协议的载体。 提到网络协议,我们应该意识到,原创 2010-01-18 23:50:00 · 7031 阅读 · 26 评论 -
CERL2 系列3:CERL既是网络库也是操作系统
我不是在标题党的拥趸。做 cerl/async 就是在做操作系统,这是我和共同开发 cerl 的伙伴们的共同认识。 对于一个适应服务器开发的操作系统,最重要的无非是3件事情:进程管理IO管理内存管理这3件事情我们都自己做了。 首先进程管理。尽管Windows提供了Fiber,Linux也有libucontext库。但是它们并不是操作系统中的“主角”。在当前的原创 2010-01-12 23:44:00 · 5987 阅读 · 8 评论 -
【CN-Erlounge-IV】会议议程安排
以下是会议议程安排。更多信息访问: http://ecug.org/2009-11-6 讲师入住酒店会务人员&讲师小聚2009-11-7 08:30 ~ 09:00 签到09:00 ~ 09:15 开场09:15 ~ 10:15 成立涛 - Erlang开发实践10:15 ~ 10:30 提问&交流10:30 ~ 11:30原创 2009-10-12 10:09:00 · 1918 阅读 · 0 评论 -
【CN-Erlounge-IV】关于CN-Erlounge-IV大会延期的通告
经过慎重考虑,并经过ECUG.CORE(会务组)和讲师们的协商讨论,特将CN-Erlounge-IV会议的时间延期到11月7日~8日。关于更多本次大会的信息,请访问官网:http://ecug.org/理由如下:与 CSDN SD2、哲思峰会时间冲突。有一些 Erlounge 的讲师同时也是CSDN SD2、哲思的讲师。尽管讲师都表示会赶过来,但是出于讲师身体状况的考虑原创 2009-09-27 01:08:00 · 1725 阅读 · 0 评论 -
[CN-Erlounge-IV] 目前已经报名讲师及预选Topic列表
整理了目前已经报名的讲师及其预选的Topic列表 - http://ecug.org/lecturer/讲师报名截止时间还有15天,欲报从速。当前是讲师Topic征集阶段,以下是目前已经收集的讲师及其预选的Topic(按报名次序排列)。 姓名单位博客Twitter演讲主题许式伟盛大网络(上海)原创 2009-09-02 10:23:00 · 2112 阅读 · 0 评论 -
CERL 2.0 预告:Erlang Style Concurrency + 状态机
开始构想CERL 2.0版本。特点:Erlang Style Concurrency(Erlang 风格并发)+ 状态机,突破 Erlang Style Concurrency 模型的缺陷。在目前的 CERL 库 + SDL接口描述语言的基础上,CERL 2.0 还将是一门语言(用于实现的真正意义上的语言),拥有自己的语法...关于 Erlang Style Concurren原创 2009-09-01 11:53:00 · 2402 阅读 · 0 评论 -
CERL: 用PHP或Python来做服务器
到现在,关于CERL的故事终于看起来慢慢多起来了:Erlang vs. CERL - CERL简介注释及文档的故事CERL SDL 语法及类型系统CERL: PHP或Python调用C++实现的服务器之前我们已经谈到C++做高性能的服务器,然后PHP或Python作为前端,将服务展现给客户。这是一种比较正常的逻辑。今天的内容可能稍微偏门一点,谈谈基于CERL,用PHP或原创 2009-08-26 06:26:00 · 4333 阅读 · 0 评论 -
CN Erlounge IV 讲师名单公布及Call For Topic
近期将公布目前已经报名的讲师名单及Topic。那些希望Share Topic的朋友赶快了。 目前累计注册的讲师为12位(不包括口头和我打过招呼但实际没有注册的讲师)。 也提醒下那些已经注册但是Topic还是TODO的讲师赶紧提供下Topic。 :) 另外,借这个通告,这里特别 Call For 一个个人感觉非常有趣的 Topic:基于状态机的服务器架构模型。 话题来源: 实践基于 Erlang C原创 2009-08-24 20:21:00 · 1932 阅读 · 4 评论 -
CERL: PHP或Python调用C++实现的服务器
周末2天,一天写了个php_cerl模块,完成cerl的php client,一天写了个pycerl模块,完成cerl的python client。呵呵,C++的server可以用php或者python来调用了。 对于我们之前用CERL写的HashServer这个服务器(一个很简单的样例,代码参阅:Erlang vs. CERL - CERL简介),其PHP写的Client样例如下:<原创 2009-08-24 11:33:00 · 3757 阅读 · 3 评论 -
Erlang vs. CERL - CERL简介
Erlang vs. CERLErlang众所周知,这里不介绍了。其优势在于:最简洁精练的分布式模型 Node, Process, Mail (Message)最优雅的错误处理模型:速错(Fail fast) 如果出现任何异常,立即死掉GenServer编程框架 程序代码风格完全一致,便于交流轻量级的进程 可以尽可能地原创 2009-06-19 00:00:00 · 8082 阅读 · 27 评论 -
CERL SDL 语法及类型系统
我们目前有3篇很朦胧的文章介绍到了CERL:计划在C++建立仿Erlang式的分布式并行机制 (发表在CERL做出来之前)Erlang vs. CERL - CERL简介 (非常粗浅的CERL预览,以至于很多人认为CERL是一个RPC)注释及文档的故事 (同事眼中的CERL,侧面记录了CERL的诞生过程)本文打算深入一点,谈谈CERL的一个核心内容:SDL语法及其类型系统。原创 2009-08-14 01:24:00 · 4559 阅读 · 4 评论 -
注释及文档的故事
出处:http://blog.krzycube.net/interface_func_comments/--- 昨晚从会议室出来,发现有几位在金山时的同事(@HanTuo , @lidaobing , @hangzhupeng , @wangdong)在twitter上讨论关于接口注释的问题,整理如下,相应回复的紧贴一起,就省去了twitter中多级RT吧:HanTuo: 实在不喜欢代转载 2009-08-06 16:10:00 · 4549 阅读 · 7 评论 -
ECUG Con 2011 - 国内第一场 Go 语言为主题的盛宴
ECUG Con 2011 介绍ECUG.ORG 是 ECUG Con 大会的官方支持站点。ECUG 全称为 Effective Cloud User Group(实效云计算用户组)。我们关注的是并发模型和分布式开发的最佳实践。按照 ECUG 的计划,预计每年我们都会举行一次全国性的 ECUG Con 大会。下面是历届的会议资料:2007年9月8日,CN Erlou原创 2011-11-08 17:33:45 · 7809 阅读 · 0 评论