Commit Graph

34 Commits

Author SHA1 Message Date
Valentin Bartenev
f4cb476feb Version bump. 2018-04-02 17:42:36 +03:00
Valentin Bartenev
dc50773e51 Version bump. 2018-02-12 16:58:38 +03:00
Valentin Bartenev
c890f53d10 Version bump. 2018-02-09 19:06:53 +03:00
Valentin Bartenev
84eba82bc8 Version bump. 2018-01-15 18:37:07 +03:00
Igor Sysoev
965a95d602 Version bump. 2017-12-29 18:43:51 +03:00
Igor Sysoev
2837d520bb Version bump. 2017-10-20 17:48:38 +03:00
Max Romanov
6532e46465 Supporting concurrent shared memory fd receive in router.
Two different router threads may send different requests to single
application worker.  In this case shared memory fds from worker
to router will be send over 2 different router ports.  These fds
will be received and processed by different threads in any order.

This patch made possible to add incoming shared memory segments in
arbitrary order.  Additionally, array and memory pool are no longer
used to store segments because of pool's single threaded nature.

Custom array-like structure nxt_port_mmaps_t introduced.
2017-10-19 17:36:56 +03:00
Valentin Bartenev
fcd141936c Version bump. 2017-10-02 17:10:12 +03:00
Max Romanov
838d9946ac Introducing named port message handlers to avoid misprints. 2017-09-15 20:30:34 +03:00
Igor Sysoev
6160683544 Introduced module compatibility vector. 2017-08-31 00:42:12 +03:00
Igor Sysoev
cdc7e4479f Lib unit tests have been renamed to tests. 2017-08-30 00:31:02 +03:00
Max Romanov
92f3b85298 The process type enum exposed to go module. 2017-08-29 14:18:00 -07:00
Igor Sysoev
b84aa64dcb Removed configure option --no-threads. 2017-08-24 17:43:32 +03:00
Igor Sysoev
1e53ff184c Added command line option --version. 2017-08-24 17:29:57 +03:00
Max Romanov
f2e9afdf42 Port RPC interface introduced.
Usage:
1. Register handlers in incoming port with nxt_port_rpc_register_handler().
2. Use return value as a stream identifier for next nxt_port_socket_write().
2017-08-02 13:14:31 +03:00
Max Romanov
803855138c Mem pool cleanup introduced.
Used for connection mem pool cleanup, which can be used by buffers.
Used for port mem pool to safely destroy linked process.
2017-07-18 00:21:16 +03:00
Igor Sysoev
3bccb7f358 Introducing thread-safe nxt_random(). 2017-07-10 21:07:12 +03:00
Max Romanov
83088a0f4b Incoming and outgoing port_mmap arrays are protected with mutexes. 2017-06-23 19:20:08 +03:00
Max Romanov
b8f126dcdf Added basic HTTP request processing in router.
- request to connection mapping in engine;
- requests queue in connection;
- engine port creation;
- connected ports hash for each process;
- engine port data messages processing (app responses);
2017-06-23 19:20:08 +03:00
Max Romanov
0fdcdde6c8 lvlhash for ports moved to separate files for future re-use. 2017-06-23 19:19:41 +03:00
Igor Sysoev
f888a5310c Using new memory pool implementation. 2017-06-20 19:49:17 +03:00
Igor Sysoev
b1b9f621a4 Memory pools refactoring. 2017-06-19 16:26:19 +03:00
Igor Sysoev
7574c64992 nxt_event_conn_... functions and structures have been renamed
to nxt_conn_...
2017-06-14 15:18:52 +03:00
Max Romanov
f7b4bdfd89 Using shared memory to send data via nxt_port.
Usage:
    b = nxt_port_mmap_get_buf(task, port, size);
    b->mem.free = nxt_cpymem(b->mem.free, data, size);
    nxt_port_socket_write(task, port, NXT_PORT_MSG_DATA, -1, 0, b);
2017-05-12 20:32:41 +03:00
Igor Sysoev
6f2c9acd18 Processes refactoring.
The cycle has been renamed to the runtime.
2017-03-09 18:03:27 +03:00
Valentin Bartenev
4df646a258 HTTP parser. 2017-03-01 15:29:18 +03:00
Valentin Bartenev
fde4d18e3a Removed legacy HTTP parser. 2017-03-01 15:17:55 +03:00
Igor Sysoev
b379dae85e Port changes. 2017-02-22 15:10:28 +03:00
Igor Sysoev
029942f4eb I/O operations refactoring. 2017-02-22 15:09:59 +03:00
Igor Sysoev
059a864289 Event engines refactoring. 2017-02-07 20:04:56 +03:00
Igor Sysoev
e57b95a923 Process channels have been renamed to ports. 2017-02-01 20:03:45 +03:00
Igor Sysoev
bb87fa11ca nxt_event_timer has been renamed to nxt_timer. 2017-01-30 16:47:50 +03:00
Igor Sysoev
de532922d9 Introducing tasks. 2017-01-23 19:56:03 +03:00
Igor Sysoev
16cbf3c076 Initial version. 2017-01-17 20:00:00 +03:00