diff options
author | Max Romanov <max.romanov@nginx.com> | 2017-10-19 17:37:19 +0300 |
---|---|---|
committer | Max Romanov <max.romanov@nginx.com> | 2017-10-19 17:37:19 +0300 |
commit | b3aab8c66fa7269147a6696c98a52971020be6e8 (patch) | |
tree | 30fb2198ab3293f7248b6ae65692f792a590501e /src/nxt_process.h | |
parent | 6031c63225838d6bc266c4f015d9a1085f600324 (diff) | |
download | unit-b3aab8c66fa7269147a6696c98a52971020be6e8.tar.gz unit-b3aab8c66fa7269147a6696c98a52971020be6e8.tar.bz2 |
Filtering process to keep connection.
- Main process should be connected to all other processes.
- Controller should be connected to Router.
- Router should be connected to Controller and all Workers.
- Workers should be connected to Router worker thread ports only.
This filtering helps to avoid unnecessary communication and various errors
during massive application workers stop / restart.
Diffstat (limited to 'src/nxt_process.h')
-rw-r--r-- | src/nxt_process.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/nxt_process.h b/src/nxt_process.h index ae0e1661..c2a011ef 100644 --- a/src/nxt_process.h +++ b/src/nxt_process.h @@ -70,6 +70,10 @@ typedef struct { } nxt_process_t; +extern nxt_bool_t nxt_proc_conn_martix[NXT_PROCESS_MAX][NXT_PROCESS_MAX]; +extern nxt_bool_t + nxt_proc_remove_notify_martix[NXT_PROCESS_MAX][NXT_PROCESS_MAX]; + NXT_EXPORT nxt_pid_t nxt_process_create(nxt_task_t *task, nxt_process_t *process); NXT_EXPORT nxt_pid_t nxt_process_execute(nxt_task_t *task, char *name, @@ -95,6 +99,8 @@ NXT_EXPORT void nxt_process_port_add(nxt_task_t *task, nxt_process_t *process, #define nxt_process_port_loop \ nxt_queue_loop +nxt_process_type_t nxt_process_type(nxt_process_t *process); + void nxt_process_close_ports(nxt_task_t *task, nxt_process_t *process); void nxt_process_connected_port_add(nxt_process_t *process, nxt_port_t *port); |