Seva
b90e14edd6
dhtproxy: rewrite stats with restinio
2019-05-27 14:59:19 -04:00
Seva
9e3e9e65e6
dhtproxy: switch server to restinio
...
rewrite options, getNodeInfo, get & put
opendht: bump to c++14
2019-05-27 14:59:19 -04:00
Adrien Béraud
0692bd9bc9
proxy server: fix warning when building without push notifications
2019-04-30 17:47:40 -04:00
Adrien Béraud
f418b3651f
update copyright date
2019-03-16 12:37:23 -04:00
Adrien Béraud
1c74c2207f
proxy server: cache json StreamBuilder
2019-02-19 18:43:14 -05:00
Adrien Béraud
e5f2a6eef5
proxy: send expired to sync values
2019-02-19 18:43:14 -05:00
Adrien Béraud
55f6c847b8
build: use define flags for proxy
2019-02-19 18:43:14 -05:00
Adrien Béraud
00cc4ebe28
proxy server: send push notification on thread pool
2019-02-19 18:43:14 -05:00
Adrien Béraud
aa93db4fa6
proxy server: move json to sendPushNotification
2019-02-19 18:43:14 -05:00
Sébastien Blin
75a14d3608
proxy: only get old values at first subscribe
2019-01-18 22:53:24 -08:00
Sébastien Blin
d523e9f259
tests: test retrieve values when resubscribe
2019-01-14 10:53:08 -08:00
Sébastien Blin
3a3933e6d5
dhtproxy: remove sendSubscribe
2019-01-14 10:53:08 -08:00
Sébastien Blin
70f09ded3f
dhtproxy: avoid notification after subscribe to retrieve values
2019-01-14 10:53:08 -08:00
Sébastien Blin
824a1bf5fa
proxy_server: return old values when resubscribe
2019-01-14 10:53:08 -08:00
Sébastien Blin
36cf70f2a7
proxy: remove useless token for push listeners
...
Since we authentificate listeners with the clientId and the hash and
we use only one listener by hash/clientId, we doesn't need to store
a token always equals to 0.
Note: also avoid to get multiple hashes for one push notification.
2018-12-30 13:35:18 -05:00
Adrien Béraud
c05a93ae54
proxy server: cleanup
2018-10-29 12:45:52 -04:00
Adrien Béraud
ff83a6daab
proxy: support value expiration
2018-10-29 12:45:52 -04:00
Adrien Béraud
94926cea22
proxy server: avoid early session close
2018-10-27 13:21:26 -04:00
Adrien Béraud
3e148599c5
proxy server: stop get if session is closed
2018-10-27 12:20:00 -04:00
Sébastien Blin
f54fcd768f
proxyserver: add stats endpoint for monitoring
2018-08-10 15:03:09 -04:00
Adrien Béraud
96c60d39ed
proxy server: reschedule after using function
2018-06-12 18:19:12 -04:00
Sébastien Blin
aef8aa545b
proxy: reschedule printStatsJob
2018-06-06 12:08:31 -04:00
Adrien Béraud
07bed77714
proxy server: schedule task from outside thread
2018-06-05 19:43:56 -04:00
Adrien Béraud
aa202b2cd8
dhtrunner: add getNodeInfo()
...
Allow to retrieve all dht stats in a single API call using
the new method getNodeInfo() and the JSON-serializable
new structure NodeInfo.
2018-06-05 19:43:56 -04:00
Sébastien Blin
709a2c7b7c
dht_proxy_server: avoid mutex when getting /
...
The dht_proxy_server should be always up, so getNodesStats will
be pretty always up-to-date. We can add it into a job and avoid
to wait for this method to finish (and this method use an
internal lock) to have a quick answer about the status of the proxy.
Note: the update is forced during the initialization of the proxy
2018-05-30 14:25:46 -04:00
Adrien Béraud
b2ba1ca002
proxy server: close socket if no token
2018-05-17 11:33:32 -04:00
Adrien Béraud
6a981772fd
proxy server: cleanup
2018-04-21 17:57:59 -04:00
Adrien Béraud
c6cef856f0
proxy server: cleanup
2018-04-21 12:23:33 -04:00
Sébastien Blin
9421984a89
proxy: cancelPushListeners using clientId instead of token
...
All listeners uses a token equals to 0, we need to identify listeners
with client_id instead of a token.
2018-04-20 16:37:12 -04:00
Sébastien Blin
37ef1c2cff
proxy: set clientId to listener
...
clientId was not properly set. so every time someone launch a node
and do a listen on a hash, a new listener is generated and it results
by flooding the node of push notifications.
2018-04-20 16:19:03 -04:00
Sébastien Blin
0a04a7f28d
proxy: unsubscribe is now valid with token equals 0
...
Because we now have one listener for each client by hash, the token
is unnecessary here. Moreover, this check is invalid cause we use
a token equal to 0.
2018-04-20 15:25:57 -04:00
Adrien Béraud
da1b7d4615
proxy server: send refresh notification with margin
2018-04-16 15:05:28 -04:00
Adrien Béraud
abb9f9291b
proxy server: avoid unneeded copy
2018-04-14 18:15:02 -04:00
Adrien Béraud
e533f5686e
proxy server: use std::lock to avoid deadlock
2018-04-14 18:14:42 -04:00
Adrien Béraud
4234908b69
proxy server: check refresh job
2018-04-13 15:59:46 -04:00
Adrien Béraud
c10c4251b0
proxy server: print stats to stdout once in a while
2018-04-13 15:52:56 -04:00
Adrien Béraud
8b90c47379
proxy server: add logs
2018-04-13 15:06:49 -04:00
Adrien Béraud
a48a965c1a
proxy server: catch exceptions in requests, always close connection
2018-04-13 14:01:09 -04:00
Adrien Béraud
e088cd10be
proxy server: keep only one push listener per token.key.clientId
2018-04-10 16:01:14 -04:00
Adrien Béraud
7b88a2122a
proxy: always use string tokens
2018-04-10 12:48:19 -04:00
Sébastien Blin
5b71af3cec
proxy: remove useless callback_id
...
callback_id was used for token problems which are not present anymore.
Now token is sufficient and we can remove callback_id.
2018-04-03 10:43:56 -04:00
Sébastien Blin
62bbce76f2
scheduler: avoid overflow causing 100% cpu usage
2018-03-29 11:40:04 -04:00
Adrien Béraud
0edee443f5
cache: improve value expiration handling
2018-03-28 09:54:04 -04:00
Sébastien Blin
fcac10c4c8
proxyserver: fix cancelListen and reduce push notifications number
2018-02-26 17:01:23 -05:00
Adrien Béraud
56caae019c
proxy server: add push notification ttl
2018-02-19 02:10:56 +01:00
Adrien Béraud
f5afcbf62b
proxy server: use high priority notifications
...
Normal priority notifications may be delayed.
2018-02-16 01:54:44 +01:00
Adrien Béraud
3a632b1544
proxy server: add logs
2018-02-10 14:31:23 +01:00
Adrien Béraud
e274ffd83b
headers: unify API across build options
2018-01-31 18:07:43 +01:00
Adrien Béraud
1d6a307b6b
proxy server: send data push message instead of notification
2018-01-11 17:01:10 -05:00
Adrien Béraud
ef82a7ecba
proxy client: make proxy status check asynchronous
2018-01-11 14:24:59 -05:00