fix: Support many simultaneous connections (#886)
This commit is contained in:
parent
cc30aa2a9a
commit
68724c6ec1
|
@ -92,7 +92,7 @@ static void recalculate_pool_size(void)
|
|||
self.pool.sbi_message = self.pool.nf * MAX_NUM_OF_SBI_MESSAGE;
|
||||
self.pool.nf_subscription = self.pool.nf * MAX_NUM_OF_NF_SUBSCRIPTION;
|
||||
|
||||
#define MAX_EVENT_POOL 32
|
||||
#define MAX_EVENT_POOL 256
|
||||
self.pool.event = MAX_EVENT_POOL;
|
||||
|
||||
#define MAX_CSMAP_POOL 128
|
||||
|
|
|
@ -42,8 +42,8 @@ void ogs_sbi_context_init(void)
|
|||
|
||||
ogs_sbi_message_init(
|
||||
ogs_app()->pool.sbi_message, ogs_app()->pool.sbi_message);
|
||||
ogs_sbi_server_init(ogs_app()->pool.nf);
|
||||
ogs_sbi_client_init(ogs_app()->pool.nf, ogs_app()->pool.nf);
|
||||
ogs_sbi_server_init(ogs_app()->pool.nf, ogs_app()->pool.event);
|
||||
ogs_sbi_client_init(ogs_app()->pool.nf, ogs_app()->pool.event);
|
||||
|
||||
ogs_list_init(&self.nf_instance_list);
|
||||
ogs_pool_init(&nf_instance_pool, ogs_app()->pool.nf);
|
||||
|
|
|
@ -28,7 +28,7 @@ typedef enum MHD_Result _MHD_Result;
|
|||
typedef int _MHD_Result;
|
||||
#endif
|
||||
|
||||
static void server_init(int num_of_session_pool);
|
||||
static void server_init(int num_of_session_pool, int num_of_stream_pool);
|
||||
static void server_final(void);
|
||||
|
||||
static void server_start(ogs_sbi_server_t *server,
|
||||
|
@ -103,7 +103,7 @@ typedef struct ogs_sbi_session_s {
|
|||
|
||||
static OGS_POOL(session_pool, ogs_sbi_session_t);
|
||||
|
||||
static void server_init(int num_of_session_pool)
|
||||
static void server_init(int num_of_session_pool, int num_of_stream_pool)
|
||||
{
|
||||
ogs_pool_init(&session_pool, num_of_session_pool);
|
||||
}
|
||||
|
|
|
@ -26,7 +26,7 @@
|
|||
|
||||
#define USE_SEND_DATA_WITH_NO_COPY 1
|
||||
|
||||
static void server_init(int num_of_stream_pool);
|
||||
static void server_init(int num_of_session_pool, int num_of_stream_pool);
|
||||
static void server_final(void);
|
||||
|
||||
static void server_start(ogs_sbi_server_t *server,
|
||||
|
@ -100,9 +100,9 @@ static void session_write_to_buffer(
|
|||
static OGS_POOL(session_pool, ogs_sbi_session_t);
|
||||
static OGS_POOL(stream_pool, ogs_sbi_stream_t);
|
||||
|
||||
static void server_init(int num_of_stream_pool)
|
||||
static void server_init(int num_of_session_pool, int num_of_stream_pool)
|
||||
{
|
||||
ogs_pool_init(&session_pool, num_of_stream_pool);
|
||||
ogs_pool_init(&session_pool, num_of_session_pool);
|
||||
ogs_pool_init(&stream_pool, num_of_stream_pool);
|
||||
}
|
||||
|
||||
|
|
|
@ -28,7 +28,7 @@ bool ogs_sbi_server_actions_initialized = false;
|
|||
|
||||
static OGS_POOL(server_pool, ogs_sbi_server_t);
|
||||
|
||||
void ogs_sbi_server_init(int num_of_stream_pool)
|
||||
void ogs_sbi_server_init(int num_of_session_pool, int num_of_stream_pool)
|
||||
{
|
||||
if (ogs_sbi_server_actions_initialized == false) {
|
||||
#if 1 /* Use HTTP2 */
|
||||
|
@ -38,7 +38,7 @@ void ogs_sbi_server_init(int num_of_stream_pool)
|
|||
#endif
|
||||
}
|
||||
|
||||
ogs_sbi_server_actions.init(num_of_stream_pool);
|
||||
ogs_sbi_server_actions.init(num_of_session_pool, num_of_stream_pool);
|
||||
|
||||
ogs_list_init(&ogs_sbi_self()->server_list);
|
||||
ogs_pool_init(&server_pool, ogs_app()->pool.nf);
|
||||
|
|
|
@ -46,7 +46,7 @@ typedef struct ogs_sbi_server_s {
|
|||
} ogs_sbi_server_t;
|
||||
|
||||
typedef struct ogs_sbi_server_actions_s {
|
||||
void (*init)(int num_of_stream_pool);
|
||||
void (*init)(int num_of_session_pool, int num_of_stream_pool);
|
||||
void (*cleanup)(void);
|
||||
|
||||
void (*start)(ogs_sbi_server_t *server,
|
||||
|
@ -59,7 +59,7 @@ typedef struct ogs_sbi_server_actions_s {
|
|||
ogs_sbi_server_t *(*from_stream)(ogs_sbi_stream_t *stream);
|
||||
} ogs_sbi_server_actions_t;
|
||||
|
||||
void ogs_sbi_server_init(int num_of_connection_pool);
|
||||
void ogs_sbi_server_init(int num_of_session_pool, int num_of_stream_pool);
|
||||
void ogs_sbi_server_final(void);
|
||||
|
||||
ogs_sbi_server_t *ogs_sbi_server_add(ogs_sockaddr_t *addr);
|
||||
|
|
Loading…
Reference in New Issue