Tatsuhiro Tsujikawa
8acf9a2802
nghttpx: Trie based routing
2015-09-26 22:19:10 +09:00
Tatsuhiro Tsujikawa
044385ab6e
Add neverbleed support
...
neverbleed is disabled by default. To enable it, use
--with-neverbleed configure option.
2015-09-26 19:01:31 +09:00
Tatsuhiro Tsujikawa
389a96483a
nghttpx: Fix improper signal handling
2015-09-24 23:43:24 +09:00
Tatsuhiro Tsujikawa
ce1b11e3a0
nghttpx: Split monolithic one process into control and worker processes
...
The control process handles signals, reads configuration, reads
private keys, and bind port (which may be privileged one). It never
drop privileges, so that it can execute new binary with the same
privilege. It forks worker process. The worker process handles all
incoming connections. It drops privilege.
2015-09-18 23:28:26 +09:00
Lucas Pardue
ec47dfb9b8
Initial HTTP/1.1 capability. Add npn-list option to h2load. Make NPN/ALPN more runtime dependent
2015-09-17 14:49:27 +00:00
Tatsuhiro Tsujikawa
69c3e2114a
Again fix mruby build properly; pass CC, CXX and LD to build_config.rb
2015-09-05 18:22:46 +09:00
Tatsuhiro Tsujikawa
d076d54f67
nghttpx: Don't add mruby related CPPFLAGS and LDFLAGS if it is disabled
...
Setting unused -L really makes libtool get angry
2015-09-05 18:03:05 +09:00
Tatsuhiro Tsujikawa
aba7e9e7f9
Add mruby as submodule; disable mruby by default for now
2015-09-05 17:49:10 +09:00
Tatsuhiro Tsujikawa
bddc4a0a04
nghttpx: Rewrite API; introduce Env object
2015-09-05 00:53:42 +09:00
Tatsuhiro Tsujikawa
d044c58558
nghttpx: Detect mruby presence and guard mruby related code with ifdef
2015-09-04 00:54:41 +09:00
Tatsuhiro Tsujikawa
e06af02573
nghttpx: Add Response mruby object
2015-09-03 00:40:14 +09:00
Tatsuhiro Tsujikawa
068529586d
nghttpx: Split up request class definition to dedicated files
2015-09-02 22:38:57 +09:00
Tatsuhiro Tsujikawa
1508c50a45
nghttpx: Add basic infrastructure for mruby support
2015-09-02 02:45:15 +09:00
Tatsuhiro Tsujikawa
90b4b48c7e
nghttpx: Add shared session cache using memcached
2015-07-26 23:33:06 +09:00
Tatsuhiro Tsujikawa
c470ac7b00
asio: Fix missing nghttp2_timegm
2015-07-16 14:01:18 +09:00
Tatsuhiro Tsujikawa
8a2543d7b7
asio: Fix custom OpenSSL build
2015-07-11 19:37:04 +09:00
Tatsuhiro Tsujikawa
4bc9afe20a
nghttpx: Add OCSP stapling feature
2015-03-30 23:58:28 +09:00
Tatsuhiro Tsujikawa
4219fe7822
Bump up libnghttp2_asio LT revision to 1:0:0
2015-03-14 18:20:00 +09:00
Tatsuhiro Tsujikawa
6824319fe6
asio: Link with http-parser
2015-03-07 15:48:38 +09:00
Tatsuhiro Tsujikawa
018e9eaf6d
asio: Clean up server API to explicitly set error code
2015-03-07 01:10:49 +09:00
Tatsuhiro Tsujikawa
36aae8c310
asio: Move server::http2 to its own file
2015-03-06 01:58:56 +09:00
Tatsuhiro Tsujikawa
8baec366f0
asio: Make redirect_handler and status_handler part of public API
2015-03-05 23:32:21 +09:00
Tatsuhiro Tsujikawa
9efb62f40b
asio: Move server classes to dedicated files
2015-03-05 21:42:48 +09:00
Tatsuhiro Tsujikawa
e4ce595ebb
asio: Add serve_mux class to route incoming requet by path
...
serve_mux is direct port of ServeMux from go
2015-03-05 02:12:32 +09:00
Tatsuhiro Tsujikawa
26304546c4
[WIP] Add asio client interface
2015-03-05 02:12:31 +09:00
Tatsuhiro Tsujikawa
1c0d617742
nghttpx: Rename WorkerConfig as LogConfig
...
This is a sign that we only use thread-local storage for logging only.
2015-02-26 00:02:29 +09:00
Tatsuhiro Tsujikawa
795a22a320
src: Remove ringbuf.h, use buffer.h instead
2015-02-06 23:40:34 +09:00
Tatsuhiro Tsujikawa
54851ef7a6
src: Move make_unique to nghttp2 namespace
2015-02-06 00:15:43 +09:00
Tatsuhiro Tsujikawa
b2fb888363
Share I/O code with all upstreams/downstream objects
2015-02-05 03:05:34 +09:00
Tatsuhiro Tsujikawa
6b1ef95d3f
nghttpx: Replace RingBuf with sequential Buffer
...
It turns out that we don't need circular buffer functionality. We
replaced RingBuf with simple sequential Buffer.
2015-01-29 22:57:56 +09:00
Tatsuhiro Tsujikawa
fbd9bcb00e
Use _LDADD to specify libraries instead of _LDFLAGS
...
This is because _LDFLAGS comes before _LDADD. If we specify a library
and another library in _LDADD depends on it, we get undefined
reference error.
2015-01-25 00:58:30 +09:00
Tatsuhiro Tsujikawa
9938a4e952
Remove AM_EXTRA_RECURSIVE_TARGETS since travis automake is too old
2015-01-21 02:07:16 +09:00
Tatsuhiro Tsujikawa
6e446934d4
integration: Add recursive it target
2015-01-20 21:19:52 +09:00
Tatsuhiro Tsujikawa
91b40d1e84
src: Add test for memchunk.h
2015-01-10 23:01:03 +09:00
Tatsuhiro Tsujikawa
1795d3ea27
nghttp: Add include file to clarify used objects
2015-01-10 16:44:09 +09:00
Tatsuhiro Tsujikawa
0173929538
nghttpx: Rename ListenHandler as ConnectionHandler
2015-01-08 21:48:39 +09:00
Tatsuhiro Tsujikawa
db6eec653b
Fix errors reported by scan-build
2015-01-03 00:19:41 +09:00
Tatsuhiro Tsujikawa
bfac015d61
src: Use libev for rest of the applications
2015-01-03 00:19:41 +09:00
Tatsuhiro Tsujikawa
cd7258a7cd
Use libev for nghttpd
...
Benchmark shows 10% faster with libev compared to libevent. Also
response time in high load condition is much faster.
2015-01-03 00:19:41 +09:00
Tatsuhiro Tsujikawa
b352ae03a9
src: Fix undefined reference error
2014-12-16 01:09:19 +09:00
Tatsuhiro Tsujikawa
93ee9e30d8
nghttp, h2load: Use recommended ciphers and assign sane SSL_CTX options
2014-12-13 01:37:57 +09:00
Tatsuhiro Tsujikawa
03877c3752
asio-lib: Put ${AM_CPPFLAGS} before ${BOOST_CPPFLAGS}
2014-12-01 23:20:53 +09:00
Tatsuhiro Tsujikawa
54a3209cf5
configure.ac: Rename some variables so that they follow automake convention
2014-12-01 23:14:28 +09:00
Tatsuhiro Tsujikawa
7036859823
Do not change user variable CFLAGS in configure.ac
2014-12-01 23:06:11 +09:00
Tatsuhiro Tsujikawa
20de432725
nghttpx: Pool http downstream connection per thread
2014-10-13 21:09:00 +09:00
Tatsuhiro Tsujikawa
7a09feebc3
h2load: Don't use std::future with --disable-threads
...
Now we don't use std::future with --disable-threads, checking
std::future in configure.ac was removed and building h2load is always
enabled.
2014-10-05 14:25:15 +09:00
Tatsuhiro Tsujikawa
5d0bf4cc84
Add C++ library libnghttp2_asio on top of libnghttp2
...
The libnghttp2_asio library is C++ library built on top of libnghttp2.
Currently, it has server API and easily create HTTP/2 server using
node.js like API calls. See the example server source code in
examples/asio-sv.cc. The library depends on Boost::ASIO library.
2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa
446f8f13aa
src: Move libevent related helper functions to libevent_util
2014-09-24 00:45:40 +09:00
Tatsuhiro Tsujikawa
c7e9fe8154
nghttpx: Implement connection blocker for HTTP/1 backend
2014-08-19 23:36:04 +09:00
Tatsuhiro Tsujikawa
5c61917007
src: Move jemalloc front so that it is surely linked
2014-08-05 22:27:54 +09:00