Archive

Archive for April, 2007

[ANN]CEAN repo mirror

April 9th, 2007 :: jackyz

鉴于大家访问 cean.process-one.net 的 repo 巨慢。

利用手头的服务器资源,给大家建立了一个 repo 的 mirror 。在这里

希望能方便大家对于 cean 工具的使用。

什么是 CEAN ? — Comprehensive Erlang Archive Network

简单来说, cean 就是 erlang package management 。从 erlang 本身到 yaws/ejabberd/mnesia/… 几乎所有的 erlang 应用包,随时随地就可以安装,升级,卸载。

简单上手,请参考erlang超快速安装

news

【转】Erlang中的Module级别热部署

April 7th, 2007 :: jackyz

原文地址:avindev.javaeye.com
原文作者:AvinDev
Java里面要实现Code Replacement,也就是什么热部署,通常是使用ClassLoader机制。不久前看到了一篇Google的Paper,里面讲解的C++代码热部署更为复杂。
在Erlang里面,实现Code Replacement其实很简单,最方便的方法可以参考 《Erlang Reference Manual》的12.3:

  1. -module(m).
  2. -export([loop/0]).
  3. loop() ->
  4. receive
  5. code_switch ->
  6. m:loop();
  7. Msg ->
  8. loop()
  9. end.

这种简单的HelloWorld例子,不能满足我的疑问。在一个更加复杂的应用里面,比如有多个Process,部分Process的代码更换后,其他没有更新的Process会怎样呢?下面做个试验。

Read more…

study

【转】读《谈分布式网络程序设计》,思Erlang

April 7th, 2007 :: jackyz

原文地址:avindev.javaeye.com
原文作者:AvinDev
163的zhousen写了几篇文章,《谈分布式网络程序设计》
第一篇第二篇第三篇

简单谈谈感想。

1.网络数据的收发的设计方式
文中说:

使用select,一个线程专门负责所有的连接的接受和发送
通常在高性能的服务器程序 则使用的是第二种方式,占系统资源少,而且性能也很好。此外,流水线技术是目前cpu中最基本的技术之一,若将此用于网络程序设计,也可以大幅提高性能。 它在网络程序中的表现实际上就是使用队列,若请求的处理过程分好几步,那么在每一步都设置一个队列,性能比将大大提升。cpu的流水线技术的原因在于各个 部件都处于繁忙状态,所以cpu单位时间内处理性能提高。而网络程序采用流水线技术(队列)则能尽量促使各个节点处于繁忙状态,从而提高程序的性能

这种做法,目前我从事的项目也在使用,将逻辑转换为大量的Task,然后放在多个线程中以流水线方式执行,以此充分利用CPU。但是这种方法存在问 题,就是将对于每个连接,本应按照同步进行处理的逻辑,拆成了异步执行,在调错方面存在难度,而且程序也复杂了难于理解。如果使用Erlang,大可以一 个Process对应于一个连接,由于Erlang的进程调度都是在用户态完成,因此能够最大化使用CPU,而且调试等也是很方便。

Read more…

study

Erlang/Yaws超快速安装

April 7th, 2007 :: jackyz

gashero 贡献了一篇 erlang 的“超快速入门”,我也来贡献一篇“erlang超快速安装”,买一送一,附赠yaws,超值惊喜 :D

ok,广告 blah 到此结束,口水留到下篇再说,让我们超快速的开始:

在linux平台“从头”安装 erlang-otp 是一个冗长乏味的过程,11.xM 的源代码文件倒还真不算大,安装命令也很常见以及非常简单:

./configure –prefix
make install

虽说只有这两句,可在你输入命令之后(以及之间),陪伴你的只有漫漫无尽的等待。视机器快慢,20到40分钟不等,实在可以说是一件“居家旅行谋杀生命”的必备药品。

现在好了,我们有了 CEAN ,当当当当……。安装过程于是简化为:

Read more…

start

Erlang超快速入门

April 6th, 2007 :: gashero

日期:2007-04-06

目录

  • 1 开始使用erlang
  • 2 使用Erlang作为计算器
  • 3 编辑前面的表达式
  • 4 编译你的第一个程序
  • 5 深入了解Erlang

Read more…

start

Ten Questions with Sanjiv Shah(OpenMP)以及 Blah Blah

April 5th, 2007 :: jackyz

ThinkingParallel 发布了 Interviewing the Parallel Programming Idols 系列的第三部—— Ten Questions with Sanjiv Shah about Parallel Programming and OpenMP 让我对于并行计算的其他解决方案(这次是OpenMP)有了一些了解。

下面是 Blah Blah。

Read more…

study

让WEB程序员FT的5大需求

April 3rd, 2007 :: jackyz

正如我之前提到过的,俺这个“老人家”,做web开发,已经好多年了。

回想起来,这些年的开发之中,可能大家都曾经碰过一些在技术人员看来,极度“BT” 的需求。实话实说,其实,这些需求虽然天马行空,惊世骇俗,可仔细想来,如果能够实现,也挺有意思的。

简单回顾一下这些好玩的需求,大概也是一件有意思的事情吧。

Read more…

study

当Erlang遇上C++

April 3rd, 2007 :: Arbow

既然上一篇八卦谈到了Erlang在爱立信里面的地位(C++至高,B教主满塞),这里就介绍一个PPT
《Comparing C++ and Erlang for Motorola Telecoms Software》http://www.erlang.se/euc/06/proceedings/1600Nystrom.ppt ,有兴趣的下载看看
里面以一个纯C++,一个纯Erlang和一个C++ Erlang混杂的系统进行对比和测量,有丰富的图表

RQ4: Performance
*Time:
Max. throughput at 100% QoS:
Pure Erlang DM is twice as fast as C++ DM
Erlang/C is ½ as fast as C++ DM , but still exceeds throughput requirements
Roundtrip times
Pure Erlang DM is three times as fast as C++ DM
Erlang/C is between 26% and 50% slower as C++ DM
*Space:
Pure Erlang and Erlang/C both have 170% greater memory residency due to (fixed size) 5Mb runtime system

news

八卦一下以表支持

April 3rd, 2007 :: zhaoxi

Amstrong在Ericsson资助的实验室里搞的,差不多搞了有10年吧,用来做“下一代交换机”的。

可惜Ericsson是C++的天下,而且不是一个软件公司,要不Erlang的命运可能就不同了,Amstrong可能跟Gosling差不多或者要更强,今天。

用Erlang搞的系统至今仍然号称是“有史以来最稳定最强壮的”,至少产品手册里面是这么说的:)

Erlang对商用数据库的支持至今还是commercial的。或者谁能搞一个EDBC出来:)

news

【转】Erlang大全

April 3rd, 2007 :: Arbow

http://www.cbel.com/erlang_programming_language/
这个站点里面提供了众多Erlang相关的资源索引

news