我有一个PHP应用程序,可以在文件中存储任意配置信息。我想读取该文件一次,当应用程序首次启动时,将其保存为某种应用程序状态变量,并在可能的数千个用户会话中利用它。我的Google foo通常非常好,但在这种情况下,我唯一能够提出的就是$_SESSION
变量。使用它意味着每次每个用户会话读取配置文件,这可能意味着在大批量安装中每分钟读取数千次,这似乎效率低下。
当我使用.NET Web应用程序时,有一个application session的概念可用于在多个用户会话中保留应用程序配置信息。 PHP有类似的概念吗?
答案 0 :(得分:2)
php是否为跨会话数据管理提供API?否
php是否提供了读取和更新数据的机制?是的,其中有很多
虽然这听起来像是在多个用户之间共享的会话处理程序,但它的实现非常不同。默认情况下(并且必要时)php的会话正在阻止。如果对此共享数据集的访问被阻止,那么您将严重限制并发。
鉴于对数据的访问必须是非阻塞的,您如何调解共享数据的并发更新?很大程度上取决于更新的频率。但是,还有关于容量以及是否需要支持多个节点的问题。
任何一个尺寸的功能解决方案都将在容量和/或性能方面受到严重阻碍。 PHP将集成许多产品以提供合适的存储基板,但是(撇开超级会话的接口逻辑)开源软件的性质并不是打包第三方产品并隐藏它们API背后。