Mirror issueshttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues2024-03-21T10:56:21+02:00https://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/66Переробити міррор на PUB/SUB концепцію2024-03-21T10:56:21+02:00Pavel KuzmenkoПереробити міррор на PUB/SUB концепціюИз-за того что WebSoket плохо маштабируеться в горизонт, персистентное соеденение. На данный момент нет возможности динамически размазывать нагрузку.
Необходимо переделать мирор на PUB/SUB концепцию с использованием Redis
![image](/upl...Из-за того что WebSoket плохо маштабируеться в горизонт, персистентное соеденение. На данный момент нет возможности динамически размазывать нагрузку.
Необходимо переделать мирор на PUB/SUB концепцию с использованием Redis
![image](/uploads/41adfaa1c80b4a3efdd4c871c45f772b/image.png)
Мирор будет разделен на:
- лехковесные поды которые терменируют веб сокет и взаимодействуют с Redis по принципу PUB/SUB
- поды которые читают Mongodb OptLog и сериализуют документы, взаимодействуя с Redis по принципу PUB/SUB
![image](/uploads/c70eb3b9025716dbb45192e0859cf3c0/image.png)v3.97.0Pavel KuzmenkoPavel Kuzmenkohttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/62Розробити систему штрафів по авторизованому ключу2023-10-25T17:09:13+03:00dmitry.mashoshinРозробити систему штрафів по авторизованому ключуМи повинні розробити систему штрафів для майданчиків для зменьшення нагрузки на субд. Система повинна враховувати:
- кількість оброблених документів для клієнту за проміжок часу
- кількість переподключень клієнтом
- дата модифікації, я...Ми повинні розробити систему штрафів для майданчиків для зменьшення нагрузки на субд. Система повинна враховувати:
- кількість оброблених документів для клієнту за проміжок часу
- кількість переподключень клієнтом
- дата модифікації, яку передає клієнт
на основі цього повинна визначатись затримка для цього клієнту:
- при підключенні (якщо клієнт часто переподключається, то виставляємо для нього затримку підключення)
- при обробці док-ту (якщо клієнт обробляє забагато документів за проміжок часу, або його дата модифікації застара, то робимо йому затримку в отриманні документу)
також необхідно врахувати спец дозволи для внутрішніх клієнтів працювати без затримки
можливо має сенс зробити наступне:
кожна пода має враховувати кількість підлючень до себе за одиницю часу від одного клієнту по авторизованому ключу й виводити помилку про велику кількість підключень
при перезавантаженні поди цей параметр має сбрасуватисьv3.x.xhttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/58refactor mirror tests2023-03-09T15:56:52+02:00dmitry.mashoshinrefactor mirror tests### Proposal
<!---
Provide a description of the change or addition you are proposing /
Дайте описание изменения или дополнения, которое вы предлагаете
--->
Тесты у всех зеркал некорректные, их надо поменять.
Необходимо проверять под...### Proposal
<!---
Provide a description of the change or addition you are proposing /
Дайте описание изменения или дополнения, которое вы предлагаете
--->
Тесты у всех зеркал некорректные, их надо поменять.
Необходимо проверять подключение по веб сокету, проверять различные способы синхронизации, а не связку миррора+клиента. Возможно есть смысл сделать кор либу для всех тестов.
Изменения затронут:
- procedure-mirror
- registry-mirror
- marketplace-mirror
- jobber-mirrorv3.x.xVitalii CherednichenkoVitalii Cherednichenkohttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/57Refactor mirror client connection logic2023-03-09T15:56:17+02:00dmitry.mashoshinRefactor mirror client connection logicChange mirror so user could connect with any data, then sync and subscribe to updatesChange mirror so user could connect with any data, then sync and subscribe to updatesv3.x.xdmitry.mashoshindmitry.mashoshinhttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/24Refactor client to provide predicate to mirror cursor2020-01-30T15:52:13+02:00Andrey VeltischevRefactor client to provide predicate to mirror cursorv3.x.xhttps://gitlab.prozorro.sale/prozorro-sale/mirror/-/issues/25Implement endpoint to receive updates for a provided list of procedure ids2020-09-21T12:26:07+03:00Andrey VeltischevImplement endpoint to receive updates for a provided list of procedure idsv3.x.x