我正在用 PHP 编写一个有状态的 Web 应用程序,其中状态可能包含很多对象。此时,我将所有这些对象保存在 $_SESSION 中,并在请求结束时将它们序列化。这有点痛苦,因为序列化整个会话需要几秒钟,而反序列化则需要更多时间。
我想尝试 APC,因为我希望这些对象只是被内存复制,而不是序列化。唉,似乎如果我提供apc_store($object)
一个对象,它似乎无论如何都会在将它传递给另一个进程之前对其进行序列化。(故事是在没有序列化的情况下复制原始值和数组,但这对我来说不是一个相关的解决方案,因为我的会话对象有很多(循环)引用。)
我的问题:有没有一种已知的方法可以在 PHP 中保持对象的持久性,而不必在每次请求后对它们进行序列化?我听说HipHop解释器可以帮助解决这个问题,但我没有在网上找到任何工作示例。有人可以告诉我在 PHP 中是否可行?
(我知道,我应该用 Java 或其他支持没有 TCP 连接的持久实例的语言来编写这个项目)