Size: a a a

JPoint, Java-конференция

2020 February 03

AV

Alexei Vinogradov in JPoint, Java-конференция
if (question.contains("как лучше")) respond.with("it depends!");
источник

AV

Alexei Vinogradov in JPoint, Java-конференция
Ой сорри, палюсь
источник

AG

Asad Ganiev in JPoint, Java-конференция
oxid
Микросервисы можно делать и внутри монолита, если продумать интерфейс, чего обычно ен наблюдается)
Я тоже думал что микросервисы это хайп. Но он и вправду хорош когда можно разделять бизнес логики на независимые части, и каждый микросервис бандить к конкретной ядре процессора. Это даст очень хороший прирост производительности
источник

PD

Phil Delgyado in JPoint, Java-конференция
Ээ, микросервисы - это про решение орг.проблем, а не технологических.
источник

AG

Asad Ganiev in JPoint, Java-конференция
Ну в моем случае это самое эффективное применение микросервисов
источник

PD

Phil Delgyado in JPoint, Java-конференция
А кто мешает это сделать внутри приложения?
источник

AG

Asad Ganiev in JPoint, Java-конференция
всмыле внутри одной jvm?
источник

PD

Phil Delgyado in JPoint, Java-конференция
Например.
источник

AG

Asad Ganiev in JPoint, Java-конференция
тогда как я смогу бандить их в отдельные ядра?
источник

AG

Asad Ganiev in JPoint, Java-конференция
каждый микросервис внутри отдельной JVM запускается
источник

AG

Asad Ganiev in JPoint, Java-конференция
Ну у меня HFT приложение
источник

PD

Phil Delgyado in JPoint, Java-конференция
Вот как-то так? Или оно не работает?

GitHub - OpenHFT/Java-Thread-Affinity: Bind a java thread to a given core
https://github.com/OpenHFT/Java-Thread-Affinity
источник

AG

Asad Ganiev in JPoint, Java-конференция
Оно самое. Работает четко. не надо никаких танцы с бубнами
источник

PD

Phil Delgyado in JPoint, Java-конференция
Я так понял, что оно позволяет отдельные треды мапить, а не всю jvm.
источник

AG

Asad Ganiev in JPoint, Java-конференция
Кстати да. просто я все равно каждый микросервис отдельным процессом запускаю
источник

PD

Phil Delgyado in JPoint, Java-конференция
Ну и зачем тогда отдельным?
источник

AG

Asad Ganiev in JPoint, Java-конференция
Так даже лучше не надо будет перезапустить все приложение
источник

AG

Asad Ganiev in JPoint, Java-конференция
Phil Delgyado
Ну и зачем тогда отдельным?
как я сказал чтобы не перезапустить. Если отдельно то можно несколько консюмеров запустить если надо
источник
2020 February 04

ПП

Павел Прохоров in JPoint, Java-конференция
Alexei Vinogradov
В смысле "изменился формат для сервисов"? А как же потребители - они в курсе перемен?

Нужно добавить для всех - добавляем для всех, что тут сложного.

Вот когда мы хотим поменять инфу для 80%, а у нас всё на одной центральной библиотеке завязано - вот где настоящий головняк. И как потом отличать тех, где общая инфа от остальных.
А что API прибито гвоздями на всю жизнь?

Отлично, какое количество сервисов приемлемо для копипастного подхода?
Два? Ок. Двадцать? А тридцать?

Надо исходить из ситуации, но я не вижу причин менять общие вещи для сервисов для 80%.
По крайней мере, если они делаются для одной компании, по единому стандарту.
Другое дело, когда аутсорс.. Но всегда же можно группировать и делать общие либы.
источник

AV

Alexei Vinogradov in JPoint, Java-конференция
Павел Прохоров
А что API прибито гвоздями на всю жизнь?

Отлично, какое количество сервисов приемлемо для копипастного подхода?
Два? Ок. Двадцать? А тридцать?

Надо исходить из ситуации, но я не вижу причин менять общие вещи для сервисов для 80%.
По крайней мере, если они делаются для одной компании, по единому стандарту.
Другое дело, когда аутсорс.. Но всегда же можно группировать и делать общие либы.
Изменить одинаково 20 сервисов.

Сложно? Нет.
Скучно? Да.

Написать систему абстракций экономящих при случае строчки кода.

Сложно? Да
Скучно? Нет

-----

Какой из вариантов экономичнее? Вопрос риторический, отвечать не надо.

Я сам - адепт скучного кода.
источник