使用FileSystem与Node.js共享PHP会话


PHP session to be shared with Node.js using FileSystem?

有几种方法可以与Node.js共享PHP会话。

一种方法是将PHP会话保存在Redis等非SQL数据库中,并通过Node.js进行访问。
另一种流行的方法是使用memcached服务器。

上述两种方法都需要:
1) 正在运行另一台服务器
2) 正在更改默认的PHP会话处理程序。

为什么我不应该使用默认的PHP会话处理程序,并通过使用'fs'(FileSystem)核心库读取Node.js中的文件内容来访问会话文件
假设不应该在服务器之间进行远程操作,除了速度之外,还有什么其他原因不直接访问和读取会话文件?

两种外部会话服务器选项的一个巨大优势是,从单独的服务器本身为PHP和Node应用程序提供服务器变得更容易。虽然可以直接访问另一台服务器的文件系统,这是使用Node fs库所必需的,但例如,将会话外部化到redis服务器上要简单得多,而且可扩展性更强,根本不必担心文件系统。

我还建议阅读十二因素应用程序,了解更多这方面的良好实践。

这个答案非常全面:缓存应用中Redis与Disk的性能

除此之外,如果你使用Redis或其他软件,你可以将应用程序和数据库部署在远程服务器上。特别是如果你正在考虑将应用程序容器化,这将是一个优势。