Илья
not safe for work
Petr
Nastya
msfw?
Я заручилась разрешением главного «Тирана чатика» 🤓
Илья
🏁Александр
Чтоэта?
ну смотрите, если вы запостили в чат то за что в приличной компании уволняют (порнуха с Сашей грей например) то вот
🏁Александр
это и называется not safe for work
Илья
Илья
В прочем, уже флудим
Andrei
Добрый вечер!
Подскажите пожалуйста как можно здесь обойти ошибку «bufio.Scanner: token too long»?
(да, там адовое форматирование и все это в тот буфер, размер которого определен константой в либе bufio не влезает)
https://github.com/def/check_rkn/blob/master/main.go#L32
Dmitry
Andrei
ʕ◔ϖ◔ʔ
На полдня раздача))
Sergey
Alexandr
ʕ◔ϖ◔ʔ
Да ладно, не за что, аж засмущался.
Vladimir
arkady
Парни, а как определить, какого размера должен быть буфер в канале?
Roman
5-го
Dmitry
arkady
что ты хочешь записывать в канал?
я только изучаю этот язык, хочу для практики написать чат, так вот в этот канал (буферизованный) сыпались бы все сообщения для последующей рассылки этих сообщений по пользовательским каналам.
arkady
тоесть заведомо не известно сколько будет сообщений поступать в один момент времени
V
Имх, нарисуйте сколько у вас читателей, сколько писателей на канал и предскажите нагрузку. Если не получается, то можно написать тестовое ПО, которые это дело будут имитировать.
Dmitry
«сыпались бы все сообщения для» вот тут мне кажется ключевое слово «все»
Dmitry
в реализации консюмера для AMQP канал создается не буферизованный
Dmitry
и он прекарсно слушается и не блокирует основной поток если запускать в горутине
ainu
Daniel
🏁Александр
@onokonem а как вы относитесь к доменной архитектуре в гоу? 🙂
Daniel
как к геологии
Daniel
полезная наука
🏁Александр
когда все кладется в пакет по бизнес сущностям аля users/handler.go users/model.go
вместо пакетов userHandler и userModel
Daniel
главное не забывать - она описывает реальность, а не формирует
Daniel
🏁Александр
ну косметика не косметика но не удобно
🏁Александр
это я только пример привел, по факту я там 5 пакетов в разных местах держал к одной сущности
Daniel
так и слава богу
Daniel
от количества пакетов ничего не зависит вообще
Daniel
я стараюсь выделять пакет каждый раз, когда это возможно
Denis
Товарищи, подкиньте инфы пожалуйста по поводу того как же деплоить маленькие stateful приложения.
Где ставить базу, должна ли база быть как контейнер/сервис в моих манифестах.
Маленькое приложение на столько, что я не хочу заводить целый kubernetes/swarm
Daniel
чего-то я не понимаю
Daniel
вот у вас есть инфраструктура
Daniel
и она довольно жесткая, потому, что базируется на железе
Daniel
и она однозначно определяет обычно, где ставить базу
Daniel
хотите магкую - заводите кубернетис, или его аналог
Anonymous
Что есть мягкую?
Daniel
это я пошутил так
Daniel
замените на "гибкую"
Anonymous
Базу он все равно к хосту прибьет
Daniel
или нет
Anonymous
Или да, потому что делать распределённую фс придётся. Что не есть хорошо)
Dmitry
«Маленькое приложение на столько, что я не хочу заводить целый kubernetes/swarm»
ответил на свой же вопрос)
а по делу взять какой нить CI, jenkins не рекомендую, например гитлаб
базу поставить отдельно
Собирать Аплин имаж и пушать его в регистри, а на ап машине просто пулить и стартовать
Вроде и автоматизировано и просто
Anonymous
Причём тут ci
Alexander
чтобы деплоить по кнопке
Anonymous
У него другой вопрос был
Alexander
да вопрос какой-то ппц странный. "как деплоить небольшое приложени?" да положить на сервер и запустить.
Daniel
у него сложное приложение
Anonymous
Denis
Должна ли быть база в контейнере?
Alexander
нет
Alexander
база - отдельно, контейнер с приложением - отдельно
Denis
А если в отдельном контейнере?
Anonymous
Тебе и докер не нужен)
Alexander
тогда придется делать маунт у этого контейнера 🙂
Alexander
но я бы не стал)
Daniel
а вот это не важно становится
Daniel
если коротко - ничего база не должна, кроме как отвечать на известном адресе и порту
Дмитрий Петров
Привет, попробуй связку docker + ansible
У меня была такая же проблема и она показала себя хорошо.
Делаешь ansible playbook который собирает образ и не пушит его а делает docker save
Затем полученый образ копируешь с помощью synchronize и делаешь docker load
Ну а дальше просто запускаешь с ключиком --restart
пролучаешь k8s/swarm для бедных
Дмитрий Петров
не нужно ни registry, ни ci, по сути один файлик в репе
Daniel
я вот понять не могу - зачем тут докер
Дмитрий Петров
как минимум для сборки
Dmitry
Дмитрий Петров
и чтобы не трахать себе мозг с systemd и супервизором
Дмитрий Петров
+ данные которые нужно бекапить все лежат в одном предсказуемом месте, а как оно там замаплено внутри контейнеров второй вопрос
Alexander
а зачем бекапить контейнеры
Alexander
или ты про данные для контейнеров?
Дмитрий Петров
ага