【ejabberd】安装XMPP服务器ejabberd(Ubuntu 12.04)
摘要:ejabberdejabberdis a free and open source instant messaging server written inErlang/OTP.ejabberdis cross-platform, distributed, fault-tolerant, and based on open standards to achieve real-time communication.ejabberdis designed to be a rock-solid and feature rich XMPP server.ejabberdis suitable for s
阅读全文
posted @
2013-04-04 21:39
Anthony Li
阅读(8008)
推荐(0) 编辑
【Erlang新手成长日记】erl手册
摘要:erl(1) User Commands erl(1)NAME erl - The Erlang EmulatorDESCRIPTION The erl program starts an Erlang runtime system. The exact details (for example, whether erl is a script or a program and which other programs it calls) are system-dependent. Windows users probably wants to use the werl program ins
阅读全文
posted @
2012-09-16 17:06
Anthony Li
阅读(2038)
推荐(0) 编辑
【Erlang开源项目】HTTP客户端ibrowse
摘要:ibrowseibrowse is a HTTP client written in erlang.(ibrowse是一个使用Erlang写的HTTP客户端。)项目地址:https://github.com/cmullaparthi/ibrowse准备工作:1、下载源代码使用Git获取元代码,在终端执行命令:git clone https://github.com/cmullaparthi/ibrowse.git2、编译源代码使用rebar构建工具编译源代码:./rebar compile编译成功,会在ebin文件夹下生成.beam和.app文件(rebar是一款Erlang项目构建工具,之后
阅读全文
posted @
2012-09-14 23:56
Anthony Li
阅读(1248)
推荐(0) 编辑
【Erlang新手成长日记】JSON编码与解码
摘要:开源项目:https://github.com/tonyg/erlang-rfc4627/Git checkout之后,在src文件夹下找到文件“rfc4627.erl”。JSON维基百科:http://en.wikipedia.org/wiki/JSONRFC4627:http://tools.ietf.org/html/rfc4627Joe Armstrong对JSON数据数据映射的描述:http://erlang.org/pipermail/erlang-questions/2005-November/017805.html截取一段: JSON Obj = type obj() ...
阅读全文
posted @
2012-09-09 22:04
Anthony Li
阅读(3138)
推荐(0) 编辑
【Erlang新手成长日记】HTTP客户端
摘要:1、启动方式一:启动inets应用,一个缺省profile的管理进程将被启动。inets:start().方式二:运行时,动态启动profile停止profile。动态启动profile:{ok, Pid} = inets:start(httpc, [{profile, foo}]).动态停止profile:inets:stop(httpc, foo).或inets:stop(httpc, Pid).2、设置httpc:set_options() -> ok | {error, Reason}参考:http://www.erlang.org/doc/man/httpc.html#set_
阅读全文
posted @
2012-09-05 21:30
Anthony Li
阅读(3434)
推荐(0) 编辑
【Erlang新手成长日记】Mnesia数据库CRUD操作
摘要:初始化工作:1、(可选)启动Erlang时,设置根目录的位置: erl -mnesia dir Dir用你要存储schema的目录来代替Dir。示例:erl -mnesia dir '"db"'2、建立schema: mnesia:create_schema(DiscNodes) -> ok | {error, Reason}官方文档:http://www.erlang.org/doc/man/mnesia.html#create_schema-1关于schema的更多细节,参考《Erlang Programming》第295页 Configuring
阅读全文
posted @
2012-09-05 15:06
Anthony Li
阅读(2312)
推荐(0) 编辑
【Erlang新手成长日记】Erlang端口与外部C程序交互
摘要:参考文档: 《Programming Erlang》,第12章:Interfacing Techniques创建C源文件: hello.c 具体函数的实现hello.cint twice(int arg) { return (arg * arg);}int sum(int arg1, int arg2) { return (arg1 + arg2);} hello_driver.c 驱动程序运行hello_driver.c#include <stdio.h>#define BUFFER_SIZE 100typedef unsigned char byte; //8 bitin...
阅读全文
posted @
2012-09-01 15:05
Anthony Li
阅读(1790)
推荐(1) 编辑
【Erlang新手成长日记】文件读写
摘要:参考文档: 《Programming Erlang》,第13章:Programming with Files 官方文档,file模块 、io模块 和filename模块。示例:%% 文件读写示例-module(file_example).-export([write/2, read/1]).%% --------------------%% 写入文件%% write(Content, FileName) -> {ok, Content}%% Content = string()%% FileName = string()%% --------------------write(Conte
阅读全文
posted @
2012-08-30 22:20
Anthony Li
阅读(1736)
推荐(0) 编辑
【Erlang新手成长日记】Erlang模块学习之lists
摘要:lists列表处理函数官方文档:http://www.erlang.org/doc/man/lists.html函数:all(Pred, List) -> boolean()类型: Pred = fun((Elem :: T) -> boolean()) List = [T] T = term()说明: Returns true if Pred(Elem) returns true for all elements Elem in List, otherwise false.any(Pred, List) -> boolean()类型: Pred = fun((Elem ::
阅读全文
posted @
2012-08-29 14:06
Anthony Li
阅读(2972)
推荐(0) 编辑
【Erlang新手成长日记】Erlang开源项目推荐
摘要:学习一门新语言,需要多看,多想,多写。多看,就要阅读优秀的源代码。以下是自己找到4款优秀的Erlang开源项目:CowboyHTTP服务器简介: Cowboy是一款小而快速的模块化HTTP服务器,使用Erlang语言。 Cowboy也是一个套接字接收池,能够接收任何种类的TCP协议连接。MochiWebErlang库简介: MochiWeb是用来搭建HTTP服务器的轻型Erlang库。CouchDB数据库简介: CouchDB是一款面向文档的数据库。RabbitMQ消息服务器简介: 基于Advanced Message Queuing Protocol(AMQP)实现的消息服务器。
阅读全文
posted @
2012-08-25 16:47
Anthony Li
阅读(2235)
推荐(0) 编辑