2011-06-08 92 views
2

是否可以在數據庫中存儲Grails會話?啓動負載均衡器後,我的應用程序會隨機要求用戶登錄(幾乎每隔一個網頁重定向)。我知道我可以啓用粘性會話,但我已經看到它與軌道會議可以保存在分貝,所以在多服務器環境中不會有問題。Grails httpsession

回答

3

通常情況下,數據庫是應用程序最難擴展的部分。通過添加更多Web服務器來橫向擴展非常容易,但通常會垂直擴展數據庫。因此,除了實際的應用程序數據之外,還需要在其中存儲會話,從而爲數據庫添加更多工作並沒有什麼意義。

看到這個博客帖子一個簡單的方法來聚集的Grails在多個Tomcat服務器,並啓用會話複製:http://www.tomcatexpert.com/blog/2010/07/20/basic-tomcat-clustering-grails-applications

+1

真的很有用的鏈接,謝謝。雖然輕微挑剔;使用數據庫會話的評論「毫無意義」來自應用程序必須不惜代價實現最大可伸縮性的思想。並非所有的應用程序都註定要像這樣發展,在這種情況下,持續到數據庫的會話可能會有很大的意義。 – 2012-10-16 16:14:19

+0

是的,其實我寫了一個插件來做到這一點:http://grails.org/plugin/database-session – 2012-10-16 21:06:10

0

兵馬俑可能會讓你這樣做(我沒有使用它,所以我不知道它是服務器之間共享的機制)。有一個Grails的Terracotta插件,which is suggested here

+0

秦始皇是一個很好的路要走,但該插件是非常古老的,應該儘量避免。 – 2011-06-08 19:56:07