簡體   English   中英

用Java / jersey / grizzly編寫的微服務的線程配置

[英]Threading configuration for microservices written in java/jersey/grizzly

我正在設計一個基於微服務的系統。 大多數服務都作為獨立的Jersey進程與嵌入式Grizzly Web服務器一起部署。

假設其中許多服務將在同一台機器上執行,我是否應該在Grizzly中更改任何線程配置,以防止機器范圍內出現太多線程的情況?

Grizzly的默認線程模型是什么? 單個Web服務器可以創建的線程數是否有限制?

這取決於您如何處理傳入的數據。

如果需要處理數據(cpu時間> io時間),則需要將物理核的數量與數據處理線程的數量進行匹配。

如果大部分時間都花在IO(檢索/存儲數據)上,那么您可以從cores * 2開始,然后將max設置為必須通過測試cpu的使用和吞吐量確定的值。 我個人喜歡每個內核4(4、16、64、256)的冪。 這將使您迅速縮小到數量級。

https://javaee.github.io/grizzly/coreconfig.html#/Thread_Pool_Configuration

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM