В связи с этим у меня вопрос, чем же обоснована такая популярность этой библиотеки у работодателей?Если вы программируете 3 месяца то скорее всего не поймете. React или другой фреймворк изначально подразуевает то, что код хорошо делится по модулям и компонентам, что очень удобно, в обычном js нужно принимать больше усилий чтобы добиться этого. Также есть много готовых решений из коробки, которые уже были отлажены другими более опытными людьми.
а модульность со мной сыграла злую шутку (прочитал, что хорошим тоном считается разбивать проект на мельчайшие модули, разбил свой, через пару недель я просто почти забыл, что от чего у меня зависит и какой модуль у меня что тянет за собой и главное куда тянет!Видимо вы попробовали выучить реакт за неделю, потом потом на 2-3 недели ушли заниматься своими делами и не трогали его и "внезапно" всё забыли. В целом можно писать комментарии для пояснения. Модульность как раз наоборот упрощает чтение кода и если правильно всё называть и прописывать, то в небольших проектах до 5-10к строк можно будет без проблем разобраться за пару дней тому кто не писал это код.
Пока не вижу кейсов, при которых не хватало SpringBoot, либо MicroProfile-фреймворков.
Приложение будет предоставлять несколько WEB-сервисов, за каждый будет отвечать отдельный микросервис :) Но все они будут обращаться к одной базе данных.
Я хочу сделать микросервис (или модуль?), который абстрагирует БД. Т.е. он умеет читать (пока только читать, а в перспективе и писать, и кэшировать запросы) записи из БД и раздавать их другим частям приложения. Все остальные части ничего не знают про БД, а пользуются готовыми объектами.
Но допустим, у меня БД на 1000 таблиц (плюс ещё таблицы взаимосвязаны что порождает вложенные Java-объекты). Это значит, мне надо сделать 1000 репозиториев, в каждом Х методов (получение по ID, получение по значению поля, одного объекта, коллекции...). И ещё 1000*Х методов в контроллерах....
НО! Они все пользуются одной и той же БД, из которой "черпают" данные "общего назначения": юзеры, ассеты, события и пр.
Вот я и хочу "общую часть" вынести куда-то отдельно. И спрашиваю как это принято делать: библиотека? модуль? сервис?Можно сделать как подключаемую библиотеку (пакет Java), вынеся всё в ядро самое необходимое. Вокруг библиотеки ядра могут быть созданы какие-то библиотеки-обвески. Репозиториев библиотек может быть несколько, для простоты. Каждая библиотека может иметь свою версию и использоваться монолитом при сборке.
Это значит, мне надо сделать 1000 репозиториев, в каждом Х методов (получение по ID, получение по значению поля, одного объекта, коллекции...). И ещё 1000*Х методов в контроллерах....Ну зачем так? Нет смысла дробить даже на десятки, не говоря уже о тысячах.
Или для чистого API есть более подходящие архитектуры?
Как я могу узнать откуда и куда идут атаки? И могу ли я как - то это предотвратить, путем блокировки исходящего трафика