Georgy Rylov
c25c5bd050
Applying clang-format with saving indentations ( #140 )
...
* applying clang-format with saving indentations
* rebase
2020-04-02 16:00:56 +05:00
Dmitry Simonenko
2e03af9c88
odyssey: major router and shared logic rework
...
Goal is to improve overall performance during massive peaks
of connecting clients.
This patch makes router a shared structure, instead of
being run in separate system worker thread/coroutine.
Now router and each route object is protected by
separate mutex. Worker threads directly access router object
without calls to separate thread.
2018-12-06 17:23:15 +03:00
Dmitry Simonenko
da7e6ea7a5
odyssey: major io rework and refactoring
...
This patch moves Odyssey from stream based write caching
to message driven. All write operations are delayed
and happen on a group of messages.
This removes necessity to do IO and wait for write completion during calls
from SSL_write() context. Write timings should behave more predictable now and
number of used syscalls should be also decreased.
This patch also simplifies caching management. All clients are simply
reusing cached messages without prolonged contention.
Several configuration options are no longer used:
pipeline, cache, cache_chunk
2018-08-28 17:43:46 +03:00
Dmitry Simonenko
f7a4438ec1
odyssey: move stats out of server_t
2018-08-02 16:38:36 +03:00
Dmitry Simonenko
5ca3fa926a
odyssey: update source file headers
2018-04-04 16:19:58 +03:00
Dmitry Simonenko
38430a9d51
odyssey: remove config versioning
2018-03-21 17:36:57 +03:00
Dmitry Simonenko
9fcf2a4a80
odyssey: remake pooler service as system
2018-03-13 16:26:04 +03:00
Dmitry Simonenko
20a092098e
odyssey: remake system_t as global_t
2018-03-13 16:17:27 +03:00
Dmitry Simonenko
f108dcba09
odyssey: project rename
2018-03-12 17:03:15 +03:00
Dmitry Simonenko
bb826db7e8
odissey: major scheme rework, rename it to config
2018-03-06 18:23:52 +03:00
Dmitry Simonenko
4df9f8e760
odissey: move config to config_reader
2018-03-05 17:24:30 +03:00
Dmitry Simonenko
d48cd092a0
odissey: relay and relay_pool is worker and worker_pool now
2018-03-02 13:00:52 +03:00
Dmitry Simonenko
a19f18cef1
odissey: rework router cancel logic
2018-02-22 16:43:52 +03:00
Dmitry Simonenko
9d944b51f4
odissey: move server connection close out of pooler
2018-02-15 16:06:46 +03:00
Dmitry Simonenko
f11a98432f
odissey: rework server buffering using client stream
2018-02-13 16:33:40 +03:00
Dmitry Simonenko
0cc0f949b3
odissey: make server stream shared driven by attach/detach logic
2018-02-12 16:29:40 +03:00
Dmitry Simonenko
7991ee0fb0
odissey: use copy safe od_snprintf() implementation
2017-11-27 15:54:16 +03:00
Dmitry Simonenko
7e217b3b5a
odissey: major logging rework (introduce log format)
2017-09-21 16:44:19 +03:00
Dmitry Simonenko
5b29494781
odissey: implement detached error object
2017-09-15 16:08:42 +03:00
Dmitry Simonenko
610cf23c7c
odissey: reorder instance.h inclusion
2017-09-15 15:58:29 +03:00
Dmitry Simonenko
d4b9d8190d
odissey: implement show clients
2017-08-17 18:38:28 +03:00
Dmitry Simonenko
1f8ddf885e
odissey: update file includes
2017-08-08 16:50:50 +03:00
Dmitry Simonenko
1281366aa5
odissey: refactor id prefix logging
2017-07-26 17:35:39 +03:00
Dmitry Simonenko
f28b38bc1a
odissey: major logger rework
2017-07-26 17:05:29 +03:00
Dmitry Simonenko
f89c577412
odissey: add scheme manager; first attempt to make scheme versional
2017-07-14 16:40:31 +03:00
Dmitry Simonenko
d02e2c20be
odissey: configuration parser major rework
2017-07-12 17:09:48 +03:00
Dmitry Simonenko
3e2233dddf
odissey: minor fixes
2017-07-06 16:56:17 +03:00
Dmitry Simonenko
717de6124d
odissey: major shapito api update
2017-07-06 16:36:14 +03:00
Dmitry Simonenko
8283a2d665
odissey: update banners
2017-07-05 15:42:49 +03:00
Dmitry Simonenko
9e096b96b2
odissey: rework file naming and include path
2017-07-05 15:15:17 +03:00