Size: a a a

2020 October 06

p

pragus in Go-go!
угу. да и просто gcc :)
источник

DP

Daniel Podolsky in Go-go!
Вам в @gogetajob, на самом деле
источник

ЮП

Юлия Прокопенко... in Go-go!
Daniel Podolsky
Вам в @gogetajob, на самом деле
Спасибо, сейчас перейду)
источник

K

Kirill in Go-go!
всем привет, подскажите пожалуйста, пользую вот эту либу: https://github.com/shopify/sarama, может быть, у кого-то была необходимость в том, чтобы закрывать консьюмер после того, как он вычитал все сообщения, начиная с какого-то более старого оффсета и до самого нового? то есть, допустим, я хочу вычитать все сообщения из топика за последнюю неделю и закрыть консьюмер, у меня проблема в том, что из функции ConsumeClaim я из цикла делаю return и ничего не происходит
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
всем привет, подскажите пожалуйста, пользую вот эту либу: https://github.com/shopify/sarama, может быть, у кого-то была необходимость в том, чтобы закрывать консьюмер после того, как он вычитал все сообщения, начиная с какого-то более старого оффсета и до самого нового? то есть, допустим, я хочу вычитать все сообщения из топика за последнюю неделю и закрыть консьюмер, у меня проблема в том, что из функции ConsumeClaim я из цикла делаю return и ничего не происходит
это потому что ConsumeClaim встроен в цикл получения и ребалансировки партиций
источник

K

Kirill in Go-go!
Andrei 🦉 Sergeev
это потому что ConsumeClaim встроен в цикл получения и ребалансировки партиций
окей, но у меня есть задача вычитать все изменения за какой-то период, и после этого, мне нужно остановить консьюмер, я поднял топик, нагнал туда сообщений и ничего с ним не делал, но при этом, после того, как прочитал все сообщения (оффсет закомитился) делаю return из цикла, но все равно ничего не происходит :( как будто заново начинает читать сообщения
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
всем привет, подскажите пожалуйста, пользую вот эту либу: https://github.com/shopify/sarama, может быть, у кого-то была необходимость в том, чтобы закрывать консьюмер после того, как он вычитал все сообщения, начиная с какого-то более старого оффсета и до самого нового? то есть, допустим, я хочу вычитать все сообщения из топика за последнюю неделю и закрыть консьюмер, у меня проблема в том, что из функции ConsumeClaim я из цикла делаю return и ничего не происходит
то есть оно и не должно так работать
вам нужно при получении нужного оффсета отписаться от топика или вовсе закрыть консьюмер, но это всё делается извне, а не в функции ConsumeClai
источник

K

Kirill in Go-go!
Andrei 🦉 Sergeev
то есть оно и не должно так работать
вам нужно при получении нужного оффсета отписаться от топика или вовсе закрыть консьюмер, но это всё делается извне, а не в функции ConsumeClai
а как мне из-вне понять, что я достиг какого-то оффсета?
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
а как мне из-вне понять, что я достиг какого-то оффсета?
банально посмотреть этот оффсет в сообщении
но нужно помнить, что в топике, как правило, больше одной партиции, а у каждой партиции свой оффсет
источник

K

Kirill in Go-go!
Andrei 🦉 Sergeev
банально посмотреть этот оффсет в сообщении
но нужно помнить, что в топике, как правило, больше одной партиции, а у каждой партиции свой оффсет
вооооот, тут тоже вопрос
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
окей, но у меня есть задача вычитать все изменения за какой-то период, и после этого, мне нужно остановить консьюмер, я поднял топик, нагнал туда сообщений и ничего с ним не делал, но при этом, после того, как прочитал все сообщения (оффсет закомитился) делаю return из цикла, но все равно ничего не происходит :( как будто заново начинает читать сообщения
ну и честно говоря у вас очень странная задача для кафки, кафка она про бесконечный поток данных
мне кажется вам проще использовать что то более подходящее для задачи вместо кафки, вместо этих костылей
источник

K

Kirill in Go-go!
Andrei 🦉 Sergeev
ну и честно говоря у вас очень странная задача для кафки, кафка она про бесконечный поток данных
мне кажется вам проще использовать что то более подходящее для задачи вместо кафки, вместо этих костылей
есть немного такое :)
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
а как мне из-вне понять, что я достиг какого-то оффсета?
можно сделать на основе таймера, типа за последние n секунд не пришло сообщений из консьюмера, сообщений больше нет, завершаем консьюмер
источник

K

Kirill in Go-go!
Andrei 🦉 Sergeev
можно сделать на основе таймера, типа за последние n секунд не пришло сообщений из консьюмера, сообщений больше нет, завершаем консьюмер
это через контекст можно сделать наверно, да, но есть проблема, что я дедлайн может истечь, пока я еще читаю топик, может, как-то можно запускать таймер из-вне ConsumeClaim по какому-то тригеру?
источник

K

Kirill in Go-go!
Kirill
это через контекст можно сделать наверно, да, но есть проблема, что я дедлайн может истечь, пока я еще читаю топик, может, как-то можно запускать таймер из-вне ConsumeClaim по какому-то тригеру?
просто искренне не хочется делать коннект к базе данных для такой задачи (с учетом того, что в моем сервисе нет коннекта к нужной бд)
источник

AS

Andrei 🦉 Sergeev in Go-go!
Kirill
это через контекст можно сделать наверно, да, но есть проблема, что я дедлайн может истечь, пока я еще читаю топик, может, как-то можно запускать таймер из-вне ConsumeClaim по какому-то тригеру?
ну вас же никто не ограничивает во взаимодействии из ConsumerClaim с остальным миром
можете организовать канал, в который посылать те же сообщения
а слушатель из канала уже в другой части программы реализует логику таймаута
источник

AS

Andrei 🦉 Sergeev in Go-go!
ConsumeClaim это просто колбек, который дёргает sarama consumer для каждой партиции каждого топика, который ему выдал брокер
источник

VP

Vladimir Pogarsky in Go-go!
Всем привет!

Пишу насчет тематики микросервисам и Golang (что меня интересует на данный момент)

Есть у кого желание желание как нибудь скооперироваться? Тема не простая и требует очень многих знаний

Сейчас я делаю упор на контейнеризации и оркестрации. Пока что удалось сделать полноценный CI/CD для приложений, с оркестрацией на Docker Swarm, с Traefik, базовым мониторингом prometheus и его алертами. Это по теме экосистемы микросервисов, сейчас же также изучаю микросервисную архитектуру доскональнее, но тема сложная и довольно не простая.

По опыту я уже разрабатывал пару микросервисов (как части одной большой архитектуры), но не вникал в их доскональное обустройство и экосистему, так как заготовку, настройку и интеграцию делал не я, мне лишь удавалось реализовать бизнес логику конкретных микросервисов

Из вариантов заняться реализацией синтетического проекта с элементарной бизнес логикой и пробой оркестрации экосистемой микросервисов

Если будет желание, то напишите пожалуйста в ЛС, чтобы не засорять данный чат
источник

АЗ

Алексей Заяц... in Go-go!
А почему в личку всем интересно.
источник

SS

Shaoron Steiner in Go-go!
Vladimir Pogarsky
Всем привет!

Пишу насчет тематики микросервисам и Golang (что меня интересует на данный момент)

Есть у кого желание желание как нибудь скооперироваться? Тема не простая и требует очень многих знаний

Сейчас я делаю упор на контейнеризации и оркестрации. Пока что удалось сделать полноценный CI/CD для приложений, с оркестрацией на Docker Swarm, с Traefik, базовым мониторингом prometheus и его алертами. Это по теме экосистемы микросервисов, сейчас же также изучаю микросервисную архитектуру доскональнее, но тема сложная и довольно не простая.

По опыту я уже разрабатывал пару микросервисов (как части одной большой архитектуры), но не вникал в их доскональное обустройство и экосистему, так как заготовку, настройку и интеграцию делал не я, мне лишь удавалось реализовать бизнес логику конкретных микросервисов

Из вариантов заняться реализацией синтетического проекта с элементарной бизнес логикой и пробой оркестрации экосистемой микросервисов

Если будет желание, то напишите пожалуйста в ЛС, чтобы не засорять данный чат
а в чем цель?
источник