簡體   English   中英

限制 libevent 中的連接

[英]Limit connections in libevent

我想控制每個進程可能的 libevent-http 連接的限制。

我怎樣才能做到這一點?

我在文檔中沒有找到任何信息,請幫助!

我認為如果我不限制連接數 - 系統可能會崩潰。 項目負載非常高。

ev_base = event_init();
ev_http = evhttp_new(ev_base);
// limit http connections here... how can i do that?
struct evconnlistener *
evconnlistener_new(struct event_base *base,
    evconnlistener_cb cb, void *ptr, unsigned flags, int backlog,
    evutil_socket_t fd)

待辦事項是您要修改的內容。 他們在內部調用:

listen(fd, backlog)

然而,在他們的 http 庫中,他們將積壓工作修復為 128:

evhttp_bind_socket_with_handle(struct evhttp *http, const char *address, ev_uint16_t port)
{
    [...]
        if (listen(fd, 128) == -1) {
                event_sock_warn(fd, "%s: listen", __func__);
                evutil_closesocket(fd);
                return (NULL);
        }
    [...]
}

暫無
暫無

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

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