中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用源碼解讀提高RGW最大并發數

發布時間:2021-12-21 16:32:27 來源:億速云 閱讀:159 作者:柒染 欄目:云計算

今天就跟大家聊聊有關如何用源碼解讀提高RGW最大并發數,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

源碼解讀如何提高RGW最大并發數

以rgw服務的main()為入口,查看整個fastcgi的初始化過程,代碼如下

#src/rgw/rgw_main.cc
int main(int argc, const char **argv)
    if (framework == "fastcgi" || framework == "fcgi") {
      RGWProcessEnv fcgi_pe = { store, &rest, olog, 0 };

      fe = new RGWFCGXFrontend(fcgi_pe, config);
      
    dout(0) << "starting handler: " << fiter->first << dendl;
    int r = fe->init(); #調用RGWFCGXFrontend的init()方法

再看init()方法構建了一個RGWFCGXProcess,并將rgw_thread_pool_size作為實參傳遞進去。

#src/rgw/rgw_frontend.h
class RGWFCGXFrontend : public RGWProcessFrontend {
public:
  RGWFCGXFrontend(RGWProcessEnv& pe, RGWFrontendConfig* _conf)
    : RGWProcessFrontend(pe, _conf) {}

  int init() {
    pprocess = new RGWFCGXProcess(g_ceph_context, &env,
				  g_conf->rgw_thread_pool_size, conf);
    return 0;
  }
};

默認rgw_thread_pool_size為100,代碼定義如下

#src/common/config_opts.h
OPTION(rgw_thread_pool_size, OPT_INT, 100)

通過RGWFCGXProcess的構造函數發現max_connections=num_threads + (num_threads >> 3),也就是說默認情況下max_connections=100+1=101,代碼注釋中也提到這是為了確保能夠盡可能多的處理請求。

#src/rgw/rgw_process.h
class RGWFCGXProcess : public RGWProcess {
	int max_connections;
public:

  /* have a bit more connections than threads so that requests are
   * still accepted even if we're still processing older requests */
  RGWFCGXProcess(CephContext* cct, RGWProcessEnv* pe, int num_threads,
		 RGWFrontendConfig* _conf)
    : RGWProcess(cct, pe, num_threads, _conf),
      max_connections(num_threads + (num_threads >> 3))
    {}

  void run();
  void handle_request(RGWRequest* req);
};

所以num_threads控制著max_connections的數量,如果你想提高單個rgw進程的最大并發數量,需要調高rgw_thread_pool_size。

看完上述內容,你們對如何用源碼解讀提高RGW最大并發數有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

rgw
AI

八宿县| 青岛市| 抚松县| 云浮市| 泽库县| 康保县| 湟中县| 湘乡市| 繁峙县| 车险| 汝州市| 辽阳县| 新竹县| 腾冲县| 万安县| 榕江县| 绥棱县| 马公市| 延津县| 广南县| 临汾市| 广德县| 鹤山市| 庆城县| 津南区| 关岭| 习水县| 元谋县| 湖北省| 淅川县| 紫金县| 临邑县| 定陶县| 博野县| 临汾市| 班玛县| 屯昌县| 昭觉县| 东阳市| 阜康市| 枣强县|