Benjamin Sergeant
|
12f36b61ff
|
(websocket server) Handle programmer error when the server callback is not registered properly (fix #227)
|
2020-08-06 04:40:32 -07:00 |
|
Benjamin Sergeant
|
b15c4189f5
|
add csharp/dotnet devnull client to measure througput with different runtimes
|
2020-08-05 13:59:26 -07:00 |
|
Benjamin Sergeant
|
74d3278258
|
add python test file to benchmark how many messages can be received per second
|
2020-08-04 10:53:35 -07:00 |
|
Benjamin Sergeant
|
831152b906
|
add a devnull like sample code using libwebsockets C library, to see how many messages per second a client library can receive (answer is about the same as IXWebSocket)
|
2020-08-02 19:26:19 -07:00 |
|
Benjamin Sergeant
|
7c81a98632
|
Add a node.js benchmarking test program, to see how fast node can receive messages.
|
2020-08-02 14:21:11 -07:00 |
|
Benjamin Sergeant
|
6e47c62c06
|
(ws) Add a new ws sub-command, push_server. This command runs a server which sends many messages in a loop to a websocket client. We can receive above 200,000 messages per second (cf #235).
|
2020-08-02 12:41:34 -07:00 |
|
Benjamin Sergeant
|
bcae7f326d
|
(ws) Add a new ws sub-command, echo_client. This command send a message to an echo server, and send back to a server whatever message it does receive. When connecting to a local ws echo_server, on my MacBook Pro 2015 I can send/receive around 30,000 messages per second. (cf #235)
|
2020-08-02 12:09:13 -07:00 |
|
Benjamin Sergeant
|
d719c41e31
|
(ws) ws echo_server. Add a -q option to only enable warning and error log levels. This is useful for bench-marking so that we do not print a lot of things on the console. (cf #235)
|
2020-08-02 11:53:21 -07:00 |
|
Benjamin Sergeant
|
6f0307fb35
|
(build) make using zlib optional, with the caveat that some http and websocket features are not available when zlib is absent
|
2020-07-31 22:54:57 -07:00 |
|
Benjamin Sergeant
|
2e3d625c1e
|
(websocket client) onProgressCallback not called for short messages on a websocket (fix #233)
|
2020-07-29 17:47:33 -07:00 |
|
Benjamin Sergeant
|
029289413c
|
ws test shell script / add option so tune how large sent file will be
|
2020-07-29 17:46:37 -07:00 |
|
Benjamin Sergeant
|
4d51098c86
|
(websocket client) heartbeat is not sent at the requested frequency (fix #232)
|
2020-07-29 11:24:42 -07:00 |
|
Benjamin Sergeant
|
c2b05af022
|
can compile on macOS against jsoncpp installed from homebrew
|
2020-07-28 22:00:29 -07:00 |
|
Benjamin Sergeant
|
e85f975ab0
|
compiler warning fixes
|
2020-07-28 21:46:26 -07:00 |
|
Benjamin Sergeant
|
dc77d62a5d
|
(ixcobra) CobraConnection: unsubscribe from all subscriptions when disconnecting
|
2020-07-28 10:32:18 -07:00 |
|
Benjamin Sergeant
|
4f41f209a2
|
(socket utility) move ix::getFreePort to ixwebsocket library
|
2020-07-27 18:17:13 -07:00 |
|
Benjamin Sergeant
|
5940e53d77
|
enable cobra tests which were disabled
|
2020-07-27 17:39:53 -07:00 |
|
Benjamin Sergeant
|
22dffd5b7e
|
WebSocket::close is re-entrant
|
2020-07-27 17:38:33 -07:00 |
|
Benjamin Sergeant
|
af2f31045d
|
snake server / join subscription background thread in the ConnectionState destructor + attach cobra message subscription id to the connection state instead of having it be a local reference that gets unbound
|
2020-07-27 17:35:03 -07:00 |
|
Benjamin Sergeant
|
5daa59f9f3
|
minor makefile tweaks
|
2020-07-27 17:19:05 -07:00 |
|
Benjamin Sergeant
|
2ea9d06a93
|
fix typo in unittest string description: ununexpected -> unsubscribed
|
2020-07-27 17:16:53 -07:00 |
|
Benjamin Sergeant
|
847fc142d1
|
(ixwebsocket server) change legacy api with 2 nested callbacks, so that the first api takes a weak_ptr<WebSocket> as its first argument
|
2020-07-25 11:42:07 -07:00 |
|
Benjamin Sergeant
|
0388459bd0
|
(ixwebsocket) add WebSocketProxyServer, from ws. Still need to make the interface better.
|
2020-07-25 11:26:06 -07:00 |
|
Benjamin Sergeant
|
9a47ec1217
|
(ixsnake) uses an std::thread to handle redis subscriptions (2 unittest still failing)
|
2020-07-24 18:12:07 -07:00 |
|
Benjamin Sergeant
|
45a40c8640
|
new Dockerfile to run locally the test on an Ubuntu 20.04 system
|
2020-07-24 14:46:09 -07:00 |
|
Benjamin Sergeant
|
e34f1c30d6
|
(ws) port broadcast_server sub-command to the new server API
|
2020-07-24 14:35:07 -07:00 |
|
Benjamin Sergeant
|
c14a4c0e3e
|
formatting
|
2020-07-24 13:04:14 -07:00 |
|
Benjamin Sergeant
|
b146e93a3a
|
(unittest) port most unittests to the new server API
|
2020-07-24 12:49:36 -07:00 |
|
Benjamin Sergeant
|
9957ec9724
|
(ws) port ws snake to the new server API
|
2020-07-24 12:33:17 -07:00 |
|
Benjamin Sergeant
|
78a42f61bd
|
add tool to ease making commits
|
2020-07-24 11:53:09 -07:00 |
|
Benjamin Sergeant
|
e78019dad6
|
(ws) port ws transfer to the new server API
|
2020-07-24 11:52:16 -07:00 |
|
Benjamin Sergeant
|
0f026c5da2
|
(websocket client) reset WebSocketTransport onClose callback in the WebSocket destructor
|
2020-07-24 10:03:29 -07:00 |
|
Benjamin Sergeant
|
c26a2d5d39
|
(websocket server) reset client websocket callback when the connection is closed
|
2020-07-24 09:41:02 -07:00 |
|
Benjamin Sergeant
|
2798886c0b
|
(websocket server) add a new simpler API to handle client connections / that API does not trigger a memory leak while the previous one did
|
2020-07-23 19:29:41 -07:00 |
|
Benjamin Sergeant
|
ffde283a4b
|
(build) merge platform specific files which were used to have different implementations for setting a thread name into a single file, to make it easier to include every source files and build the ixwebsocket library (fix #226)
|
2020-07-17 11:58:06 -07:00 |
|
Benjamin Sergeant
|
f7031d0d3e
|
set thread name in only one file
|
2020-07-17 11:43:50 -07:00 |
|
Benjamin Sergeant
|
595e6c57df
|
IXSelectInterruptPipe.h included in cmake on windows but compiled out
|
2020-07-17 11:33:02 -07:00 |
|
Benjamin Sergeant
|
87709c201e
|
(socket server) bump default max connection count from 32 to 128
|
2020-07-10 17:11:11 -07:00 |
|
Benjamin Sergeant
|
e70d83ace1
|
(snake) implement super simple stream sql expression support in snake server
|
2020-07-10 16:10:59 -07:00 |
|
Benjamin Sergeant
|
ca829a3a98
|
implement very very simple stream sql support
|
2020-07-10 16:07:51 -07:00 |
|
Benjamin Sergeant
|
26a1e63626
|
snake: stream sql mock + add republished channel option
|
2020-07-10 15:06:55 -07:00 |
|
Benjamin Sergeant
|
c98959b895
|
comment out unittest which cannot be activated yet
|
2020-07-09 10:34:52 -07:00 |
|
Benjamin Sergeant
|
b21306376b
|
uwp build fix + more ivp6 support
|
2020-07-08 12:38:55 -07:00 |
|
Benjamin Sergeant
|
fbd17685a1
|
(socket+websocket+http+redis+snake servers) expose the remote ip and remote port when a new connection is made (see #222) / only ipv4 is handled
|
2020-07-08 12:10:35 -07:00 |
|
Benjamin Sergeant
|
3a673575dd
|
clang format
|
2020-07-08 10:39:46 -07:00 |
|
Benjamin Sergeant
|
d5e51840ab
|
use const iterators
|
2020-07-08 10:34:14 -07:00 |
|
Benjamin Sergeant
|
543c2086b2
|
more templates in WebSocketTransport
|
2020-07-07 21:26:42 -07:00 |
|
Benjamin Sergeant
|
95eab59c08
|
WebSocketPerMessageDeflateCompressor can work with vector or std::string
|
2020-07-07 21:26:04 -07:00 |
|
Benjamin Sergeant
|
e9e768a288
|
better unittest for IXWebSocketPerMessageDeflateCompressor
|
2020-07-07 21:15:34 -07:00 |
|
Benjamin Sergeant
|
e2180a1f31
|
add unittest for IXWebSocketPerMessageDeflateCompressor
|
2020-07-07 20:56:38 -07:00 |
|
Benjamin Sergeant
|
7c1b57c8cd
|
(cmake) change the way zlib and openssl are searched
|
2020-07-07 10:58:20 -07:00 |
|
Benjamin Sergeant
|
89e7a35a81
|
add cmake comment about using a custom zlib
|
2020-07-06 18:34:14 -07:00 |
|
Benjamin Sergeant
|
de6acfe54e
|
Merge branch 'flagarde-patch-1'
|
2020-07-06 18:31:05 -07:00 |
|
Benjamin Sergeant
|
4789e190a0
|
zlib needs to be found (with vcpkg in CI), do not use our bundled copy
|
2020-07-06 18:09:45 -07:00 |
|
Benjamin Sergeant
|
d6366587a0
|
(UWP CI) install zlib from vcpkg
|
2020-07-06 17:52:28 -07:00 |
|
Benjamin Sergeant
|
dddf00e3b1
|
(cobra python bots) remove the test which stop the bot when events do not follow cobra metrics system schema with an id and a device entry
|
2020-07-06 16:15:24 -07:00 |
|
Benjamin Sergeant
|
cc47fb1c83
|
(cobra bots) remove bots which is not required now that we can use Python extensions
|
2020-06-26 16:49:08 -07:00 |
|
Benjamin Sergeant
|
8e8cea1bcd
|
delete C++ code for first memory warning
|
2020-06-25 11:22:21 -07:00 |
|
Benjamin Sergeant
|
68c97da518
|
(cmake) new python code is optional and enabled at cmake time with -DUSE_PYTHON=1
|
2020-06-25 10:05:02 -07:00 |
|
Benjamin Sergeant
|
f8b8799799
|
fix windows compile error with misplaced #ifdefs/#endifs
|
2020-06-24 23:26:14 -07:00 |
|
Benjamin Sergeant
|
615f1778c3
|
new cobra to python bot (still sending to statsd)
values + string building can be done in python (we are embedding it)
|
2020-06-24 23:21:19 -07:00 |
|
Benjamin Sergeant
|
c45b197c85
|
(cobra metrics to statsd bot) fps slow frame info : do not include os name
|
2020-06-19 18:10:49 -07:00 |
|
Benjamin Sergeant
|
78713895dd
|
(cobra metrics to statsd bot) send info about memory warnings
|
2020-06-19 17:46:59 -07:00 |
|
Benjamin Sergeant
|
aae2402ed2
|
disable flaky unittest once again ... ping pong is not reliable timing wise
|
2020-06-19 01:16:07 -07:00 |
|
Benjamin Sergeant
|
b62de6e516
|
tweak ping/pong test to be more lenient
|
2020-06-19 01:11:05 -07:00 |
|
Benjamin Sergeant
|
6e747849d7
|
enable ping unittest, which is flaky -> see #218
|
2020-06-19 01:04:44 -07:00 |
|
Benjamin Sergeant
|
a3a73ce1ac
|
add unittest to test http redirection fully
|
2020-06-19 00:22:39 -07:00 |
|
Benjamin Sergeant
|
10c014bf98
|
(http client) fix deadlock when following redirects
|
2020-06-19 00:11:06 -07:00 |
|
Benjamin Sergeant
|
9bb3643fc7
|
(cobra metrics to statsd bot) send info about net requests
|
2020-06-18 11:25:48 -07:00 |
|
Benjamin Sergeant
|
56db55caca
|
(bots) display received/sent message logs only if we are authenticated
|
2020-06-18 10:49:36 -07:00 |
|
Benjamin Sergeant
|
565a08b229
|
(cobra client and bots) add batch_size subscription option for retrieving multiple messages at once
|
2020-06-17 17:13:45 -07:00 |
|
Benjamin Sergeant
|
bf0f11fd65
|
fix size_t with int comparison warning
|
2020-06-17 16:56:06 -07:00 |
|
Benjamin Sergeant
|
558daf8911
|
(websocket) WebSocketServer is not a final class, so that users can extend it (fix #215)
|
2020-06-15 18:29:42 -07:00 |
|
Benjamin Sergeant
|
7ba7ff4b2a
|
(cobra bots) minor aesthetic change, in how we display http headers with a : then space as key value separator instead of :: with
no space
|
2020-06-15 16:09:31 -07:00 |
|
Benjamin Sergeant
|
aa142df486
|
(cobra metrics to statsd bot) change from a statsd type of gauge to a timing one
|
2020-06-12 13:47:01 -07:00 |
|
Benjamin Sergeant
|
5e200a440f
|
(redis cobra bots) capture most used devices in a zset
|
2020-06-11 18:49:45 -07:00 |
|
Benjamin Sergeant
|
6ed8723d7d
|
try to fix a double linking error on Windows with linenoise.hpp
|
2020-06-11 18:01:45 -07:00 |
|
Benjamin Sergeant
|
ac9710d5d6
|
(ws) add bare bone redis-cli like sub-command, with command line editing powered by libnoise
|
2020-06-11 17:30:42 -07:00 |
|
Benjamin Sergeant
|
35d76c20dc
|
add redis cli skeleton ws sub-command
|
2020-06-11 13:51:10 -07:00 |
|
Benjamin Sergeant
|
ca7344d9dc
|
use reference in range for loop
|
2020-06-11 13:50:37 -07:00 |
|
Benjamin Sergeant
|
7603d1a71b
|
(redis cobra bots) ws cobra metrics to redis / hostname invalid parsing
|
2020-06-11 08:33:36 -07:00 |
|
Benjamin Sergeant
|
d0cd4aed5a
|
(redis cobra bots) xadd with maxlen + fix bug in xadd client implementation and ws cobra metrics to redis command argument parsing
|
2020-06-11 08:20:03 -07:00 |
|
Benjamin Sergeant
|
c5aadffa08
|
(redis cobra bots) update the cobra to redis bot to use the bot framework, and change it to report fps metrics into redis streams.
|
2020-06-10 22:30:55 -07:00 |
|
Benjamin Sergeant
|
ecfca1f905
|
cobra bots: handle stalled connection by disconnecting and reconnecting instead of quitting, and expecting kubernete to restart us
|
2020-06-09 21:39:37 -07:00 |
|
Benjamin Sergeant
|
e49bf24d2d
|
add device counter
|
2020-06-09 20:10:37 -07:00 |
|
Benjamin Sergeant
|
2a1cd6bb3e
|
Merge branch 'feature/cobra_metrics_to_statsd'
|
2020-06-08 18:34:18 -07:00 |
|
Benjamin Sergeant
|
766e33774c
|
count slow frames
|
2020-06-08 18:19:01 -07:00 |
|
Benjamin Sergeant
|
9b90b1d302
|
fix cmake warning about mbedtls name incorrect case (all uppercase)
|
2020-06-04 15:01:49 -07:00 |
|
Benjamin Sergeant
|
ee8a3a52ec
|
compile tweak on linux + version bump
|
2020-06-04 15:01:16 -07:00 |
|
Benjamin Sergeant
|
531bd624b5
|
remove spaces in keys + verbose statsd
|
2020-06-04 14:57:36 -07:00 |
|
Benjamin Sergeant
|
abd6581242
|
(cobra bots) set thread name for utility threads
|
2020-06-04 09:52:44 -07:00 |
|
Benjamin Sergeant
|
7095367b93
|
(cobra bots) set thread name for utility threads
|
2020-06-04 09:52:35 -07:00 |
|
Benjamin Sergeant
|
3bb359a774
|
fix warnings
|
2020-06-04 09:48:16 -07:00 |
|
Benjamin Sergeant
|
1c6ff733f9
|
fix cmake warning about mbedtls name incorrect case (all uppercase)
|
2020-06-04 09:41:12 -07:00 |
|
Benjamin Sergeant
|
2ecf5d8a5a
|
(statsd cobra bots) statsd improvement: prefix does not need a dot as a suffix, message size can be larger than 256 bytes, error handling was invalid, use core logger for logging instead of std::cerr
|
2020-06-04 09:37:16 -07:00 |
|
Benjamin Sergeant
|
0f88969b77
|
add metrics statsd files
|
2020-06-04 09:36:28 -07:00 |
|
Benjamin Sergeant
|
c317100b47
|
(statsd cobra bots) statsd improvement: prefix does not need a dot as a suffix, message size can be larger than 256 bytes, error handling was invalid, use core logger for logging instead of std::cerr
|
2020-06-04 09:35:55 -07:00 |
|
Benjamin Sergeant
|
b029f176b6
|
add new subcommand + skeleton files
|
2020-06-03 16:29:25 -07:00 |
|
Benjamin Sergeant
|
bcfcfb628e
|
build docker file with alpine 3.12
|
2020-06-02 20:31:32 -07:00 |
|
Benjamin Sergeant
|
268f528423
|
httpd gzip compression / set a response header and search for gzip in the request header in case deflate is added to gzip in there
|
2020-06-01 17:11:42 -07:00 |
|