2010-06-05 76 views
2

我需要在Erlang中创建聊天。如何与Erlang应用程序共享会话

有没有办法在PHP和Erlang应用程序之间共享会话?

+1

二郎作为PHP会话存储(不是一个解决方案,但可能会带来一些想法...)http://code.google.com/p/mypeb/wiki/ErlangAsSessionStorageForPHP – nuqqsa 2010-06-05 19:25:43

回答

2

是的,它需要几个条件:

  1. 两个二郎& PHP应该依赖于识别会话或HTTP用cookie名称,在相同的域(或通配符域)交换。
  2. 应该都能够读取会话存储的格式(json浮现在脑中,或者在php中使用peb_connect())
  3. 您应该只在会话中存储'simple'结构,这两个结构都可以理解(数组,hashmaps,字符串,整数,匿名对象会推它一点)
  4. 它们应该使用锁定机制来读取/写入,两者都可以使用(否则您有机会用新数据覆盖新值)

对于PHP来说,这意味着您应该为会话编写您自己的处理程序(请参阅http://nl2.php.net/manual/en/function.session-set-save-handler.php),据我收集的Erlang可以使用山姆(事实上​​,Erlang的实现取决于你)。

可能会使用Erlang/PHP桥,但严格来说这不是必需的,但它可以节省一些工作。

值得注意的还有:http://code.google.com/p/mypeb/wiki/ErlangAsSessionStorageForPHP

+0

我会补充说你需要某种会话存储。我不会推荐使用cookie。相反,如果它是一个为您处理锁定的RDBMS,则可以使用具有附加效果的数据库。 – 2010-06-06 04:37:46

+0

事实上:文件系统,数据库或memcache(cas!)是通常的嫌疑犯,所有这些都具有良好的语言无关锁定机制。 – Wrikken 2010-06-06 12:17:15