Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/jixiuf/helloerlang
my repos for erlang test code .
https://github.com/jixiuf/helloerlang
Last synced: 3 months ago
JSON representation
my repos for erlang test code .
- Host: GitHub
- URL: https://github.com/jixiuf/helloerlang
- Owner: jixiuf
- Created: 2011-12-03T08:05:23.000Z (almost 13 years ago)
- Default Branch: master
- Last Pushed: 2013-01-25T02:29:04.000Z (almost 12 years ago)
- Last Synced: 2024-07-16T13:08:37.807Z (4 months ago)
- Language: Erlang
- Homepage:
- Size: 1.48 MB
- Stars: 26
- Watchers: 9
- Forks: 17
- Open Issues: 0
-
Metadata Files:
- Readme: readme.org
Awesome Lists containing this project
README
* chat 目录为一聊天程序雏形(模仿irc协议)
使用的技术mnesia gen_tcp 及对binary 的处理.
采用二进制数据作为消息格式
server 与client 同时使用 {packet ,4}作为参数,故省去了消息的截取与组装,关于
packet 参数,详见:server.erl 注释
而具体的消息格式为
[4字节消息类型,具体的消息体]
比如echo 消息格式为<<1:32,Msg/binary>>
用一个4字节的int 表示此消息的的类型。
* ppool 是一个进程池
用到了 supervisor (simple_one_for_one one_for_one one_for_all)
supervisor:start_child
%%一个ppool_super是一个pool, 而ppool_super的父节点是ppool_supersuper
%% 即此程序中可以存在多个pool ,一个 pool 的死活与另一个pool 不相干 ,
%%故在ppool_supersuper中使用one_for_one 启动ppool_super.
%%而ppool_super的两个子节点,ppool_worker_sup与ppool_serv却是同生共死才能完成一个
%% pool 的功能 。
%%故ppool_worker_sup与ppool_serv 进行关联启动, 可以理解了。* erlcount erlcount_java erlcount_release
分别是用来统计某目录下erl文件中出现某种正则表达示的数目,并用java写了一版 以
便进行对比 .
用到了OTP的Psupervisor,还用到了上一个例程ppool
正则表达式在erlcount.app文件 中指定
可以通过这种方式来覆盖appname.app 中env 变量的值。
erl -AppName key1 value1 key2 value2
如 :
erl -erlcount directory '.' regex '["if","case"]' max_files
application:start(ppool).
application:start(erlcount).
* mochiweb_comet_chat
使用了mochiweb
是一个网页版即时聊天系统的原理代码(Comet ,long pull技术),据说faceboot 的网上
聊天系统使用的是mochiweb
erlang 中文 gbk utf8 等 编码
http://code.google.com/p/erlang-mbcs/