- 博客(8)
- 资源 (24)
- 收藏
- 关注
转载 rebar 热部署erlang程序
Building version 0.1rebar compilerebar generatemv rel/dummy rel/dummy_0.1rebar clean# start the release:cd rel/dummy_0.1bin/dummy consoleerl> dummy_server:get_state().erl> dummy_server:set_st
2018-01-18 17:30:59 347 1
转载 erlang gen_server
通过前面的erlang(1)我们了解到了一个基本的服务器的实现方法。erlang中为我们提供了这样一个服务器的现成的实现,就是gen_server,不用自己去编写服务器程序了。所要做的就是以下几个事:1.确定我们回调模块的名称2.编写接口函数3.实现六个回调方法也就是说我们只需要关注于回调模块的实现就OK了。1: -module(
2017-11-23 11:37:01 243
转载 ejabberd分析(五)+订阅/添加好友
模块ejabberd_c2s中,状态为session_established2。用户发送iq set 消息到服务器Friends服务器端匹配到[plain] view plaincopyprint?case Name of ...... To = xml:get_attr_s("to", Attrs
2017-11-22 16:06:58 381
转载 ejabberd分析(四) 用户登录
仍然看ejabberd_c2s 这个gen_fsm 模块。[plain] view plaincopyprint?RECV SENT SENT DIGEST-MD5 JIVE-SHAREDSECRET PLAIN
2017-11-22 15:50:33 545
转载 ejabberd分析(二) 用户注册
ejabberd中由ejabberd_c2s处理:ejabberd_c2s模块启动后gen_fsm的状态位于wait_for_stream客户端发送[plain] view plaincopyprint? 服务器端wait_for_stream 函数中经过[plain] view plaincopyp
2017-11-22 15:49:00 352
转载 ejabberd分析(一)
ejabberd分析(一)1.客户端连接服务器,并发送消息给服务器的处理在ejabberd_c2s中。 ejabberd_c2s 是一个gen_fsm 状态机,在 ejabberd启动时装载。 初始状态为 wait_for_stream,接受形为 {xmlstreamstart, _Name, Attrs} 的消息,其他任何消息都会导致stop。
2017-11-22 15:45:34 492
转载 erlang语法提要
ErLang中的标点符号 ErLang语法中充满了一些约定。大写字母开头的名字(比如Address),表示一个变量,包括参数、局部变量等;小写字母开头的单词(比如ok),表示一个常量,叫做atom(原子的意思),包括常量名、函数名、模块名等。 ErLang的注释用%开头。ErLang用下划线“_”表示任意变量,类似于Java的switch语法里面的default选项。 ErLang脱胎
2017-11-22 15:33:51 269
转载 ejabberd源码分析《一》application启动
么都别说,直接看启动函数start(normal, _Args) %% ejabberd_logger主要是读取application的配置文件,然后启动lager,设置lager参数。 ejabberd_logger:start(), %% 将本进程的pid写入配置文件指定的文件名中 write_pid_fi
2017-11-22 15:21:55 272
世界五百强面试集锦
2012-03-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人