标签: erlangweb

对于erlang玩家服务器来说,membase是一个很好的持久层吗?

我的目标是创建一个玩家可以设置建筑物的浏览器游戏.

每栋建筑都有几个模块(发动机,办公室,生产线......).每个模块将一直运行一个或多个动作,例如用成分Y,Z创建2OO'项目X'.

游戏服务器将使用erlang进行设置:OTP应用程序作为服务器本身,氮气作为Web前端.我需要持久化数据.我在考虑以下问题:

当某人或某物与建筑物相互作用,或者代表某条生产线的计时器结束时,主管会产生gen_server(如果尚未生成),它会从数据库中加载建筑物的状态,因此gen_server可以回答"添加"等消息这个模块','开始这个动作','将这个生产存储到仓库','死'等等(

但是当建筑物在X秒或分钟内没有收到任何消息时,他将终止(由于gen_server超时功能)并将其当前状态丢弃回数据库.

因此,因为它将是一个(软)实时游戏,所以必须非常快速地设置gen_server.我认为membase是数据库,因为它已知具有非常好的响应时间.

我的问题是:当一个gen服务器正在运行时,他的状态会填充一些内存,并且这个状态也存在于membase处理的内存中,因此状态在内存中使用了两倍.这是一个糟糕的设计吗?

在我的情况下,membase是处理持久性的好方法吗?将mnesia用作更好的选择,还是其他什么?

我担心mnesia 2 Go(或4?)表格大小限制,因为我目前不知道我的gen_servers的平均状态大小(在这个例子中的建筑物,但也包括玩家,生产线,等等)我可能有一天比1名球员:)

谢谢

erlang persistence erlangweb membase

5
推荐指数
1
解决办法
405
查看次数

在Erlang中实现一个很好的OpenID实现?

我正在寻找在erlang中实现OpenID的良好(或至少工作).我已经看了几个不同的解决方案,但不是100%的解决方案.

openid erlang erlangweb

2
推荐指数
1
解决办法
789
查看次数

Erlang:输出问题

在我的erlang Web应用程序中,有一个列表,其中包含要在网页上打印的整数.但是当脚本执行时,它打印出来,而不是实际的列表,

请查看此图像,显示unicode代码点1,1,2,3,5,8,空白,代码点15的字符

如何格式化以获得我想要的东西?目标列表为[1,1,2,3,5,8,13,15]

erlang erlangweb

2
推荐指数
1
解决办法
234
查看次数

在芝加哥老板的错误"init终止在do_boot"

我刚刚在Chicago Boss(Erlang web framework)dir中尝试了"make"并且错误地失败了


{"init terminating in do_boot",{undef,[{make,all,[]},{init,start_it,1},{init,start_em,1}]}}
Run Code Online (Sandbox Code Playgroud)

怎么了?我该怎么办?

我的环境是Ubuntu 10.04,Erlang R13B03.

erlang erlangweb chicagoboss

2
推荐指数
1
解决办法
3742
查看次数

标签 统计

erlang ×4

erlangweb ×4

chicagoboss ×1

membase ×1

openid ×1

persistence ×1