ejabberd_hooks作为ejabberd_sup的子进程以gen_server启动首先初始化创建hooks(ets)表,ejabberd_hooks作为系统的钩子server,注册一系列的方法到hooks里面,方便程序调用注册方法为:add(Hook, Host, Module, Funct...
分类:
其他好文 时间:
2015-12-15 22:29:40
阅读次数:
227
ets基础:1、ets和dets基本是做统一件事情:提供大型的“键-值”搜索表。ets驻留在内存,dets驻留在磁盘。2、ets和dets可以被多个进程共享。3、ets和dets表的结构数据是“键-值”对。我们在表的最常用的操作是插入和查找。一个ets和dets表其实就是一系列erlang元祖。4、...
分类:
其他好文 时间:
2015-12-15 18:09:59
阅读次数:
315
比如前缀由mms_修改为 ets_exec sp_msforeachtable @command1=' declare @o sysname,@n sysname select @o=''?'' ,@n=stuff(@o,1,charindex(''].[mms_'',@o)+6,''ets_'.....
分类:
数据库 时间:
2015-09-29 16:20:18
阅读次数:
204
static function SetStaticBooleanField (clazz : IntPtr, fieldID : IntPtr, val : bool) : voidDescription描述This function ets the value of a static field ...
分类:
移动开发 时间:
2015-07-21 10:23:13
阅读次数:
107
1 背景 当在程序中,有大量的数据需要读写,数据库的响应会延迟,甚至阻塞。缓存可以缓解对数据库访问的压力,而且在内存中数据的读写要比读写硬盘上的数据快。2 目的 ets_cache是用erlang实现的简单的缓存应用,它的结构简单,但功能强大支持百万级的数据量。其主要是用来存储一些公共访问的数据.....
分类:
系统相关 时间:
2015-06-28 15:18:11
阅读次数:
217
一、表遍历通过ets:first/1获取表的第一个关键字,表中下一个关键字用ets:next/2得到,直到ets:next/2返回'$end_of_table'当多几个进程并发访问ets表时,可以使用ets:safe_fixtable/2函数来保证,每个元素只被访问一次。二、提取表信息,匹配matc...
分类:
其他好文 时间:
2015-06-18 18:55:03
阅读次数:
197
《敏捷软件开发读书笔记之三》 以下是我从最后两个部分:气象站案例研究和ETS案例研究中得到的一些收获,以及个人的一些认知及见解: “OBSERVER模式”又称为回归为模式,其最大的推动力来自开放封闭原则。使用这个模式的动机就是为了在增加新的观察...
分类:
其他好文 时间:
2015-04-26 22:24:41
阅读次数:
235
(1)、静态键值对(key-value)数据直接写成erl文件编译后读取比读ETS表快6倍左右;
(2)、数据量越大,数据结构越复杂,两者差距越明显;
(3)、erl文件太大(大于10M)时,编译会很慢(大于1分钟);
(4)、数据量在1w左右,写成erl文件3M内,建议用erl文件形式更快更直接。...
分类:
其他好文 时间:
2015-04-05 10:35:25
阅读次数:
175
最近项目组有同事做了erlang内部数据(Eterm)的分享。Eterm 是Erlang Term的简写,用来表示erlang中任意类型的数据,也就是说,erlang可以用到的任意数据,都能 Eterm表示。比如常见的atom、数字、列表、元组,甚至pid,port,fun,ets表等等都用Eterm可以表示。但为什么会有一个叫catch的Eterm?相信不少人都会有这样的疑问。所以,本文就围绕着 catch 进行分析和讨论。...
分类:
其他好文 时间:
2015-03-31 06:49:01
阅读次数:
279
1、限制:erlang官网给出了ets的默认上限:“The default is 1400, can be changed with the environment variable ERL_MAX_ETS_TABLES.”也就是说但节点上如果不进行配置,那么ets表最大是1400. 2、查看...
分类:
其他好文 时间:
2015-03-17 11:44:54
阅读次数:
209