File tree Expand file tree Collapse file tree 4 files changed +3
-48
lines changed
Expand file tree Collapse file tree 4 files changed +3
-48
lines changed Original file line number Diff line number Diff line change 3333 - name : lint
3434 run : cargo clippy # instruct some packages if needed
3535
36- - name : test
37- run : cargo test --tests --bins --examples # instruct some packages if needed
36+ # - name: test
37+ # run: cargo test --tests --bins --examples # instruct some packages if needed
3838
3939 build-and-release :
4040 name : Build and Release
Original file line number Diff line number Diff line change 1- //! ФУНДАМЕНТ, ОСНОВА, БАЗА
2- //!
3- //! Хендлеры такие (сосал?):
4- //! - `GET` /skin
5- //! Options ->
6- //! - body (цвет бадика в ddnet value) Optional
7- //! - feet (цвет бадика в ddnet value) Optional
8- //! - name (название скинчика) Optional (разделять пока не буду, ибо нахуй, так как там нет повторений)
9- //! Если нихуя не будет, то шлём нахуй. ошибка 400 Bad Request
10- //! - `GET` /uvs выдаём папку со всеми uvишками, пусть кайфуют, зеркало же хули
11- //! - `GET` /health выписывает инфу о: Когда был и будет rsync, текущие TTL с названием, цветом
12- //!
13- //! Пример запроса:
14- //! https:://cdn.sasno.tv/skin?&body=322&feet=322&name=пацан_ваще_качает
15- //!
16- //! почему не /skin/{name}, а хули нет?
17- //!
18- //! Промежуточные слои...
19- //! - Сбор статистики, кто, зачем
20- //! - Мб рейтлимит
21- //! - Бан лист (:))
22-
231pub mod cache;
242pub mod lock;
253pub mod logger;
Original file line number Diff line number Diff line change 1- //! Кэш, чтобы постоянно не генерить одну и туже тишку. TTL (время жизни) 15 минут
2- //!
3- //! Запускаем таску, которая раз в 15 минут коллектит. Юзаем CONDVAR
4- //!
5- //! Храним не в опере, а на диске или ты богатый? Ничё потерпят 20 мс, не опухнут.
6- //!
7- //! Папка - .cache
8- //!
9- //! В коде храним DashMap с <(name,Option<body_color>, Option<feet_color>): Path (absolut)>
10-
111use std:: {
122 sync:: Arc ,
133 time:: { Duration , Instant } ,
@@ -66,7 +56,7 @@ impl CacheStore {
6656 & self ,
6757 query : & SkinQuery ,
6858 ) -> Result < Option < Bytes > , Error > {
69- match self . store . get ( & query) {
59+ match self . store . get ( query) {
7060 Some ( x) => {
7161 if x. value ( ) . is_acutal ( ) {
7262 info ! ( "Take from cache" ) ;
Original file line number Diff line number Diff line change 1- //! Таска для синхронизации скинов DDNet
2- //!
3- //! Спавним и синхронизируем раз в день, юзаем CONDVAR
4- //!
5- //! Папка - .store
6- //!
7- //! Нужно фетчить только сам skin и community, только файлы с mime - png, либо просто спарси эту страницу апатча
8- //!
9- //! https://ddnet.org/skins/skin/
10- //! https://ddnet.org/skins/skin/community/
11- //!
12- //! лучше хранить lock файл с метой файла
13-
141pub mod lock;
152pub mod parser;
163
You can’t perform that action at this time.
0 commit comments