Commit Graph
100 Commits
Author SHA1 Message Date
Igor Sysoev acd7e094b1 README.md fixes. 2017-09-06 19:33:58 +03:00
Igor Sysoev 89df39374c Added the dist target in Makefile. 2017-09-06 19:23:50 +03:00
Igor Sysoev 26dfd4da97 Added CHANGES file. 2017-09-06 19:14:28 +03:00
Igor Sysoev eb1b4b99b1 Shortened titles in README.md and dispensable information. 2017-09-06 18:40:06 +03:00
Igor Sysoev 781726053f Added LICENSE and NOTICE files. 2017-09-06 18:26:37 +03:00
Igor Sysoev 37c16d1801 Fixed building by Sun C on Solaris. 2017-09-06 17:13:18 +03:00
Igor Sysoev c4cba21a47 Added README.md. 2017-09-06 02:30:55 +03:00
Igor Sysoev 58907888e5 Style fixes. 2017-09-06 02:30:55 +03:00
Igor Sysoev 22ae3d4ff5 Controller: validating user and group names. 2017-09-06 02:30:23 +03:00
Igor Sysoev ff515f4312 Added SERVER_ADDR parameter for Python and PHP modules. 2017-09-01 07:54:01 +03:00
Igor Sysoev 9941b0cd65 Fixed format specifier. 2017-08-31 21:44:37 +03:00
Igor Sysoev 1f95673713 Setting build directory with variable instead of configure option. 2017-08-31 21:44:30 +03:00
Igor Sysoev 738ca54ded Changed modules names format. 2017-08-31 00:42:16 +03:00
Igor Sysoev f0e9e3ace9 nginext has been renamed to unit. 2017-08-31 00:42:16 +03:00
Igor Sysoev 6160683544 Introduced module compatibility vector. 2017-08-31 00:42:12 +03:00
Igor Sysoev 3f10b05de9 Moving generating CGO header file to the make stage. 2017-08-31 00:42:08 +03:00
Igor Sysoev a812579842 Adding a missing slash to the tail of path set by --modules
command line option.
2017-08-30 21:44:39 +03:00
Igor Sysoev 740dc67ec8 The discovery process did not quit if no modules were not found. 2017-08-30 03:18:56 +03:00
Igor Sysoev cdc7e4479f Lib unit tests have been renamed to tests. 2017-08-30 00:31:02 +03:00
Igor Sysoev 9d487df10d The master process has been renamed to the main process. 2017-08-29 02:59:35 +03:00
Igor Sysoev 946867febe Improved English. 2017-08-29 02:22:22 +03:00
Igor Sysoev 28efb65ac4 Added configuration summary. 2017-08-26 13:37:44 +03:00
Igor Sysoev 93f7104a65 Added configure and command line option --help. 2017-08-26 13:37:44 +03:00
Igor Sysoev 0d65c896cf Added configure and command line option --control. 2017-08-26 13:37:44 +03:00
Igor Sysoev 7f5b57bfb9 Added configure and command line option --modules. 2017-08-26 13:37:44 +03:00
Igor Sysoev 9aaa7d8c20 Added configure option --user=USER and --group=GROUP. 2017-08-26 13:37:44 +03:00
Igor Sysoev e64494ba2c Added configure option --pid=FILE.
A pid file name can be relative.
The default pid file name is "nginext.pid".
2017-08-26 13:37:44 +03:00
Igor Sysoev d3a6d7805f Added configure options --prefix=PATH and --log=FILE.
A prefix is prepended to all relative names at configure stage.
There is no prefix by default.

A log file name can be relative.
The default log file name is "nginext.log".
2017-08-26 13:37:44 +03:00
Igor Sysoev 897b860e83 Introduced nxt_socket_defer_accept(). 2017-08-26 13:37:39 +03:00
Igor Sysoev 1a6036d022 Removed unused function. 2017-08-26 13:37:24 +03:00
Igor Sysoev f71e404151 Renamed configure option --no-unix-domain to --no-unix-sockets. 2017-08-24 18:38:34 +03:00
Igor Sysoev d7105ff300 Building IPv6 by default. 2017-08-24 18:33:13 +03:00
Igor Sysoev b84aa64dcb Removed configure option --no-threads. 2017-08-24 17:43:32 +03:00
Igor Sysoev 8b4b52ae3b Checking invalid command line options. 2017-08-24 17:43:31 +03:00
Igor Sysoev 1e53ff184c Added command line option --version. 2017-08-24 17:29:57 +03:00
Igor Sysoev 259b90b9d7 Removed command line option --workers. 2017-08-24 17:29:53 +03:00
Igor Sysoev 6ef9fb7d97 Renamed command line option --no-daemonize to --no-daemon. 2017-08-24 17:29:43 +03:00
Igor Sysoev 949548da29 The new module configuration interface.
Configuration and building example:

  ./configure
  ./configure python
  ./configure php
  ./configure go
  make all

or

  ./configure
  make nginext
  ./configure python
  make python
  ./configure php
  make php
  ./configure go
  make go

Modules configuration options and building examples:

  ./configure python --module=python2 --config=python2.7-config
  make python2

  ./configure php --module=php7 --config=php7.0-config
                  --lib-path=/usr/local/php7.0
  make php7

  ./configure go --go=go1.6 --go-path=${HOME}/go1.6
  make go1.6
2017-08-17 21:47:19 +03:00
Igor Sysoev 5ef8e0ee89 Removing auto/modules directory before commiting the new module
configuration infrastructure.
2017-08-17 21:47:19 +03:00
Igor Sysoev e62840cd54 Introducing configure option --with-php-ldflags=. 2017-08-04 08:21:22 +03:00
Igor Sysoev fc6c4fdeb6 Fixed building by GCC. 2017-08-04 07:48:50 +03:00
Igor Sysoev a94178a05e Listening socket creation and binding operations are passed
to the master process.
2017-08-02 21:11:20 +03:00
Igor Sysoev 145eeb8476 Improved PHP configure test. 2017-07-26 12:17:41 +03:00
Igor Sysoev 237bd6b1c2 Improved Python configure test. 2017-07-26 12:17:32 +03:00
Igor Sysoev 740382e36e Improved Go configure test. 2017-07-26 12:17:27 +03:00
Igor Sysoev d218c5f7b4 Updated Go configure test. 2017-07-25 20:29:02 +03:00
Igor Sysoev 68d35e9157 Fixed a bug introduced in the changeset 9585902ff351. 2017-07-19 23:11:55 +03:00
Igor Sysoev a782faa499 Listening sockets remaining from the previous configuration
were not updated with new parameters.
2017-07-19 22:36:03 +03:00
Igor Sysoev ba6c8e51be The master process title has been renamed to "main" process.
The command line is enclosed in brackets.
2017-07-19 15:22:40 +03:00
Igor Sysoev 0d7af2adf7 Removed "process" word from process title. 2017-07-19 10:49:46 +03:00
Igor Sysoev 21de5c1d18 Added application name in process title. 2017-07-18 22:27:13 +03:00
Igor Sysoev 9183ea3f71 Fixed building by Clang. 2017-07-18 18:04:17 +03:00
Igor Sysoev dbe6862395 Fixed building by Clang. 2017-07-16 19:56:59 +03:00
Igor Sysoev 6fc7b70646 Router configuration retention count fixed. 2017-07-16 19:56:09 +03:00
Igor Sysoev 6044e6f44f Router: joint must be added to engine's joint list in the
engine thread.
2017-07-16 19:55:56 +03:00
Igor Sysoev e134efcb9c Thread pools: various fixes. 2017-07-14 20:34:43 +03:00
Igor Sysoev b3464d563e Router: joint must be checked before memory pool destruction. 2017-07-14 20:34:38 +03:00
Igor Sysoev b5d0920491 Router: listening socket configuration retention count fixed. 2017-07-14 20:34:33 +03:00
Igor Sysoev 3ed35d725a Router: using joint job queues instead of arrays to pass
listening socket handlers to worker engines.
2017-07-14 17:17:15 +03:00
Igor Sysoev 668aabac3c Router: using joint jobs to pass listening socket handlers to
worker engines.
2017-07-14 17:17:15 +03:00
Igor Sysoev daaa216e2f Using correct task for connection initialization. 2017-07-13 22:44:46 +03:00
Igor Sysoev c5d791d0c4 Router: restoring listening sockets of the previous configuration. 2017-07-13 16:48:28 +03:00
Igor Sysoev 0324d51b8d Closing new listening sockets on configuration failure. 2017-07-12 21:21:00 +03:00
Igor Sysoev 4f4061061b Sending a result of configuration applying back to the controller. 2017-07-11 20:14:50 +03:00
Igor Sysoev 3bccb7f358 Introducing thread-safe nxt_random(). 2017-07-10 21:07:12 +03:00
Igor Sysoev aaf9378dcc Router: a fix in the previous changeset. 2017-07-07 21:20:29 +03:00
Igor Sysoev b54bcef53d Router: processing application configuration. 2017-07-07 21:09:45 +03:00
Igor Sysoev e1219569f4 An assertion on listening socket close. 2017-07-05 22:55:07 +03:00
Igor Sysoev 4ed0a15cd0 By default a number of router worker threads is set to a number
of CPUs.
2017-07-05 22:53:29 +03:00
Igor Sysoev 4fe5d22dcc Router: processing JSON configuration. 2017-07-05 14:05:21 +03:00
Igor Sysoev f05d674126 Added nxt_msec_t element to nxt_conf_map_object(). 2017-06-29 19:26:32 +03:00
Igor Sysoev 46c6513c2b Fixed port processing in nxt_sockaddr_text(). 2017-06-29 19:25:46 +03:00
Igor Sysoev 499a8f9ac8 Using static and constant linger structure. 2017-06-29 15:52:47 +03:00
Igor Sysoev 52f79c3e53 Fixed building on Solaris broken in changeset 4077decf847b. 2017-06-28 23:52:07 +03:00
Igor Sysoev ec5e540fd7 Fixed building with enabled IPv6 support. 2017-06-28 18:01:00 +03:00
Igor Sysoev ee381fcca1 JSON property iterator nxt_conf_json_object_next_member(). 2017-06-28 15:26:54 +03:00
Igor Sysoev d8f371dde9 Setting listen socket fields lost in changeset 10688b89aa16. 2017-06-28 15:16:28 +03:00
Igor Sysoev 61c20aae4b Small optimization in nxt_sockaddr_text(). 2017-06-28 09:33:35 +03:00
Igor Sysoev 2006e9f537 Fixed INET6 sockaddr processing in nxt_sockaddr_text(). 2017-06-27 20:06:59 +03:00
Igor Sysoev cf3e714c39 Fixed Unix sockaddr processing in nxt_sockaddr_text(). 2017-06-27 20:06:56 +03:00
Igor Sysoev 9041d276fc nxt_sockaddr_parse() introducted. 2017-06-27 19:06:58 +03:00
Igor Sysoev 3fcda23f15 Style and comment fixes. 2017-06-23 13:28:39 +03:00
Igor Sysoev 5e73d93999 Optimizations in nxt_mp_create(). 2017-06-21 10:21:06 +03:00
Igor Sysoev d59e906c01 Fixed building with -DNXT_DEBUG_MEMORY=1 (broken in 10688b89aa16). 2017-06-21 10:20:41 +03:00
Igor Sysoev 1a22195830 Fixed errors in the previous changeset. 2017-06-20 19:59:12 +03:00
Igor Sysoev f888a5310c Using new memory pool implementation. 2017-06-20 19:49:17 +03:00
Igor Sysoev c7ab908c19 Fixed error in the previous changeset. 2017-06-20 13:56:28 +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
Igor Sysoev 3e2632688f Router: follow up to HTTP parser changes. 2017-06-14 15:18:43 +03:00
Igor Sysoev d0c72e0726 C99 style declaration of connection states. 2017-06-06 18:57:58 +03:00
Igor Sysoev 49e9049ed2 Optimization of kqueue event processing on connection close. 2017-06-06 18:57:52 +03:00
Igor Sysoev 71c906a512 The controller did not work because of changes in the previous
changeset.
2017-06-06 18:53:15 +03:00
Igor Sysoev 5bc011afad Skeleton of router configuration and request processing. 2017-05-31 15:26:45 +03:00
Igor Sysoev f5c3b1c637 A small rbtree delete fixup optimization.
Setting node color to black is not required here because
it is already black.  Besides in the original algorithm
the node pointer is discarded and the node is set to tree
root just to quit the loop.

Thanks to 洪志道 (Hong Zhi Dao).
2017-05-29 10:17:36 +03:00
Igor Sysoev 4f9f463799 A small rbtree insert fixup optimization.
Thanks to 洪志道 (Hong Zhi Dao).
2017-05-26 19:12:47 +03:00
Igor Sysoev 1782c771fa Fixed error introduced in rev d3dfd7c497e8. 2017-05-12 15:42:23 +03:00
Igor Sysoev 60ae0314c0 Fixed building on MacOSX. 2017-04-11 15:59:17 +03:00
Igor Sysoev 3b8963da4d Event connection writing fixes. 2017-03-23 15:52:27 +03:00
Igor Sysoev e13cbdb439 Solaris compatibilty. 2017-03-14 19:52:57 +03:00