Size: a a a

Spring Framework and more

2019 March 25

L

Loljeene in Spring Framework and more
но все зависит конечно от объемов базы. Когда видишь двузначные цифры в Buffers get (в гигах) а сверху еще и хеш джоин...
источник

Ar

Arseny -> r2d2 in Spring Framework and more
Привет всем, возник небольшой вопрос
Есть монолит, пытаюсь из него выделить все @Scheduled методы(в основном в них либо изменение данных в БД, либо выгрузка данных по уже готовым SQL в csv файл и отправка его на почту), возник вопрос - нужно ли делать отдельный сервис для всех задач(или может каждую задачу делать как отдельное маленькое приложение), нужен ли SpringBatch, нужно ли тянуть все entity или же можно обойтись JDBC(SQL для нужных данных уже готовы, мапперы написать не проблема).

Есть вариант что я делаю велосипед, и есть уже готовое решение для такого рода задач, а я о нем не в курсе :(
источник
2019 March 26

А

А in Spring Framework and more
Это желтуха
источник

AK

Aliaksandr Kokhna in Spring Framework and more
добрый день, ищу человека для совмесного изучения spring
источник

G

Grigori in Spring Framework and more
Arseny -> r2d2
Привет всем, возник небольшой вопрос
Есть монолит, пытаюсь из него выделить все @Scheduled методы(в основном в них либо изменение данных в БД, либо выгрузка данных по уже готовым SQL в csv файл и отправка его на почту), возник вопрос - нужно ли делать отдельный сервис для всех задач(или может каждую задачу делать как отдельное маленькое приложение), нужен ли SpringBatch, нужно ли тянуть все entity или же можно обойтись JDBC(SQL для нужных данных уже готовы, мапперы написать не проблема).

Есть вариант что я делаю велосипед, и есть уже готовое решение для такого рода задач, а я о нем не в курсе :(
А если в монолите захотите внести изменения в Ентити -> структуру БД, вам придется все ваши микросервисы переделывать.
источник

AK

Aliaksandr Kokhna in Spring Framework and more
обо мне - в IT уже долгое время основной скил SQL oracle, Big data стек,  DevOps - знаю Java core, сейчас хотел бы выучить Spring - ищу напарника(с не 0 опытом в IT и который хочет поднять spring)
источник

G

Grigori in Spring Framework and more
Aliaksandr Kokhna
обо мне - в IT уже долгое время основной скил SQL oracle, Big data стек,  DevOps - знаю Java core, сейчас хотел бы выучить Spring - ищу напарника(с не 0 опытом в IT и который хочет поднять spring)
так полно пошаговых туториалов, даже на русском.
источник

Д

Дмитрий in Spring Framework and more
никто не сталкивался с тем что в тестах ControllerAdvice который прилетает из депенденсей не хэндлит эксепшны? Притом что в контекте сам бин есть, и из сорцов другой такой же хэндлер всё нормально обрабатывает. Это какие-то особенности загрузки в SpringBootTestContextBootstrapper?
источник

AK

Aliaksandr Kokhna in Spring Framework and more
я читаю книги и пробую что-то делать. но хочется попробовать совмесно
источник

G

Grigori in Spring Framework and more
Aliaksandr Kokhna
я читаю книги и пробую что-то делать. но хочется попробовать совмесно
было бы понятно совместно изучать какойнить тулз для командной разработки типа Гит, джира и тд, а как Спринг совместно изучать и зачем между вами и спрингом кто-то третйтий? Дело ваше конечно )
источник

D

Dima 🥶 in Spring Framework and more
Grigori
было бы понятно совместно изучать какойнить тулз для командной разработки типа Гит, джира и тд, а как Спринг совместно изучать и зачем между вами и спрингом кто-то третйтий? Дело ваше конечно )
ну можно через эти тулзы попробовать проект совместный мутить, вполне интересный опыт, мне кажется
источник

G

Grigori in Spring Framework and more
Dima 🥶
ну можно через эти тулзы попробовать проект совместный мутить, вполне интересный опыт, мне кажется
да, наверно я посыл не понял )
источник

PB

Pavel Bukhmatov in Spring Framework and more
Arseny -> r2d2
Привет всем, возник небольшой вопрос
Есть монолит, пытаюсь из него выделить все @Scheduled методы(в основном в них либо изменение данных в БД, либо выгрузка данных по уже готовым SQL в csv файл и отправка его на почту), возник вопрос - нужно ли делать отдельный сервис для всех задач(или может каждую задачу делать как отдельное маленькое приложение), нужен ли SpringBatch, нужно ли тянуть все entity или же можно обойтись JDBC(SQL для нужных данных уже готовы, мапперы написать не проблема).

Есть вариант что я делаю велосипед, и есть уже готовое решение для такого рода задач, а я о нем не в курсе :(
1. Batch или не Batch зависит от того, устраивает ли тебя модель Spring Batch. Руками batch обработку никто делать не запрещает.
2. JPA или JDBC - это тоже  сложный вопрос. Голый SQL на JDBC Template (например), дольше писать, но ты точно знаешь, где и сколько запросов у тебя выполнится. на JPA ты вроде как знаешь, будет ли у тебя 1 запрос или n+1, но часто получается, что знаешь не всегда и надо каждый раз проверять)
3. JPA 2.1 кажется до сих пор не поддерживает операцию merge, т.е. вы вызове save у тебя идет сначала select, а потом либо update, либо insert. Но тут могу ошибаться. Поправьте, если кто знает. (Это конечно исправляется написанием своего query. Но если всегда писать свои query, почему бы просто сразу не взть JDBC Template?)
4. И у монолита, и у отдельного приложения есть плюсы и минусы. Минусы отдельных приложений - это еще по 1 точке отказа, на которую нужен отдельный мониторинг, которую надо также деплоить, обновлять и все такое. Минус монолита - можно распластать логику по всему приложению и концы с концами не сыщешь потом. Вообще CRON задачи, если их много, вполне себе можно вынести в отдельное приложение, создать там какую-нибудь мини-модель данных, аля задача с id, именем, временем запуска и статусом задачи и получить хороший более-менее контроль над CRON задачами, которые запускались, их статусами, если она отработали или не отработали
источник

NK

ID:772166131 in Spring Framework and more
Приветствую в нашей группе. Мы помогаем разработчикам, которые хотят заниматься фрилансом начать заниматься фрилансом. Наша задача - сделать вам хорошие отзывы и рейтинги, помочь наработать первые часы. Все это потребуется, когда вы пойдете за своим первым заказом со ставкой в $25/час.
Вступайте: https://t.me/upwork_quick
источник

Ar

Arseny -> r2d2 in Spring Framework and more
Pavel Bukhmatov
1. Batch или не Batch зависит от того, устраивает ли тебя модель Spring Batch. Руками batch обработку никто делать не запрещает.
2. JPA или JDBC - это тоже  сложный вопрос. Голый SQL на JDBC Template (например), дольше писать, но ты точно знаешь, где и сколько запросов у тебя выполнится. на JPA ты вроде как знаешь, будет ли у тебя 1 запрос или n+1, но часто получается, что знаешь не всегда и надо каждый раз проверять)
3. JPA 2.1 кажется до сих пор не поддерживает операцию merge, т.е. вы вызове save у тебя идет сначала select, а потом либо update, либо insert. Но тут могу ошибаться. Поправьте, если кто знает. (Это конечно исправляется написанием своего query. Но если всегда писать свои query, почему бы просто сразу не взть JDBC Template?)
4. И у монолита, и у отдельного приложения есть плюсы и минусы. Минусы отдельных приложений - это еще по 1 точке отказа, на которую нужен отдельный мониторинг, которую надо также деплоить, обновлять и все такое. Минус монолита - можно распластать логику по всему приложению и концы с концами не сыщешь потом. Вообще CRON задачи, если их много, вполне себе можно вынести в отдельное приложение, создать там какую-нибудь мини-модель данных, аля задача с id, именем, временем запуска и статусом задачи и получить хороший более-менее контроль над CRON задачами, которые запускались, их статусами, если она отработали или не отработали
Основной минус моего монолита в том что по архитектурной задумке это и црм(админка) и средство для отчетов, и кронтаски, один из которых меняет данные раз в 5 минут, и слушатель колбэков от стороннего сервиса.. в общем все сразу и в одном флаконе.
Проблема в том что зачастую заложенных функций не хватает(или же сторонний сервис вдруг поменял апи и все сломалось), а в рантайме изменить можно немногое.
Плюс хардкод многих параметров во внутренних пропертях.
Насколько я смог понять из кода(документация только в виде UML в ворде(: ) критичными являются только ожидания колбэков, все методы по кронам и взаимодействие с фронтом.
источник

Ar

Arseny -> r2d2 in Spring Framework and more
Я думаю, что хотя бы убрав кроны и организовав очередь с помощью RabitMQ я смогу добиться большей устойчивости и изменяемости
источник

S

Sergey in Spring Framework and more
работаю в энтерпрайз монолите. жопа
источник

L

Loljeene in Spring Framework and more
У меня была подобная ситуация, только вместо кронов был JMS и микросервисность, а слои логики web и api были вынесены отдельно
источник

L

Loljeene in Spring Framework and more
В итоге крон задлачи я слил в монолит
источник

L

Loljeene in Spring Framework and more
и отказался от jms
источник