2015-11-19 72 views
1

有幾種方法可以與Node.js共享PHP會話。PHP會話使用FileSystem與Node.js共享?

一種方法是將PHP會話保存在非RedSQL數據庫(如Redis)中,並通過Node.js訪問它。
另一種流行的方法是使用memcached服務器。

上述兩種方法都需要:
1)運行另一臺服務器。
2)更改默認的PHP會話處理程序。

爲什麼我不應該使用默認的PHP會話處理程序,並通過使用'fs'(FileSystem)核心庫來讀取Node.js中的文件內容來訪問會話文件?
除了速度之外,還有什麼其他原因會導致無法直接訪問和讀取會話文件,假設服務器之間不應該進行遠程操作?

回答

1

對於兩個外部會話服務器選項來說,一個巨大的優勢是從獨立的服務器本身服務PHP和Node應用變得更加容易。雖然可以直接訪問另一臺服務器的文件系統,但使用Node庫需要這樣做,例如,它可以更簡單,更具擴展性,例如可以在redis服務器上外部化會話,而不必擔心文件系統。

我也建議您閱讀The Twelve Factor App以獲得更多有關這方面的優秀實踐。

1

這個答案是非常全面:Performance of Redis vs Disk in caching application

除此之外考慮,你可以在遠程服務器上部署應用程序和數據庫,如果你使用Redis的左右。特別是如果您正在考慮將您的應用程序進行容器化,這將是一個優勢。