Отличное информативное видео, как всегда) Спасибо за труд, особенно радует использование WebFlux и прочей асинхронщины, с нетерпением жду новых видосов! :)
Спасибо большое за четко структурированную информацию. Продолжайте снимать подобные видео, ваш опыт вместе с умением грамотно выражать свои мысли очень полезны) Было интересно ещё посмотреть процесс отправки сообщения в очередь
@@EugeneSuleimanov Информация подана максимально структурировано и качественно, по окончании просмотра не возникло никаких дополнительных вопросов. Буду признателен, если будут еще видео посвященные интеграции aws и spring boot. С учетом роста популярности авс это, на мой взглад, будет очень кстати :)
Спасибо за комментарий! По поводу Kafka, не совсем: - иная конфигурация - другие библиотеки - количество сервисов должно быть меньше или равно количеству партиций для (если мы говорим про одну consumer group для одного топика).
Евгений, для начала огромное спасибо за ваш труд, я сейчас заново начинаю все изучать, и решил начать с алгоритмов(поэтому в одном из комментариев просил делать видео на эту тему), я учу их и нахожусь в замешательстве на счет дальнейшего обучения, что учить дальше и так далее, можно было бы как то с вами связаться, или поговорить недолго, что бы структурировано записать себе план обучения(какие конкретно технологии я должен добавить в свои знания), очень прошу :(
Спасибо за отзыв! Есть несколько статей: proselyte.net/how-to-learn-java-seriously/ proselyte.net/java-developer-road-map/ И цикл статей: proselyte.net/how-not-to-be-expelled-from-it-in-five-years/ Который, кстати, очень оправдался.
Евгений, спасибо за отличный контент! У меня 2 вопроса: 1. зачем в данном случае применяем реактивщину? 2. SQS работает только с асинхронным провайдером?
Добрый день! Спасибо за отзыв. 1. По моему опыту - реактивщина на данный момент очень активно используется и новые проекты редко пишут на старых технологиях. 2. Не закончен вопрос.
Добрый день, Евгений. Спасибо за Ваш полезный труд! Повторял код за Вами и уперся в докеризацию. Контейнер создал, но при его подъеме ловлю исключение - SQL State : 08001 2024-08-20T10:13:02.695640490Z Error Code : 0 2024-08-20T10:13:02.695641735Z Message : Connection to localhost:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections. При этом локально БД работает. гугл и chat Gpt пока не дали ответ( Может, есть альтернатива - extra_hosts: - "host.docker.internal:host-gateway"? Спасибо за помощь!
1 Не совсем я понял зачем подключать aws-sdk и создавать бин с кредами1, где это юзается? 2 Зачем создавать креды2 из aws-spring-стартера, если проперти все прописаны (IDE сама подсказала), и этот бин должен создатся автоконфигурацией стартера? Судя по докам, хватило бы листенера с @SqsListener и yaml-файла, но может я и не прав) В докерфайле лично я втупую пишу cmd java - jar... без лишних доп файлов, не знаю зачем это... Ну конечно же спасибо, и ждем flyway с поддержккой реактивщины. liquibase тоже не спешит =)
Спасибо за комментарий! Изначально планировал еще добавить логику отправки сообщений в очередь, но видео вышло крайне загруженным и без этого. Да, вы правы - @Sqslistener хватило бы :)
Евгений, Спасибо, очень здорово. Могли бы вы пояснить, как так лихо развернулись 3 контейнера, у меня не работает, в документации написано, что такое поддерживается, только если деплоить в docker swarm.
@@EugeneSuleimanov Приношу извинения. Толи версия докера была старая, толи еще что-то, но на другом Линуксе сработало. Единственное, надо было добавить port range: - "8990-8999:80".
С уважением отношусь к данному каналу, но конкретно данное видео меня не убедило. Я понимаю, что автор хотел этим видео убить двух зайцев(трех, четырех???), показав как в связке со спрингом использовать облачные сервисы Aws, да еще и в реактивщину. Но сдается мне, не такого ответа ожидали от человека на собесе. Использовать механизм дедупликации сообщений, заложенный в Sqs, конечно, удобно. Но тут же возникают вопросы: а почему Sqs, а есть иные способы кроме, как юзать платный сервис, а какие есть аналоги у других облачных провайдеров, а если все-таки Sqs, то есть ли ограничения (спойлер: есть и довольно серьезные, см. здесь -> docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html#API_SendMessage_RequestSyntax)? Ну предположим, что компания, куда собеседовался человек, свои сервисы действительно размещает на aws. А если нет? Изначально вопрос звучал так: как обеспечить доставку сообщений по принципу exactly once в условиях конкурентного доступа к данным? И вот конкретно на этот вопрос, я что-то не увидел разъяснения. ПыСы: по коду вопросов нет, тут все как раз четко и понятно. Но это уже конкретная реализация. Как автор к ней пришел, осталось за кадром...
1. По связке спринг + реактивщина + aws - относительно, стандарт на данный момент. Блокировка - устаревший подход. 2. Не совсем понял по поводу ограничений, какое именно из ограничений здесь может помешать. 3. Использование облачных сервисов (SQS), вместо собственных (rabbit mq и т.д.) - это стандарт. Только в исключительных ситуациях поступают наоборот, по моему опыту. Например, если деплой будет в закрытый контур. 4. А сама дедупликация - крайне тривиальна, останавливаться на простом кеше не особо хотелось. P.S.: в начале видео сказано, почему был выбран такой подход. Ещё раз спасибо!
Отличное информативное видео, как всегда)
Спасибо за труд, особенно радует использование WebFlux и прочей асинхронщины, с нетерпением жду новых видосов! :)
Спасибо за отзыв :)
Что то я столько пропустил.......
Евгений, спасибо за Вашу работу!!!!
Успехов, развития Вам и всем тем, кому Вы помогаете👍👍👍
Спасибо за комментарий :)
Спасибо большое за четко структурированную информацию. Продолжайте снимать подобные видео, ваш опыт вместе с умением грамотно выражать свои мысли очень полезны) Было интересно ещё посмотреть процесс отправки сообщения в очередь
Большое спасибо за отзыв!
Спасибо большое. Было очень полезно.
Спасибо за отзыв!
Отличное, насыщенное видео!
Спасибо огромное!
Спасибо за отзыв!
TOP - как всегда!
Спасибо за отзыв!
Очень благодарен за такой информативный урок! Такие практические видео очень интересные
Большое спасибо за отзыв!
Учусь в иннополисе, параллельно стремлюсь к знаниям, смотря ваши видео! Спасибо большое
Спасибо за отзыв и успехов в обучении!
Отличное видео Евгений! Большое спасибо, что делитесь своим опытом и знаниями!
Спасибо за комментарий!
Женя, большое спасибо за информативные видео!
Спасибо за поддержку!
Евгений, огромная благодарность Вам за такие видео!
Если будет время и возможность, хотелось бы увидеть тесты для такого кода. Спасибо.
Большое спасибо за отзыв!
По тестам есть видео в планах, но срокам публикацию не смогу сказать точно.
Спасибо, Жень! Очень крутое видео. Медленно и вдумчиво смотрел. Оч качественный контент!
Большое спасибо за отзыв!
Хорошое наконец-то вышло! Лайк без вопросов=)
Спасибо за отзыв :)
Большое спасибо за труды!
Спасибо вам за отзыв!
Спасибо тебе большое!
Спасибо за отзыв!
@@EugeneSuleimanov Информация подана максимально структурировано и качественно, по окончании просмотра не возникло никаких дополнительных вопросов. Буду признателен, если будут еще видео посвященные интеграции aws и spring boot. С учетом роста популярности авс это, на мой взглад, будет очень кстати :)
Спасибо) Ждем новые видео!)
Спасибо за отзыв :)
Спасибо, отличный ролик! (Удалить лишние импорты в IDEA ) 😀
Большое спасибо за отзыв и за напоминание :)
Супер, спасибо за знания!
Спасибо за отзыв!
Огромное спасибо! Респект
Большое спасибо за отзыв!
Лучший)
Спасибо за отзыв :)
Спасибо за видео 👍
Спасибо за отзыв!
Коментар!)
Дякую :)
Великолепно! Если я правильно понял, то можно заменить авс на кафку, все остальное останется одинаково
Спасибо за комментарий!
По поводу Kafka, не совсем:
- иная конфигурация
- другие библиотеки
- количество сервисов должно быть меньше или равно количеству партиций для (если мы говорим про одну consumer group для одного топика).
спасибо!
Спасибо за комментарий!
Thank you for video.
Could I ask one question?
What OS do you use?
Thank you for review. Mac OS.
Спасибо!
Спасибо за комментарий!
🔥🔥🔥
Евгений, для начала огромное спасибо за ваш труд, я сейчас заново начинаю все изучать, и решил начать с алгоритмов(поэтому в одном из комментариев просил делать видео на эту тему), я учу их и нахожусь в замешательстве на счет дальнейшего обучения, что учить дальше и так далее, можно было бы как то с вами связаться, или поговорить недолго, что бы структурировано записать себе план обучения(какие конкретно технологии я должен добавить в свои знания), очень прошу :(
Спасибо за отзыв!
Есть несколько статей:
proselyte.net/how-to-learn-java-seriously/
proselyte.net/java-developer-road-map/
И цикл статей:
proselyte.net/how-not-to-be-expelled-from-it-in-five-years/
Который, кстати, очень оправдался.
Моя почта:
proselytear@yahoo.com
+
Супер, спасибо что делитесь знаниями) Не подскажите хорошие материлаы по реактиву? Как его начинать изучать?)
Спасибо за отзыв!
По материалам - официальная документация и практика :)
Отличное видео! Подскажите, пожалуйста, что у Вас за тема для IDE?
Спасибо за отзыв!
Это New UI от IntelliJ Idea:
www.jetbrains.com/help/idea/new-ui.html
А что такое host.docker.internal? Это аналог localhost, но в пределах сети докера, т.е. за кадром остался отдельный контейнер с postgres?
Верно, обычный localhost не отработает для докера. Отдельного докера до постгреоса нет.
Евгений, спасибо за отличный контент! У меня 2 вопроса:
1. зачем в данном случае применяем реактивщину?
2. SQS работает только с асинхронным провайдером?
Добрый день!
Спасибо за отзыв.
1. По моему опыту - реактивщина на данный момент очень активно используется и новые проекты редко пишут на старых технологиях.
2. Не закончен вопрос.
@@EugeneSuleimanov спрошу по другому, можно ли передать в конфиг классе в queueMessagingTemplate блокирующий креденшал провайдер?
@@user-eb4hr6gn8x в сам темплейт - да, насколько я помню.
@@user-eb4hr6gn8x в сам темплейт - да, насколько я помню.
@@EugeneSuleimanov Спасибо)
Добрый день, Евгений. Спасибо за Ваш полезный труд! Повторял код за Вами и уперся в докеризацию. Контейнер создал, но при его подъеме ловлю исключение - SQL State : 08001
2024-08-20T10:13:02.695640490Z Error Code : 0
2024-08-20T10:13:02.695641735Z Message : Connection to localhost:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.
При этом локально БД работает. гугл и chat Gpt пока не дали ответ( Может, есть альтернатива - extra_hosts:
- "host.docker.internal:host-gateway"?
Спасибо за помощь!
1 Не совсем я понял зачем подключать aws-sdk и создавать бин с кредами1, где это юзается? 2 Зачем создавать креды2 из aws-spring-стартера, если проперти все прописаны (IDE сама подсказала), и этот бин должен создатся автоконфигурацией стартера? Судя по докам, хватило бы листенера с @SqsListener и yaml-файла, но может я и не прав)
В докерфайле лично я втупую пишу cmd java - jar... без лишних доп файлов, не знаю зачем это... Ну конечно же спасибо, и ждем flyway с поддержккой реактивщины. liquibase тоже не спешит =)
Спасибо за комментарий!
Изначально планировал еще добавить логику отправки сообщений в очередь, но видео вышло крайне загруженным и без этого.
Да, вы правы - @Sqslistener хватило бы :)
Евгений, Спасибо, очень здорово. Могли бы вы пояснить, как так лихо развернулись 3 контейнера, у меня не работает, в документации написано, что такое поддерживается, только если деплоить в docker swarm.
Спасибо за отзыв!
Это решение из контейнера. Не должно быть проблем. Вы в точности повторили все действия в видео?
@@EugeneSuleimanov Приношу извинения. Толи версия докера была старая, толи еще что-то, но на другом Линуксе сработало. Единственное, надо было добавить port range: - "8990-8999:80".
@@sk-xdv-fre отлично, рад, что все отработало корректно.
а есть механизм уникальных сообщений в Кафке ?
Через cleanup policy и retention.
А разве маркировать один класс аннотацией Билдер и Дата это не антипаттерн?
Там есть ряд аспектов, но в общем и целом, если есть конструкторы, то нет.
@@EugeneSuleimanov Благодарю за ответ
🦾
С уважением отношусь к данному каналу, но конкретно данное видео меня не убедило. Я понимаю, что автор хотел этим видео убить двух зайцев(трех, четырех???), показав как в связке со спрингом использовать облачные сервисы Aws, да еще и в реактивщину. Но сдается мне, не такого ответа ожидали от человека на собесе. Использовать механизм дедупликации сообщений, заложенный в Sqs, конечно, удобно. Но тут же возникают вопросы: а почему Sqs, а есть иные способы кроме, как юзать платный сервис, а какие есть аналоги у других облачных провайдеров, а если все-таки Sqs, то есть ли ограничения (спойлер: есть и довольно серьезные, см. здесь -> docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_SendMessage.html#API_SendMessage_RequestSyntax)?
Ну предположим, что компания, куда собеседовался человек, свои сервисы действительно размещает на aws. А если нет? Изначально вопрос звучал так: как обеспечить доставку сообщений по принципу exactly once в условиях конкурентного доступа к данным? И вот конкретно на этот вопрос, я что-то не увидел разъяснения. ПыСы: по коду вопросов нет, тут все как раз четко и понятно. Но это уже конкретная реализация. Как автор к ней пришел, осталось за кадром...
1. По связке спринг + реактивщина + aws - относительно, стандарт на данный момент. Блокировка - устаревший подход.
2. Не совсем понял по поводу ограничений, какое именно из ограничений здесь может помешать.
3. Использование облачных сервисов (SQS), вместо собственных (rabbit mq и т.д.) - это стандарт. Только в исключительных ситуациях поступают наоборот, по моему опыту. Например, если деплой будет в закрытый контур.
4. А сама дедупликация - крайне тривиальна, останавливаться на простом кеше не особо хотелось.
P.S.: в начале видео сказано, почему был выбран такой подход.
Ещё раз спасибо!