Size: a a a

2021 January 30

ГЕ

Георгий Емельянов... in pro.jvm
Andrey Belyaev
И там целых 10 пользователей? Как упретесь в реальную проблему, которая не решается чтением документов, тогда можно будет задать вопрос типа: "у меня 10 сервисов на одном постгресе, на каждом сервисе по 100500 одновременно работающих пользователей, пул коннектов на каждом настроен на 100 коннектов, а в пике нагрузки какой-то сервис отваливается наглухо вот с такой-то ошибкой." А сейчас вам могут только абстрактных советов насовать типа: "делай хорошо, а плохо - не делай"
Так не у меня, в том то и дело. Я не могу на чужую БД и её настройки повлиять.
источник

D

DOCDOCTOR in pro.jvm
Коллеги всем добрый день, такой вопрос. Задача: нужно сходит на 6 разных апи, с первого апи придет лист сущностей, достать от туда id и с этой id сходить еще на 5, это должна быть джоба, раз в 2 часа, вопрос как это лучше сделать? Мои примерные варианты:
1) просто шедуллер, просто ресттеплейт и все сделать ручками через циклы и/или стримы
2) прочитал про spring batch (не много), вроде есть джобы, вроде что то похожее, но какжется вообще не к месту, ибо вроде как у меня совсем не пакетом обработка
3) ?? спринг интегратион здесь к месту? стоит читать?
Суммарный вопрос, что посоветуете? как схожие задачи вы у себя реализуете? К месту ли здесь батч или интегратион? в какю сторону покапать? или все этто нах и сделать все ручками. Конечно можно все сделать ручками, и это вроде очень простой вариант,но может есть какие то практисы как это делают?
источник

D

Dima in pro.jvm
Георгий Емельянов
Админ базы сделал лимит 20. Потом сделает 10
именно лимит базы?
источник

D

Dima in pro.jvm
постгрес тот же спокойно до тысячи коннектов вытягивает
источник

D

Dima in pro.jvm
по лимитам на сервис хватит и 5 коннектов
источник

D

Dima in pro.jvm
поэтому 20 коннектов на базу это в любом случае мало
источник

D

Dima in pro.jvm
DOCDOCTOR
Коллеги всем добрый день, такой вопрос. Задача: нужно сходит на 6 разных апи, с первого апи придет лист сущностей, достать от туда id и с этой id сходить еще на 5, это должна быть джоба, раз в 2 часа, вопрос как это лучше сделать? Мои примерные варианты:
1) просто шедуллер, просто ресттеплейт и все сделать ручками через циклы и/или стримы
2) прочитал про spring batch (не много), вроде есть джобы, вроде что то похожее, но какжется вообще не к месту, ибо вроде как у меня совсем не пакетом обработка
3) ?? спринг интегратион здесь к месту? стоит читать?
Суммарный вопрос, что посоветуете? как схожие задачи вы у себя реализуете? К месту ли здесь батч или интегратион? в какю сторону покапать? или все этто нах и сделать все ручками. Конечно можно все сделать ручками, и это вроде очень простой вариант,но может есть какие то практисы как это делают?
1. Как ты сказал решение в лоб
2. Sheduled + @Async, в твоем случае запросы легко параллелятся
3. Sheduled + Reactive feign client, упрощает 2 вариант, чтобы обвязки руками не писать
4. Sheduled + Реактивные стримы, reactor, spring web client, результат как во втором, но меньше ресурсов будет потребляться, проще обработка такого сценария
5. Spring Integration может и к месту, но если уж браться за интеграции стоит сразу в сторону Camel смотреть, у него много опций для такого

в целом думаю, как единичное решение тебе подойдет что-то из 2-4 вариантов, в зависимости от стиля проекта

если же нужен полноценный интеграционный ландшафт, то стоит сразу в сторону Camel смотреть
источник

D

DOCDOCTOR in pro.jvm
Dima
1. Как ты сказал решение в лоб
2. Sheduled + @Async, в твоем случае запросы легко параллелятся
3. Sheduled + Reactive feign client, упрощает 2 вариант, чтобы обвязки руками не писать
4. Sheduled + Реактивные стримы, reactor, spring web client, результат как во втором, но меньше ресурсов будет потребляться, проще обработка такого сценария
5. Spring Integration может и к месту, но если уж браться за интеграции стоит сразу в сторону Camel смотреть, у него много опций для такого

в целом думаю, как единичное решение тебе подойдет что-то из 2-4 вариантов, в зависимости от стиля проекта

если же нужен полноценный интеграционный ландшафт, то стоит сразу в сторону Camel смотреть
Хм, ну решение разовое, поэтому наверное возьму 4 вариант, а можешь посоветовать по кэмел что то? Кроме доков)))
источник

D

Dima in pro.jvm
DOCDOCTOR
Хм, ну решение разовое, поэтому наверное возьму 4 вариант, а можешь посоветовать по кэмел что то? Кроме доков)))
они переделали доки
источник

D

Dima in pro.jvm
но если что - книжка от автора Camel In Action
источник

D

Dima in pro.jvm
2 издание
источник

D

Dima in pro.jvm
однако напомню, кэмел брать, только если будут еще какие-то потом интеграции
источник

D

Dima in pro.jvm
тогда инвестиции окупятся
источник

D

DOCDOCTOR in pro.jvm
Dima
однако напомню, кэмел брать, только если будут еще какие-то потом интеграции
Да я понял, а вот если про интегратион vs кэмел читать, то типо они -+ одинаковые, и если экосистема спринга, то не лучше ли спринг?
источник

D

Dima in pro.jvm
DOCDOCTOR
Да я понял, а вот если про интегратион vs кэмел читать, то типо они -+ одинаковые, и если экосистема спринга, то не лучше ли спринг?
camel - это EIP
источник

D

Dima in pro.jvm
в spring integration лишь небольшой срез EIP
источник

D

Dima in pro.jvm
плюс у Camel появились опции для облаков и апи удобней и больше возможностей имеет
источник

D

Dima in pro.jvm
источник

D

DOCDOCTOR in pro.jvm
окей, спасибо за ответы)
источник

ГЕ

Георгий Емельянов... in pro.jvm
Dima
1. Как ты сказал решение в лоб
2. Sheduled + @Async, в твоем случае запросы легко параллелятся
3. Sheduled + Reactive feign client, упрощает 2 вариант, чтобы обвязки руками не писать
4. Sheduled + Реактивные стримы, reactor, spring web client, результат как во втором, но меньше ресурсов будет потребляться, проще обработка такого сценария
5. Spring Integration может и к месту, но если уж браться за интеграции стоит сразу в сторону Camel смотреть, у него много опций для такого

в целом думаю, как единичное решение тебе подойдет что-то из 2-4 вариантов, в зависимости от стиля проекта

если же нужен полноценный интеграционный ландшафт, то стоит сразу в сторону Camel смотреть
3 пункт про Feign интересно. Он уже научился возвращать Future?
источник