James Wilson
a3ffaf3c44
Flume fix part 2: avoid using flume in a couple of cases, and revert attempted fix#1 ( #396 )
...
* A second attempt to avoid the flume memory leak, since the first didn't actually work
* No luck with second flume fix, so revert to futures::mpsc in a few places)
* cargo fmt
* Add a comment to cover use of into_stream
2021-09-03 15:55:25 +01:00
James Wilson
2932075783
Avoid using flume::Receiver::into_stream() to avoid memory leaks until the issue is resolved upstream ( #394 )
...
* Tweak rolling_total test to also confirm capacity doesn't go nuts
* Use Jemalloc
* Avoid flume's into_stream and use a workaround for now
* cargo fmt
* Improve comments now that there's an issue to point to
2021-09-03 08:40:43 +01:00
James Wilson
b842c7fc8b
expose dropped message counts and fix some typos/wording
2021-08-13 11:33:53 +01:00
James Wilson
05a3ba3fef
Fix/expand a few comments
2021-08-12 16:20:05 +01:00
James Wilson
230987036a
cargo fmt
2021-08-12 16:01:35 +01:00
James Wilson
9017f328f0
Add comment explaining prometheus metrics endpoint body
2021-08-12 16:01:33 +01:00
James Wilson
92da674d4d
Expose metrics in a format that prometheus understands
2021-08-12 16:01:32 +01:00
James Wilson
703a9ddc4e
use flume throughout telemetry_core
2021-08-12 16:01:14 +01:00
James Wilson
8268cf2afe
print feed 1 msg len
2021-08-12 16:01:12 +01:00
James Wilson
98c9ccd278
fmt, clean warnings, tidy aggregator opts and add queue length limit
2021-08-12 16:01:11 +01:00
James Wilson
f26b39ac63
Address feedback from Niklas
2021-08-11 16:59:11 +01:00
James Wilson
9f76fabaed
give tokio threads a more convenient name for monitoring purposes
2021-08-09 11:36:46 +01:00
James Wilson
626fe95d89
1 aggregator loop by default for now
2021-08-09 10:13:10 +01:00
James Wilson
c99cbee1e9
Allow multiple aggregator loops in the core to try and spread feed subscription/send cost out
2021-08-07 17:08:58 +01:00
James Wilson
9c001bdcfd
Add a comment on core worker threads
2021-08-06 17:50:50 +01:00
James Wilson
8017d8b00f
Cargo fmt
2021-08-06 17:49:19 +01:00
James Wilson
78ad7115e5
set sensible worker thread limits again but allow full control to caller
2021-08-06 17:49:04 +01:00
James Wilson
88c3db3562
cargo fmt
2021-08-06 17:44:26 +01:00
James Wilson
0788270756
Add 'subscribe' benchmark
2021-08-06 14:22:01 +01:00
James Wilson
dbabd453e0
Remove feed message cap; it wasn't pulling its weight
2021-08-05 12:21:16 +01:00
James Wilson
bc75ebb068
default core/shard worker threads to 8/4 respectively
2021-08-05 12:18:44 +01:00
James Wilson
4da299bf76
Tweak logging around connections opening and messages coming in
2021-08-05 12:11:46 +01:00
James Wilson
acfe3d45d1
num-cpus to worker-threads; more accurate name
2021-08-05 11:31:47 +01:00
James Wilson
759d28b1a2
add --num-cpus option
2021-08-05 11:11:23 +01:00
James Wilson
6221cbfd17
Dev tweaks for testing
2021-08-05 11:11:05 +01:00
James Wilson
b70ab9ed3d
Add license to the top of each source file
2021-07-29 17:34:40 +01:00
James Wilson
83d31ef0b3
Add rolling total and allow control over bytes per second allowed from node connections
2021-07-28 16:08:02 +01:00
James Wilson
2ca5f6a1fb
cargo fmt
2021-07-27 12:38:05 +01:00
James Wilson
ecf5fccaab
make possible to test, test, and fix feed cutoff
2021-07-26 16:38:24 +01:00
James Wilson
50935b29fc
put a deadline on message sending to feeds
2021-07-26 11:52:46 +01:00
James Wilson
480abd1e49
remove println
2021-07-23 16:21:30 +01:00
James Wilson
0eff32d10e
Migrate telemetry_core to Hyper+Soketto
2021-07-23 15:57:50 +01:00
James Wilson
649fb966d2
Improve comment and bias select loop
2021-07-21 17:48:18 +01:00
James Wilson
cedc2f9dbe
tweak a comment
2021-07-21 13:59:44 +01:00
James Wilson
999d8ff0bd
debounce feed polling a little to reduce CPU load when lots of messages are being sent out
2021-07-21 12:06:22 +01:00
James Wilson
cca1df2e21
use ws_client in shard, too, and make it better at handling core disconnecting
2021-07-20 13:04:10 +01:00
James Wilson
db8ea9a8f3
Add more tests, fix (and test for) a deadlock re overquota messages, more unbounded channels and less .awaiting
2021-07-15 10:53:02 +01:00
James Wilson
c1208b9e81
cargo fmt
2021-07-13 16:51:24 +01:00
James Wilson
28be68e65f
Get a basic first test working, and lots of changes to supporting code to facilitate this
2021-07-09 19:41:53 +01:00
James Wilson
c043393e28
Write some basic test utils to get going; time to start trying them
2021-07-09 19:41:51 +01:00
James Wilson
f2adead2e9
rename binaries for clarity, and first pass of connect_to_servers test util
2021-07-09 19:41:47 +01:00