1.erlang的ets表和原子是不能被垃圾回收的,一个节点的erlang系统原子数最大约为104万,超过会崩溃
2.能在某个进程内部能处理的不要反复通过调用进程自身的异步函数处理,进程处理消息队列很耗时间的,相当于是同步处理
3.用 ++ 运算符的时候,列表长度小的放左边更优化,因为erlang里的变量不可修改,因此还会复制左边的列表再与右边列表组成新列表
4.如果要列表解析ets里面的数据可以用ets:select 两次并一次遍历更省开销
5.对于坐标,经验,金钱等变化频繁的值,如果实时存在,会很容易压跨数据库或对存库进程造成消息阻塞。玩家改变的数据可以缓在内存中,定时存库,或下线时再存库。网络中的消息包也可以在应用层给缓存起来,达到一定长度或延时一定时间后再发出去。