Size: a a a

2020 February 28

AK

Andrey Kolkov in Go-go!
Yury
у меня не публичный апи, и сессии я использую для авторизации и касбина. возможно не лучший путь, но так сложилось
Касбин это что?
источник

Y

Yury in Go-go!
Andrey Kolkov
Касбин это что?
источник

Y

Yury in Go-go!
в принципе в превью все написано))
источник

AK

Andrey Kolkov in Go-go!
Я уж думал...)
источник

Y

Yury in Go-go!
Andrey Kolkov
Я уж думал...)
ахахах))
источник

V

Vitaly in Go-go!
Daniel Podolsky
там же все тривиально, в этой доке
Не согласен.
К примеру, было бы круто в описании net получить ссылку на тот же bufio ;(
источник

AK

Andrey Kolkov in Go-go!
Yury
в принципе в превью все написано))
Ну, не знаю... задача не понятна. Как по мне, если используется api, хоть и внутренний,  то авторизацию лучше делать по точкам, а не по куки и сессиям.
источник

p

pragus in Go-go!
Vitaly
Ну просить аудит кода это было бы совсем нагло с моей стороны.
Но если вдруг будет время... io.ReadFull в строке 512 периодически читает те самые лишние 2 байта.
https://github.com/vponomarev/libsmpp/blob/master/smpp.go
smpp - это ж который про smsc?
источник

Y

Yury in Go-go!
Andrey Kolkov
Ну, не знаю... задача не понятна. Как по мне, если используется api, хоть и внутренний,  то авторизацию лучше делать по точкам, а не по куки и сессиям.
по точкам?
источник

V

Vitaly in Go-go!
pragus
а зачем так много lock/unlock и copy?
Трекинг запроса-ответа, отработка таймаутов ответа (отдельная горутина следит за тем, что если не ответили вовремя на запрос, то нужна реакция), поэтому множественный доступ к map с тренингом.

Копирование - местами для сохранения history последних пакетов (добавил после того, как получил грабли с чтением), местами для создания копии пакета
источник

AK

Andrey Kolkov in Go-go!
Yury
по точкам?
В смысле по точкам?
источник

AK

Andrey Kolkov in Go-go!
Yury
по точкам?
Т9, блин... по токенам, конечно.
источник

Y

Yury in Go-go!
и ещё вопрос на засыпку: можно ли в коде получить версию го, на котором билдится приложенька?
источник

Y

Yury in Go-go!
без ldflags ))
источник

p

pragus in Go-go!
Vitaly
Не согласен.
К примеру, было бы круто в описании net получить ссылку на тот же bufio ;(
в вашем случае есть разные варианты, но то точно не надо на каждый чих читать из сокета.

самый простой - врапнуть tcp-сокет в bufio и читать как есть(это сильно сократить число сисколлов)
источник

p

pragus in Go-go!
Vitaly
Трекинг запроса-ответа, отработка таймаутов ответа (отдельная горутина следит за тем, что если не ответили вовремя на запрос, то нужна реакция), поэтому множественный доступ к map с тренингом.

Копирование - местами для сохранения history последних пакетов (добавил после того, как получил грабли с чтением), местами для создания копии пакета
для таймаутов вам бы context.Context
источник

V

Vitaly in Go-go!
pragus
в вашем случае есть разные варианты, но то точно не надо на каждый чих читать из сокета.

самый простой - врапнуть tcp-сокет в bufio и читать как есть(это сильно сократить число сисколлов)
Вот это я в начале и спрашивал - даст ли readfull тот самый враппинг или нет и мне сказали, что да, даёт.
источник

Y

YWNWA in Go-go!
Здарова, нужно думать над идеей диплома(магистр), задумываюсь написать(или переписать с другого яп) библиотечку какую-то. Что посоветуете?
источник

p

pragus in Go-go!
Vitaly
Трекинг запроса-ответа, отработка таймаутов ответа (отдельная горутина следит за тем, что если не ответили вовремя на запрос, то нужна реакция), поэтому множественный доступ к map с тренингом.

Копирование - местами для сохранения history последних пакетов (добавил после того, как получил грабли с чтением), местами для создания копии пакета
и прочитанную пару '\n' я бы искал где-то на tx, а не rx
источник

V

Vitaly in Go-go!
pragus
для таймаутов вам бы context.Context
А что даст контекст? У меня асинхронный протокол - мне может прийти сразу 100 запросов, а таймаутнуться могут парочка из них, остальные же уложатся в заданное время.
источник