Aleksandr
подробности щас поищу
Daniel
вот я под маком своим компиляю, и оно норм запускается, хоть под убунтой, хоть под алпайном
Aleksandr
https://dominik.honnef.co/posts/2015/06/statically_compiled_go_programs__always__even_with_cgo__using_musl/
Nikita
на альпине мюсль вместо glibc, откуда постоянно проблемы вылазят
invariance
О, всем спасибо
invariance
починил
Aleksandr
угу. на alpine надо комплить тогда, когда и запускать там же будешь
invariance
invariance
скомпилил с муслом
Igor
народ, подскажите,
Как сделать sql запрос правильно на truncate table, если в функции название таблицы меняется?
queryString := "TRUNCATE TABLE $1 RESTART IDENTITY;"
tx.Exec(queryString, table)
Выдаёт pq: syntax error at or near "$1"
то есть он видимо понимает подстановку только из VALUES($1,$1...)
Aleksandr
просто сконкатенируй
Aleksandr
у тебя же table не извне приходит?
Igor
table приходит в функцию, которая транкейтит.
Сконкатенировать - работает. Я думал может можно через подстановку параметров как-то
Aleksandr
ну так ты же их и подставляешь, но не работает)
Igor
я думал, "есть способ"
DMITRY
Недавно тоже столкнулся что в альпайне С библиотеки порезаны
DMITRY
Причем даже если под ним скоипилиться не факт потом что норм запуститься
Andrei 🦉
Anton
именно поэтому я написал сюда свой вопрос и именно поэтому заострил внимание на ваших язвительных замечаниях о простоте решения этого вопроса через гугление
Anton
мне нужно указать параметр loc при коннекте к mysql, чтобы он парсил время в структуры в правильной таймзоне
а этот параметр должен выглядить именно как полное название таймзоны
Andrei 🦉
Anton
это понятное решение, но если случайно в каком-то месте забыть к time.Now() добавить .UTC(), потом долго можно искать ошибку
Andrei 🦉
ну или напишите свою либу, которая будет парсить системный файл с таймзонами и на его основе определять имя локальной
Andrei 🦉
код парсинга можно взять из стандартной либы time, там уже все написано, только не экспортированно
Aleksandr
а что надо, из текущей таймзоны получить название вида Europe/Moscow?
Andrei 🦉
Aleksandr
а есть понимание, что Europe/Moscow - это географическая временная зона и при том же локальном времени будет другой в другом городе?
Aleksandr
то есть из локальной зоны (а это оффсет) нельзя получить Europe/Moscow без дополнительного гео-контекста
Aleksandr
можно получить например все зоны которые принадлежат оффсету. и выбрать например первую
Andrei 🦉
Andrei 🦉
и знает в какой он находится из системных настроек
Aleksandr
оффсет. но оффсет однозначно на зону не маппится
Aleksandr
из зоны можно получить оффсет.
из оффсета нельзя получить зону.
Andrei 🦉
ну так у тебя в системе настраивается зона, а не просто оффсет
Andrei 🦉
и го знает эту зону, но полное название в терминах https://www.iana.org/time-zones не умеет отдавать
Aleksandr
Andrei 🦉
откуда то го узнал, какая у меня таймзона
Aleksandr
или не нулевая а последняя
Aleksandr
time/zoneinfo_read.go:217
Aleksandr
вот тут (если версия 1.11)
Alexander
Всем привет!
Есть ли тут разработчики с опытом в рекламных высоконагруженных проектах?
Roman
Roman
Anonymous
Roman
Andrei 🦉
или не нулевая а последняя
для первоначального вопроса не важно на самом деле, главное го умеет как то определять текущую таймзону, но отдает ее название в своем сокращенном варианте, а оригинальные полные названия получить нельзя
🏁Александр
эй
🏁Александр
а что с pro.go то?
Alexander
да, в сфере баннеров
Таргет отдачи рекламы по странам, девайсам с минимальными задержками
Статистика на ClickHouse с шардированием и прочее
Anonymous
Roman
KUKURUKU
Народ, может кто объяснить почему по ссылке в ответе чувак говорит, что int64 это именованный тип? int это же литерал типа? https://stackoverflow.com/questions/36555352/why-does-golang-allow-named-slice-type-assignment-without-explicit-type-conversi
Aleksandr
Aleksandr
Aleksandr
time/zoneinfo_read.go
Aleksandr
успехов, как говорится)
Aleksandr
всем)
Wingman
А посоветуйте плз.
Есть у меня штука, вынесенная в отдельный сервис: она будет ходить по различному оборудованию и собирать с него кучу самых разнообразных данных.
В результате - структурированные однообразные ответы, либо ошибка.
В неё пулять задание (объекты для обхода) будет какая-то другая штука.
Так вот, думаю я о том, как и что лучше сделать: делать http(s)-запрос с нужными параметрами, и ждать ответ, либо поднимать tcp-сессию и гонять туда-обратно нужные данные.
Учитывая, что опрос одной железки может и на 5-10 минут затянуться, а таких задания может быть несколько тысяч в течение 5 минут - оверхед (в смысле сложности) с сокетами и своим мини-протоколом может быть оправдан...
DMITRY
если веб то может проще websocket
Wingman
Не веб
Anonymous
Wingman
Примерно так и хочу, но вопрос в том, стоит ли это делать поверх хттп)
Anonymous
Wingman
если с постоянной сесией - то и "пинговать задачу" не надо - просто пулять результаты обратно
Wingman
DMITRY
Проще взять тогда готовые брокеры сообщений и подрубиться библиотекой
Wingman
Wingman
спасибо
Roman
а кто основатель канала тут?
Nikita
А посоветуйте плз.
Есть у меня штука, вынесенная в отдельный сервис: она будет ходить по различному оборудованию и собирать с него кучу самых разнообразных данных.
В результате - структурированные однообразные ответы, либо ошибка.
В неё пулять задание (объекты для обхода) будет какая-то другая штука.
Так вот, думаю я о том, как и что лучше сделать: делать http(s)-запрос с нужными параметрами, и ждать ответ, либо поднимать tcp-сессию и гонять туда-обратно нужные данные.
Учитывая, что опрос одной железки может и на 5-10 минут затянуться, а таких задания может быть несколько тысяч в течение 5 минут - оверхед (в смысле сложности) с сокетами и своим мини-протоколом может быть оправдан...
rabbitmq, nsq, nats.io (nats-streaming), kafka, zmq на выбор