#
2596:7ea1758fb8d4 |
| 21-May-2023 |
Andrei Vasiliu |
Fix comments for src/nxt_unit.h.
This fixes some typos and grammatical errors in the comments of src/nxt_unit.h
Link: <https://github.com/nginx/unit/pull/889> [ Adjust summary and write commit mess
Fix comments for src/nxt_unit.h.
This fixes some typos and grammatical errors in the comments of src/nxt_unit.h
Link: <https://github.com/nginx/unit/pull/889> [ Adjust summary and write commit message as this just contains the fixes from the PR and not actual changes - Andrew ] Signed-off-by: Andrew Clayton <a.clayton@nginx.com>
show more ...
|
Revision tags: 1.31.1-1, 1.31.1, 1.31.0-1, 1.31.0, 1.30.0-1, 1.30.0, 1.29.1-1, 1.29.1, 1.29.0-1, 1.29.0, 1.28.0-1, 1.28.0, 1.27.0-1, 1.27.0, 1.26.1-1, 1.26.1 |
|
#
2014:f8a0992944df |
| 24-Nov-2021 |
Max Romanov |
Sending shared port to application prototype.
Application process started with shared port (and queue) already configured. But still waits for PORT_ACK message from router to start request processin
Sending shared port to application prototype.
Application process started with shared port (and queue) already configured. But still waits for PORT_ACK message from router to start request processing (so-called "ready state").
Waiting for router confirmation is necessary. Otherwise, the application may produce response and send it to router before the router have the information about the application process. This is a subject of further optimizations.
show more ...
|
Revision tags: 1.26.0-1, 1.26.0 |
|
#
1996:35873fa78fed |
| 09-Nov-2021 |
Tiago Natel de Moura |
Introduced SCM_CREDENTIALS / SCM_CREDS in the socket control msgs.
|
#
1980:43553aa72111 |
| 28-Oct-2021 |
Max Romanov |
Moving request limit control to libunit.
Introducting application graceful stop. For now only used when application process reach request limit value.
This closes #585 issue on GitHub.
|
Revision tags: 1.25.0-1, 1.25.0, 1.24.0-1, 1.24.0, 1.23.0-1, 1.23.0, 1.22.0-1, 1.22.0, 1.21.0-1, 1.21.0 |
|
#
1713:f5ba5973a0a3 |
| 18-Nov-2020 |
Max Romanov |
Go: removing C proxy functions and re-using goroutines.
|
#
1710:e598cd15bd91 |
| 18-Nov-2020 |
Max Romanov |
Libunit: improving logging consistency.
Debug logging depends on macros defined in nxt_auto_config.h.
|
#
1666:c224d375d89b |
| 27-Oct-2020 |
Max Romanov |
Router: introducing the PORT_ACK message.
The PORT_ACK message is the router's response to the application's NEW_PORT message. After receiving PORT_ACK, the application is safe to process requests
Router: introducing the PORT_ACK message.
The PORT_ACK message is the router's response to the application's NEW_PORT message. After receiving PORT_ACK, the application is safe to process requests using this port.
This message avoids a racing condition when the application starts processing a request from the shared queue and sends REQ_HEADERS_ACK. The REQ_HEADERS_ACK message contains the application port ID as reply_port, which the router uses to send request data. When the application creates a new port, it immediately sends it to the main router thread. Because the request is processed outside the main thread, a racing condition can occur between the receipt of the new port in the main thread and the receipt of REQ_HEADERS_ACK in the worker router thread where the same port is specified as reply_port.
show more ...
|
#
1664:7bf400458d40 |
| 27-Oct-2020 |
Max Romanov |
Libunit: added a function to discern main and worker contexts.
|
#
1663:08a83734a986 |
| 27-Oct-2020 |
Max Romanov |
Libunit: gracefully quitting a multicontext application.
|
Revision tags: 1.20.0-1, 1.20.0 |
|
#
1623:7cdddbe0fb45 |
| 01-Oct-2020 |
Max Romanov |
Publishing libunit's malloc() and free() wrappers for apps.
|
#
1602:5f7638bf724e |
| 18-Sep-2020 |
Artem Konev |
Updated racially charged language in messages and comments.
|
Revision tags: 1.19.0-1, 1.19.0 |
|
#
1555:1d84b9e4b459 |
| 11-Aug-2020 |
Max Romanov |
Introducing application and port shared memory queues.
The goal is to minimize the number of syscalls needed to deliver a message.
|
#
1547:cbcd76704c90 |
| 11-Aug-2020 |
Max Romanov |
Introducing the shared application port.
This is the port shared between all application processes which use it to pass requests for processing. Using it significantly simplifies the request proces
Introducing the shared application port.
This is the port shared between all application processes which use it to pass requests for processing. Using it significantly simplifies the request processing code in the router. The drawback is 2 more file descriptors per each configured application and more complex libunit message wait/read code.
show more ...
|
#
1546:06017e6e3a5f |
| 11-Aug-2020 |
Max Romanov |
Changing router to application shared memory exchange protocol.
The application process needs to request the shared memory segment from the router instead of the latter pushing the segment before se
Changing router to application shared memory exchange protocol.
The application process needs to request the shared memory segment from the router instead of the latter pushing the segment before sending a request to the application. This is required to simplify the communication between the router and the application and to prepare the router for using the application shared port and then the queue.
show more ...
|
#
1545:78836321a126 |
| 11-Aug-2020 |
Max Romanov |
Changing router to application port exchange protocol.
The application process needs to request the port from the router instead of the latter pushing the port before sending a request to the applic
Changing router to application port exchange protocol.
The application process needs to request the port from the router instead of the latter pushing the port before sending a request to the application. This is required to simplify the communication between the router and the application and to prepare the router to use the application shared port and then the queue.
show more ...
|
#
1544:05af370e63b7 |
| 11-Aug-2020 |
Max Romanov |
Adding a reference counter to the libunit port structure.
The goal is to minimize the number of (pid, id) to port hash lookups which require a library mutex lock. The response port is found once pe
Adding a reference counter to the libunit port structure.
The goal is to minimize the number of (pid, id) to port hash lookups which require a library mutex lock. The response port is found once per request, while the read port is initialized at startup.
show more ...
|
#
1543:42f27153db91 |
| 11-Aug-2020 |
Max Romanov |
Libunit refactoring: port management.
- Changed the port management callbacks to notifications, which e. g. avoids the need to call the libunit function - Added context and library instance referenc
Libunit refactoring: port management.
- Changed the port management callbacks to notifications, which e. g. avoids the need to call the libunit function - Added context and library instance reference counts for a safer resource release - Added the router main port initialization
show more ...
|
Revision tags: 1.18.0-1, 1.18.0, 1.17.0-1, 1.17.0 |
|
#
1436:44ccce64ddf9 |
| 30-Mar-2020 |
Max Romanov |
Attributing libunit logging function for arguments validation.
|
Revision tags: 1.16.0-1, 1.16.0 |
|
#
1403:1cee885b7f10 |
| 12-Mar-2020 |
Max Romanov |
Using disk file to store large request body.
This closes #386 on GitHub.
|
#
1398:05063d6eec8e |
| 12-Mar-2020 |
Max Romanov |
Introducing readline function in libunit.
Ruby and Java modules now use this function instead of own implementations.
|
Revision tags: 1.15.0-1, 1.15.0, 1.14.0-1, 1.14.0 |
|
#
1321:2c7f79bf0a1f |
| 24-Dec-2019 |
Max Romanov |
Introducing port messages to notify about out of shared memory.
- OOSM (out of shared memory). Sent by application process to router when application reaches the limit of allocated shared memory
Introducing port messages to notify about out of shared memory.
- OOSM (out of shared memory). Sent by application process to router when application reaches the limit of allocated shared memory and needs more. - SHM_ACK. Sent by router to application when the application's shared memory is released and the OOSM flag is enabled for the segment.
This implements blocking mode (the library waits for SHM_ACK in case of out of shared memory condition and retries allocating the required memory amount) and non-blocking mode (the library notifies the application that it's out of shared memory and returns control to the application module that sets up the output queue and puts SHM_ACK in the main message loop).
show more ...
|
#
1320:4e70411b9842 |
| 24-Dec-2019 |
Max Romanov |
Adding "limits/shm" configuration validation and parsing.
|
Revision tags: 1.13.0-1, 1.13.0, 1.12.0-1, 1.12.0, 1.11.0-2, 1.11.0-1, 1.11.0, 1.10.0-2, 1.10.0-1, 1.10.0 |
|
#
1131:ec7d924d8dfb |
| 20-Aug-2019 |
Max Romanov |
Introducing websocket support in router and libunit.
|
Revision tags: 1.9.0-1, 1.9.0, 1.8.0-1, 1.8.0 |
|
#
953:00d8049418cf |
| 22-Feb-2019 |
Alexander Borisov |
Improvement and unification of version processing in build scripts.
This also eliminates expressions that incompatible with BSD make, thus fixing installation of Node.js module on FreeBSD (broken by
Improvement and unification of version processing in build scripts.
This also eliminates expressions that incompatible with BSD make, thus fixing installation of Node.js module on FreeBSD (broken by dace60fc4926).
show more ...
|
Revision tags: 1.7.1-1, 1.7.1, 1.7-1, 1.7 |
|
#
877:ed8b1aaefdd1 |
| 19-Dec-2018 |
Alexander Borisov |
libunit: added generation of version header file.
|