[英]multithreaded http client and tomcat 7
我對如何在獨立的Java應用程序中處理http會話感到困惑。 詳細信息如下:
Java客戶端連接到3個tomcat 7 servlet。 當客戶端啟動時,它每3分鍾啟動2個調度線程/ downloader和uploader /輪詢2個servlet。 他們都檢索jsessionid cookie並將其存儲在各自類的私有字段中。 這會導致在tomcat中有2個會話在webapp的生命周期內被重用。 到現在為止還挺好。
使用線程“ WebDispather”類的多個實例,有一個第三服務/連接到第三servlet /,該類類似於上述線程,但這次是在私有靜態字段中檢索和存儲會話。 調度程序使用率很高,根據負載的不同,可能有多達150個實例同時運行。 分派器線程每秒鍾左右就會到達servlet。
將調度程序的sessionid字段設置為非靜態會為每個實例創建一個會話-不好。
將所有調度程序線程綁定到同一tomcat http會話有什么含義?
謝謝
編輯:盡管dispather線程綁定到相同的會話,會話本身不包含任何信息。 Servlet僅處理請求參數。 即調度員1:
本地主機/ messagecontrol?id = 123&state
調度程序線程2:localhost / messagecontrol?id = 123&state = finished
// Servlet處理並忘記id和狀態
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.