[英]Using Beaker with Falcon, Python
我正在使用Python WSGI框架Falcon來制作應用程序后端,並使用Beaker來處理會話管理。 在制作中,我們將在AWS中使用Gunicorn。
有些事我一直無法理解:
Gunicorn將運行幾個工作程序,這是否意味着環境變量會持續存在於已提出請求的不同客戶端? 換句話說,只是一個客戶的燒杯會話,或者是否可以在同一個Gunicorn工作者實例中發出請求的幾個客戶端?
這就是我從閱讀中理解會話的方式:
一個人登錄我的應用程序,user_id被添加到與Beaker的會話中。 來自同一客戶端的未來請求將此user_id存儲在會話dict中。 現在,來自該客戶端的任何未來請求都將能夠訪問存儲在會話中的變量。 每個客戶端都有自己的會話數據。
我理解得當嗎?
當前方法是在需要更多用戶信息時將id返回給客戶端(成功登錄時)以傳遞給后端。
我理解得當嗎?
是的,你做了,大多數情況下。
Gunicorn將運行幾個工作程序,這是否意味着環境變量會持續存在於已提出請求的不同客戶端? 換句話說,只是一個客戶的燒杯會話,或者是否可以在同一個Gunicorn工作者實例中發出請求的幾個客戶端?
beaker在服務器端保存會話數據,在由唯一會話ID標識的專用數據存儲中,客戶端將通過cookie發送回會話ID,然后服務器(gunicorn worker)可以檢索會話數據。
我建議閱讀有關會話如何工作的更詳細說明,例如: http : //machinesaredigging.com/2013/10/29/how-does-a-web-session-work/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.