Size: a a a

2020 March 25

CI

Co. In in Go-go!
Владимир Столяров
только так и можно, более того, пинговать надпротокольными keep-alive сообщениями сервером клиента самое правильное решение
Что есть надпротокольные Keep-Alive сообщения?
источник

CI

Co. In in Go-go!
ICMP?
источник

ВС

Владимир Столяров in Go-go!
ну, например, у вас поверх tcp есть какой-то собственный прикладной протокол, в нем надо заложить поддержку ping/pong, как, например, сделано в socket io
источник

CI

Co. In in Go-go!
Владимир Столяров
ну, например, у вас поверх tcp есть какой-то собственный прикладной протокол, в нем надо заложить поддержку ping/pong, как, например, сделано в socket io
Я верх не там понял) Тогда понятно
источник

G

German in Go-go!
Всем доброго дня.
Есть сервис, содержащий в себе несколько под-сервисов. Все они крутятся в горутинах. Какой есть более-менее способ удобно контролировать ошибки, которые могут возникать в этих потоках? Контролировать в самих под-сервисах или написать механизм для передачи контроля родительскому сервису?
источник

CI

Co. In in Go-go!
German
Всем доброго дня.
Есть сервис, содержащий в себе несколько под-сервисов. Все они крутятся в горутинах. Какой есть более-менее способ удобно контролировать ошибки, которые могут возникать в этих потоках? Контролировать в самих под-сервисах или написать механизм для передачи контроля родительскому сервису?
источник

АП

Александр Попов in Go-go!
German
Всем доброго дня.
Есть сервис, содержащий в себе несколько под-сервисов. Все они крутятся в горутинах. Какой есть более-менее способ удобно контролировать ошибки, которые могут возникать в этих потоках? Контролировать в самих под-сервисах или написать механизм для передачи контроля родительскому сервису?
ну если там waitgroup какой то, то завершение 1 гоурутины не закончит всю группу
источник

АП

Александр Попов in Go-go!
как вариант deferer в гоурутине который сделает рекавер паники
источник

а

а кто это in Go-go!
German
Всем доброго дня.
Есть сервис, содержащий в себе несколько под-сервисов. Все они крутятся в горутинах. Какой есть более-менее способ удобно контролировать ошибки, которые могут возникать в этих потоках? Контролировать в самих под-сервисах или написать механизм для передачи контроля родительскому сервису?
канал с ошибками
источник

а

а кто это in Go-go!
но вообще это не очень хорошее решение
источник

G

German in Go-go!
а кто это
канал с ошибками
Да есть уже, потому и ищу что-нибудь более правильное
источник

CI

Co. In in Go-go!
а кто это
но вообще это не очень хорошее решение
А какое хорошее? Потому что я вот только до канала с ошибками додумался
источник

а

а кто это in Go-go!
не гонять несколько сервисов под одной крышей)
источник

а

а кто это in Go-go!
ну у меня стоит хендлер
источник

а

а кто это in Go-go!
у сервиса есть Run() который работает в цикле и возвращает error
источник

а

а кто это in Go-go!
если err не nil, проверяем ошибку и обрабатываем
источник

CI

Co. In in Go-go!
а кто это
у сервиса есть Run() который работает в цикле и возвращает error
А выход из Run по чтению из канала ошибок?
источник

а

а кто это in Go-go!
а кто это
если err не nil, проверяем ошибку и обрабатываем
func (m *MyService) Run() error {
    // service logic
}
источник

АП

Александр Попов in Go-go!
а кто это
у сервиса есть Run() который работает в цикле и возвращает error
ну говно же
источник

а

а кто это in Go-go!
Александр Попов
ну говно же
почему?
источник