Commit Graph

447 Commits

Author SHA1 Message Date
rootdarkarchon
541f86c116 block anything from user data that is not allowed to be synced 2023-01-23 09:34:57 +01:00
rootdarkarchon
91b98d060a do not use request semaphore for check queue requests 2023-01-22 00:11:21 +01:00
rootdarkarchon
4dade47819 adjustments to auth 2023-01-21 02:46:18 +01:00
rootdarkarchon
99cf46875b actually add invalid game paths and file swap paths to show in the error message 2023-01-19 18:30:29 +01:00
rootdarkarchon
d7e664477f Merge branch 'main' of https://github.com/Penumbra-Sync/server 2023-01-18 19:46:36 +01:00
rootdarkarchon
fe80faab6b potentially fix stuck uploads 2023-01-18 19:46:03 +01:00
rootdarkarchon
35f61d5387 add configurable redis pool and allow redis timeout 2023-01-18 11:11:59 +01:00
rootdarkarchon
e97f4cb6d6 enqueue user if they somehow lost the queue but got no positive reply from the server 2023-01-18 11:06:30 +01:00
rootdarkarchon
9b4e298b66 refactor server auth on files server, add checking request queue 2023-01-18 10:20:24 +01:00
rootdarkarchon
20d8970a15 return in RemoveFromQueue always when not in queue 2023-01-15 18:32:48 +01:00
rootdarkarchon
4bd71a5889 Download rework (#22)
* rework server to send download ready back via signalr

* adjust queue handling for removal

* adjust api to main

Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
2023-01-15 16:00:38 +01:00
rootdarkarchon
5e0e21ef68 parallel for the queue processing, up request semaphore, remove queue position (unused), bump api version 2023-01-15 01:44:10 +01:00
rootdarkarchon
e968adb7be actually start the queue processing timer 2023-01-15 01:12:46 +01:00
rootdarkarchon
60f6bb5829 ignore queue semaphore when processing queue 2023-01-15 01:10:35 +01:00
rootdarkarchon
b230f12508 decrease parallel request handling 2023-01-15 01:08:44 +01:00
rootdarkarchon
cf6ad890cd try processing queue with timer instead of task 2023-01-15 01:07:45 +01:00
rootdarkarchon
3fc6b01df9 adjust try/catch/finally for semaphore release 2023-01-15 00:52:21 +01:00
rootdarkarchon
b806ef8b7b temporary test limiting parallel requests to 500 2023-01-15 00:48:32 +01:00
rootdarkarchon
aa177583e0 sanitize queue processing 2023-01-14 12:57:34 +01:00
rootdarkarchon
9605be8d4a minor stylefixes 2023-01-14 12:54:11 +01:00
rootdarkarchon
8c39f9ce81 fix null in AuthorizeAsync 2023-01-11 23:05:00 +01:00
rootdarkarchon
a0cea2432f fixes for activate/finishrequest 2023-01-11 17:22:04 +01:00
rootdarkarchon
c1f329c233 fixes for server auth 2023-01-11 14:31:33 +01:00
rootdarkarchon
617bc6afc8 fix token generation 2023-01-11 13:29:49 +01:00
rootdarkarchon
42b15cb6b7 Add Server-Side Download Queue (#21)
* test add queueing to file service

* further adjustments to download queueing

* add check for whether the request is still in the queue to CheckQueue

* forcefully release slot if download didn't finish in 15s

* actually cancel the delay task

* add metrics and refactor some of the request queue service

* refactor pathing

* reuse httpclient

* add queue request dto to requestfile, enqueue users immediately if a slot is available

* change startup to include all controllers

* update server pathing

* update pathing, again

* several adjustments to auth, banning, jwt server tokens, renaming, authorization

* update api I guess

* adjust automated banning of charaident and reg

* generate jwt on servers for internal authentication

* remove mvcextensions

Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
2023-01-11 12:22:22 +01:00
rootdarkarchon
db2d0451ca adjust grabbing all keys from redis on the shards 2023-01-08 21:04:11 +01:00
rootdarkarchon
f37fee3235 attempt redis connection pooling 2023-01-08 19:27:39 +01:00
rootdarkarchon
8c41f41597 add gauge for authorized connections 2023-01-08 15:04:20 +01:00
rootdarkarchon
a182f36485 attempt to switch ident service to redis 2023-01-08 14:51:56 +01:00
rootdarkarchon
61111d387a get kestrel server options from config 2023-01-07 23:44:35 +01:00
rootdarkarchon
d7eee2af8f remove configurekestrel 2023-01-07 23:37:32 +01:00
rootdarkarchon
dfdc620816 change log level to debug 2023-01-07 17:54:12 +01:00
rootdarkarchon
f760f8ad65 Revert "add FileDbService to handle file requests"
This reverts commit f6af114d44.
2023-01-07 17:53:20 +01:00
rootdarkarchon
f6af114d44 add FileDbService to handle file requests 2023-01-07 11:36:20 +01:00
rootdarkarchon
2943e0964e limit connections to 1000 2023-01-07 02:11:14 +01:00
rootdarkarchon
d328056b9b fix claims and logging in files controller 2023-01-07 01:57:16 +01:00
rootdarkarchon
74b7fcdf89 Refactoring using Claims more, add Server Side Messaging (#20)
* add some refactoring based on claims, handle chara ident inside claim, fix discord userid in log

* improve authentication responses, add server side messaging

* update server to mainline api

Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
2023-01-04 15:49:18 +01:00
rootdarkarchon
5f0c12ecfa Switch to JWT authentication (#19)
* switch to jwt authentication

* fix delete files

* adjust saving of deletion of all files

* update api to main/jwt

Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
2023-01-02 17:07:34 +01:00
rootdarkarchon
bdd8830c8e add healthchecks to docker 2023-01-02 02:50:33 +01:00
rootdarkarchon
7f49ca8627 increase timer again 2023-01-02 01:38:53 +01:00
rootdarkarchon
738c913be9 move some stuff around, pray 2023-01-01 23:36:34 +01:00
rootdarkarchon
8878295f93 adjust random order of files 2023-01-01 20:12:57 +01:00
rootdarkarchon
f8c9d1e64f shuffle cdn shard configs to allow for multiple file shards to handle one file, randomly distributing 2023-01-01 17:32:22 +01:00
rootdarkarchon
9a9beb9a65 fix error message on user push data 2022-12-31 18:15:32 +01:00
rootdarkarchon
b6404a9c1d add horizontal file sharding based on filename matches 2022-12-31 14:28:24 +01:00
rootdarkarchon
2a5e505130 readd auth header 2022-12-31 12:56:18 +01:00
rootdarkarchon
cf082496e9 actually save file with commit 2022-12-30 22:39:36 +01:00
rootdarkarchon
da738bafd9 replace non-digits and letters from string for FilesSend 2022-12-30 22:39:15 +01:00
rootdarkarchon
cbe361208c some changes to auth 2022-12-29 20:14:47 +01:00
rootdarkarchon
3634cccd1e remove check for file existence because of download task might still be around 2022-12-29 14:14:02 +01:00