Tony
makefile ?
Пока не пойму как его использовать в данном случае
Andrey
В отладке, когда тебе дают пример json для запуска, там надо добавить массив Args
Алексей
Ребята. Подскажите. Получаю вот такой ответ при попытке отладить на локальной машине: "Config error: config error: open ./config/config.yml: The system cannot find the path specified." Файл в проекте лежит.
Алексей
Алексей
Алексей
Алексей
Отсюда запускаю. Стрелкой указал...
Алексей
Здесь :)
Igor
у вас запус в cmd/app/main.go а конфиг в папке выше. надо. выйти на 2 уровня выше и далее в папку конфиг
Алексей
Сейчас попробую. Я запускаю выше уровнем, всё же
Алексей
Отсюда запускаю же
Алексей
Заработало в отладке!
Алексей
Спасибо огромное!
Алексей
Пол дня промудохался
Алексей
Visual studio
Алексей
Точно!
Artur
Пишем монолит на Golang. Часть 1 https://youtu.be/hb-9Lz-nuyM
Belka
Почему-то goland не видит второй метод(checkState) и сразу прыгает на третий. Хотя если дебажить, то он в него заходит. Может кто сталкивался с похожей проблемой?
Belka
Спасибо, всё оказалось намного проще, метод ничего не возвращал, поэтому он прыгал на следующий)
Sasha
Спасибо, всё оказалось намного проще, метод ничего не возвращал, поэтому он прыгал на следующий)
CheckState не возвращал? Тогда бы компиляция провалилась и дебагер не запустился: https://go.dev/play/p/lXAKmaahaE9
Null
⏳ Как Docker влияет на производительность вашего приложения Go Читать @Golang_google
Anonymous
⏳ Как Docker влияет на производительность вашего приложения Go Читать @Golang_google
Надеюсь я не единственный кто отказался от докера. Вы еще не в курсе как он работает с redis, докер замедляет его в разы, если не десятки раз. Лучший способ установки и развертывания приложений - deb пакеты. И репозиторий свой делай если хочешь
Dmitriy
Надеюсь я не единственный кто отказался от докера. Вы еще не в курсе как он работает с redis, докер замедляет его в разы, если не десятки раз. Лучший способ установки и развертывания приложений - deb пакеты. И репозиторий свой делай если хочешь
Редис используется для кеширования данных. Т. е. он по определению должен находится там же где и сервис. Какой смысл выносить его на виртуальную систему? Разумеется, что передача данных от хоста к сервису в докере будет бутылочным горлышком.
qurabay
Dctv ghbdtn e vtyz nfrjq djghjc jib,rf ds[jlbn
Михаил
currentLogFile type is *os.File only.
Yes! I looked at the documentation!) try use O_TRUNC permission when file open https://pkg.go.dev/os#pkg-constants
Nikhil
Yes! I looked at the documentation!) try use O_TRUNC permission when file open https://pkg.go.dev/os#pkg-constants
So, currently, it is: os.O_APPEND|os.O_CREATE|os.O_RDWR So, what should be replaced here, or do we need to add it too.
Михаил
So, currently, it is: os.O_APPEND|os.O_CREATE|os.O_RDWR So, what should be replaced here, or do we need to add it too.
"|" it is Bitwise OR. "os.O_APPEND|os.O_CREATE|os.O_RDWR|os.O_TRUNC" like write @illiadimura is to add permissions to the existing
Gaiaz
⏳ Как Docker влияет на производительность вашего приложения Go Читать @Golang_google
Ни докерфайла, ни анализа просадки производительности, какой-то мифический "классический" способ развертывания пхп приложений. Бред, в общем
Dmitriy
Сервис должен быть stateless и максимально одинаков между подами. Кеш отдельно, мастабируется и деплоится отдельно
База данных -да. Но кеш - это априори - максимально быстрое хранилище. С тем же успехом можно было вынести оперативную память и файл подкачки на отдельные сервера, и удивляться, чего вдруг все стало медленно работать.
Dmitriy
Можно выстрелить себе в ногу и заявить: «Вы еще стреляете себе в ногу? Это ж больно! Стреляйте в голову! Из тех кто стреляет в голову - никто не жаловался».
Alexey
что значит "там же где и сервис"?
Dmitriy
Вы назначение кеша с персистивных хранилищем не путаете?
kostyaBro
и вот есть например 20 подов сервиса, как этот кеш должен выглядеть? как его реплецировать и шардировать?
Что если у каждого пода свой редис и они по redis pub sub общаются если надо?
Gaiaz
Что если у каждого пода свой редис и они по redis pub sub общаются если надо?
Поды не знают ничего о других подах, об их количестве. Что за кейс у вас такой я не понял
emil
Всем привет, помогите разобраться, почему у меня протобаф выдает ошибку, в гугле прост ссылку на доку дает, будто вообще нет инфы про эту ошибку: api.proto:24:18: "NewInterview" is not a message type. api.proto:26:21: "FinishInterview" is not a message type. вот файл: https://pastebin.com/qkBb1NdE
emil
причем на Answer он не ругается вообще
emil
а, все я догнал, названия совпадают)
Nikhil
I want to ignore an auto-generate file when I run make test. I want to ask that can we add multiple comments on top that file like this: //go:build !ignore_autogenerated // +build !ignore_autogenerated // +build !skip First 2 statements are already present, can I add third statement too, so that I can add -t skip in the go test command to ignore that file. Is this approach valid?
Anonymous
Редис используется для кеширования данных. Т. е. он по определению должен находится там же где и сервис. Какой смысл выносить его на виртуальную систему? Разумеется, что передача данных от хоста к сервису в докере будет бутылочным горлышком.
Ну это сейчас мне понятно, а тогда, когда учил докер и разбирался как он работает - это было проблемой. Особенно когда контейнеры + приложения без них, все запутано, везде усложнения.
Anonymous
а пробовали поднять и сравнить ваш кейс, например, через podman вместо классического докера?
Нет, полгода с разной контейнеризацией пожил и понял что самый лучший и надежный способ это простой deb пакет в котором собранный бинарник и грамотные правила сборки. Заходишь на сервер, в терминале коннектишься к своему репозиторию, sudo apt-get install. Все
Anonymous
И так будешь делать например на 10 разных серверах?)
Не понял вопрос, тут меньше действий чем запустить контейнер с докерхаба.
Vic
И так будешь делать например на 10 разных серверах?)
первое, что приходит в голову -- написать Ansible плейбуку... но вообще, да... вопрос хороший :)
Maks
Нет, полгода с разной контейнеризацией пожил и понял что самый лучший и надежный способ это простой deb пакет в котором собранный бинарник и грамотные правила сборки. Заходишь на сервер, в терминале коннектишься к своему репозиторию, sudo apt-get install. Все
А еще: как ты будешь делать разным приложениям разную подсеть? Что бы сервиса а мог только с сервисом Б общатся, наружу что бы у них доступа не было. Что бы другие сервисы тоже могли общаться только с определенными сервисами. Это придется опять же ручками конифижить все сети. Пусть и один раз
Maks
А наружу сервис только один смотрит? Или если я буду стучаться по айпишнику и порту и отправлю rpc запрос извне - то он мне ответит?
Anonymous
А наружу сервис только один смотрит? Или если я буду стучаться по айпишнику и порту и отправлю rpc запрос извне - то он мне ответит?
Наружу смотрит nginx, в качестве прокси. Он и решает что да как. Но внутренняя сеть на net/rpc, к ней никто не может подключиться
Maks
А как будешь поступать если нужно будет один из сервис запустить в 2+ инстанса?
Maxim
А еще: как ты будешь делать разным приложениям разную подсеть? Что бы сервиса а мог только с сервисом Б общатся, наружу что бы у них доступа не было. Что бы другие сервисы тоже могли общаться только с определенными сервисами. Это придется опять же ручками конифижить все сети. Пусть и один раз
Мы ушли на lxc + openvswitch. Да, кубер и докер хорошо для утилизации и т.д , но решили контейнер = законченный под, т.е. самодостаточное, а далее их динамическое поднятие и скалинг. Но только по части проектов, не во всех. Воркеры в докерах проще.
Maks
А почему вы решили что докер медленнее работает?
Anonymous
А как будешь поступать если нужно будет один из сервис запустить в 2+ инстанса?
Не вижу проблем, хоть 10. Это же от архитектуры зависит. Если проектировать все хорошо, проблем не будет. Речь то про докер, я исключил его из стека навсегда. Вам надо собрать deb пакет для понимания, там же тоже правила сборки, типо выгружайся в такую то папку, запусти то, поставь переменную окружения и тд
Maks
Статья которая выше есть про скорость приложения в докере слишком тухлая. Там даже ос не указана
Anonymous
Ну это к автору вопросы, если это мне. Я согласен что слабоватая для таких серьезных выводов
Maks
Ощущение что чел на маке запускал)
L
кто нибудь юзает github.com/bufbuild/buf?
L
раньше не особо парясь юзал для grpc, теперь делаю buf mod update и получаю аля - вы из России, идите нахер
L
Закачать предыдущую версию и указать локально?
да сам бинарь то качается, mod update вроде плагины качает
L
мне как минимум grpc-gateway нужен
Anonymous
protoc + third modules = ez gateway
Anton
а до этого впн юзал, самый тривиальный метод
L
раньше меня тож не пускал, сейчас спокойно генерю, что странно
ну ты видимо плагины качнул, а дальше они локально уже лежат
L
а до этого впн юзал, самый тривиальный метод
да понятно, просто вопрос удобства и конвеера
Anton
та он даже на простой generate посылал html-разметкой в терминал
Максим
@banofbot
Florian Geyer von Giebelstadt
Привет.Вопрос хотел задать относительно условия
Florian Geyer von Giebelstadt
if (9 < b < 100)&(b%4=0) { ... }
Florian Geyer von Giebelstadt
Как его починить,чтобы оба условия проверялись.В первых скобочках мне говорят что инт с булевым типом нельзя сравнивать,во второй тоже.Можно вообще два условия сразу проверять и как это правильно сделать в моём случае?
Florian Geyer von Giebelstadt
Спасибо