Игорь Васильев, Чтобы правильно задать вопрос нужно знать как минимум половину ответа.
А для того чтобы знать, нужно учиться.
А насчет "нельзя все знать и помнить..."
Как раз с точностью до наоборот.
Ценятся те у кого "ручки помнят".
Чем больше программист умеет, тем меньше нужно искать "как делать", сосредотачиваясь на "что делать" :-)
UNy, Классика не стареет ;-)
А так, это очень хороший букварь по SQL и проектированию БД.
Рекомендую к изучению прежде, чем начнете смотреть особенности реализации СУРБД (MySQL/PostgreSQL).
Terras, Зависит от архитектуры ИС.
Если делают микросервисную архитектуру, то Spring-Boot это само то.
Если же с выделенным application server, то просто spring.
Хотя при определенной сноровке можно и Spring boot использовать с выделенным application server.
grv1, Я про что и говорю.
У вас должен быть stateless бин который обрабатывает сообщения.
Во время обработки сообщения вы можете хранить какое то состояние.
Но желательно не выносить его (состояние) в методы, а передавать через параметры функций. Как вариант.
kulli, Я бы не рекомендовал MySQL, во всех проектах в которых я участвовал и где его использовали, он создавал проблемы.
PostgreSQL больше подходит для "поставил - забыл"
ericcartman, Смотря насколько нагружен.
А так обычно ngnix играет роль балансировщика (не веб сервера) в высоко нагруженных системах.
SpringBoot может выступать как сервером приложений (монолит), так и микросервисом.
Как микросеврис SpringBoot удобнее, чем как монолит.
InoMono, Я со стороны практичности и смотрю.
Зачем заранее закладывать "усложнение", когда можно сразу можно сделать просто?
Если бы дело касалось, что данные нужно хранить надежно, то я с вами согласен.
Но для "чатика", потеря данных думаю не критична, поэтому можно сразу сделать так, чтобы не надо было бы потом усложнять систему.
InoMono, Не усложняет, а накладывает определенные ограничения, в т.ч. и по производительности.
ACID дается не бесплатно.
Поэтому там где потеря данных не критична, можно разменять производительность на надежность/целостность.
Но вам виднее.
Ваша судьба в ваших руках. ;-)