Alex
Спасибо, почитаю про них.
Null
Освойте микросервисную архитектуру за 5 месяцев на курсе «Microservice Architecture» от OTUS В процессе обучения вы: ✅ рассмотрите множество нетривиальных проблем проектирования backend-приложений и их дальнейшего сопровождения; ✅ изучите не только паттерны проектирования новых сервисов, но и подходы к работе с legacy-сервисами; ✅ научитесь решать проблемы с согласованностью изменений или с оркестрацией сервисов; - как разработчик научитесь базовым навыкам работы с Kubernetes. 💻 Программа подойдёт архитекторам, разработчикам, системным аналитикам, администраторам и DevOps-инженерам. В конце программы вы получите практическую помощь в трудоустройстве и карьерную консультацию от эксперта. 🌐 Оцените свой уровень знаний для обучения на курсе: https://otus.pw/YjRv/ Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: LjN8K7jLz
Akhmad Osmanov
A
Точно? По моему наоборот, орм по дефолту зло пока не доказано обратное
Nikita
Точно? По моему наоборот, орм по дефолту зло пока не доказано обратное
Факт. ОРМ зачастую добавляет очень много неявности, особенно горм
A
Ну, ОРМ
Timofey
откуда в го столько хейтеров ормок?)
A
Без разницы го или нет, но справедливости ради на го ормки особенно беспонтовые
薩卡班甲魚
откуда в го столько хейтеров ормок?)
Оттуда же, откуда столько хейтеров фреймворков) Идея голанга в простоте, а люди наоборот пытаются накинуть слоёв абстракции зачастую просто из-за привычки, оставшейся после шарпа/джавы/пхп
KonVoi
Я тоже пытался насадить в одном проекте, как никрути появляется новый не нужный слой и просто размазывается логика по еще куче файлов, поплевались причем с братками как выходцами из nodejs так и из пыхи
薩卡班甲魚
На уровне дефолтного круда орм работает как альтернативный синтаксис для SQL, но не проще ли тогда сразу на SQL писать запросы
Denis 🤖
откуда в го столько хейтеров ормок?)
язык низкоуровневый, не любят лишние абстракции. да и хайлоад часто, а там проще уже самими запросами крутить
Aleks
откуда в го столько хейтеров ормок?)
Просто нет пока, или вообще жирных навороченных ОРМов с кешированием и т.п. И нет нужды такого уровня ООП. :)
Aleks
откуда в го столько хейтеров ормок?)
Опять же возможно есть задача, где без ОРМ не куда даже на Go. Но я пока такой задачи не встречал. :)
Timofey
Опять же возможно есть задача, где без ОРМ не куда даже на Go. Но я пока такой задачи не встречал. :)
Таких задач и нет. Орм же не делает ничего уникального, всегда можно написать запросы ручками и смапить все тоже ручками)
A
Что ты имеешь ввиду?
Denis 🤖
Написать хороший умный кеш та еще задача...
как его потом инвалидировать если данные поменялись в базе, и как это сделать во всех инстансах приложения?
A
в любом случае, неясно откуда ормке знать как синхронизировать запросы. какую то потокобезопасность обычно обеспечивают, но только на стороне аппки, а что там дальше с запросами будет должна решать сама аппка, но на этом моменте весь смысл ормки потерян
Aleks
как его потом инвалидировать если данные поменялись в базе, и как это сделать во всех инстансах приложения?
Конечно кеш с умом применять стоит. Если архитектурный гений размазал кешируемое инстансами, то никак. :)
Denis 🤖
Конечно кеш с умом применять стоит. Если архитектурный гений размазал кешируемое инстансами, то никак. :)
архитектурный гений это стало быть текущая реальность? ) потому что сейчас везде эти ваши кубернетесы ну или просто мультиинстансинг
A
))))))
A
расходимся пацаны, просто надо было на одном инстансе все крутить, так бы и базка не понадобилась
Aleks
расходимся пацаны, просто надо было на одном инстансе все крутить, так бы и базка не понадобилась
Иногда реально так сильно проще. Есть и такие паттерны нагрузок, что на десять записей в кеше одна запись в базу.
Aleks
Так то я конечно не против резвится в попытках обогнать память с помощью cети и дисков, но бизнеc порой платит за скорость первого варианта. :)
Aleks
И при этом, что странно, бизнесу пофиг что: "не микросервисы, не чистая архитектура и не т.п." :)
A
бизнесу почти никогда не пофиг что приложение крутится в одном инстансе, потому что есть например требования к доступности
A
а так то да, полностью поддерживаю прежде чем писать и читать из базки стоит попробовать воспользоваться стеком и кучей
A
не знаю правда причем тут орм, но ладно
Aleks
не знаю правда причем тут орм, но ладно
На Go не причем, у нас вроде нет ОРМов с крутым кешированием и т.п. Это я выше просто привел пример относительно, когда ОРМ может помогать.
Aleks
т.е gorm плох?)
Не, он прост, легок и т.п.
A
Ну так используй квери билдер и маппер, их много разных крутых. В ормах просто начинается эта жужня типа вот тут мы сами обновим и докачаем, тут отношения подтянем и прочее хуе мое, хуки какие то подсунем, это залупа которую потом честным людям приходится выкорчевывать
A
Затем что с ормом у тебя априори больше заморочек потому что ты сову на глобус натягиваешь
A
Кейс такой что в базе объектов нет
A
Это тебе нужны аргументы зачем использовать орм потому что это надстройка, усложнение
A
Кейс такой что в базе объектов нет
Ответь вот на этот кейс для начала
A
В концепции орм есть
A
Ясно ))
Null
#Вакансия #Backend #Golang #Senior #Remote #Fulltime Вакансия: Middle+ / Senior Golang Developer Компания: LuckyGroup lucky-group.com Занятость: полная Страна: РФ и заграница Формат работы: офис/гибрид/удаленно Мы создаем высоконагруженные «умные» системы и инструменты, которые помогают получить максимум эффективности при работе с интернет-рекламой и ищем сильного Golang разработчика. 🔻Стек технологий, с которым мы работаем: -Язык разработки: Golang -Базы данных: Postgresql, Clickhouse, cockroachdb, Scylla -Брокеры сообщений: Kafka, NSQ -Система контроля версий: Git -CI/CD: gitlab -Деплой и оркестрация: nomad, consul, vault, docker -Мониторинг: ELK, prometheus + grafana, zabbix, okmetr -Алертинг: sentry, alertmanager 🔻Чем предстоит заниматься: -Разработка и поддержание микросервисов высоконагруженных проектов LuckyFeed, LuckyPush; -Участие в проектировании новых микросервисов; -Взаимодействие с командой; -Участие в планировании и проработке задач. 🔻Наши ожидания: -Опыт разработки и проектирования разных архитектур на Go от 3х лет; -Хорошее знание PostgreSQL, ClickHouse: уметь писать сложные запросы (джоины), уметь применять индексы, производить профилирование запросов; -Опыт работы с GRPC + Protobuf; -Опыт работы с REST; -Опыт работы с FastHTTP и Chi будет преимуществом; -Умение писать скрипты на bash, ansible будет преимуществом; -Умение писать юнит-тесты, покрывать свой код метриками и уметь его дебажить; -Знание и умение применять шаблоны разработки. -Опыт работы с высоконагруженными системами и гео-распределенными системами будет преимуществом! 🔻Мы: -Даем выбор: полная удаленка, офис или гибридный график (удаленка/офис); -Предлагаем атмосферу молодой компании, гибких процессов и прозрачности; -Оформляем по ТК РФ и всё, что с этим связано; -Предоставляем ДМС после испытательного срока -Поддерживаем стремление к развитию: корпоративные скидки на обучение от партнеров; -Доверяем: есть возможность взять 3 дня в квартал по болезни, без официального подтверждения; -Работаем 5/2, гибкий старт дня с 09:00 до 11:00. Если позиция вас заинтересовала, пишите @marina_luckyhr
Osse
Привет, возник вопрос ,работодатели требуют умение работать через gui иди через консоль с postgresql? + pgx
Alex
Никогда не сталкивался с такими требованиям. Хотя опыт с pgx и общее понимание устройства субд всегда подразумевались.
Alex
Мы же не вкатышки, к базе подключаться, в конце концов. Нам надо эффективно зафиксировать состояние бизнес-процессов.
Andrew
А это так сложно к постгресу через psql подключиться? Я вон только через pgcli и работаю потому что в кайф и никакой DataGrid мне не нужен. Хотя требование странное, работодателя обычно не ипут ни инструменты, ни даже какая БД. Видимо какая-то специфика за этим требованием стоит
.
databeaver и datagrid это смешно)
Сергей
databeaver и datagrid это смешно)
твои предложения?)
Сергей
dbeaver и datagrip
ахаха) я чет не заметил неправильности названий, я сразу понял про бобра и джетбрайнс)
.
или из параллельной вселенной
Oleg
Я за orm но справедливости ради сама обривиатура говорит о том что есть. Да в бд объектов нет, а в коде у нас как правило есть, искренне не пойму о чем спор. Рано или поздно любой высоконагруженый проект начинает работать с бд на более низком уровне, но это не означает уход от любых готовых решений, абстракций и преждевременную оптимизацию
Роман
Привет, народ, я смотрю сейчас в сторону пхп\го что выбрать? Интересен бекенд
Alex
COBOL
Роман
аха, смешно смешно
TOR
Привет, народ, я смотрю сейчас в сторону пхп\го что выбрать? Интересен бекенд
с пхп на го часто переходят, есть ли обратная тенденция - сомневаюсь)
антон
Го хороший. Ты код пишешь, а он работает, обычно сразу и так, как ожидается
Alex
Го хороший. Ты код пишешь, а он работает, обычно сразу и так, как ожидается
Сначала пишешь бойлерплейт для бойлерплейта, потом сам бойлерплейт, и только потом всё работает 😁
антон
А на плюсах пишешь больше, потом пытаешься подружить системы сборки от всех библиотек, потом три раза переписываешь, а потом клиенты ловят глюки
Владимир
Сначала пишешь бойлерплейт для бойлерплейта, потом сам бойлерплейт, и только потом всё работает 😁
да не, как раз ничего лишнего обычно. просто он заставит тебя сразу написать то, что в других языках тебе придется все равно дописать уже после того, как прога запустится
Роман
с пхп на го часто переходят, есть ли обратная тенденция - сомневаюсь)
Хмм, а с работой как? Например кроме регионов РФ ?
TOR
Хмм, а с работой как? Например кроме регионов РФ ?
ну, это не 1С что бы бояться о вакансиях за пределами РФ)
Роман
я видела что в РФ много, а за пределами не смотрела, потому и узнаю, так как не могу работать на РФ
TOR
вакансии в гугл наверняка будут)
Роман
ахахх))
TOR
ну в плане в самой компании, а не отправка погуглить)
антон
За пределами жаловался народ, что в Европе одна ява
антон
Ну она же прекрасна ))
там точно бойлеров перебор
Oleg
Очень спорно, особенно если современный spring
Oleg
Если речь о большом приложении то рано или поздно начинают писать те же уровни абстракции но без нужных инструментов, к примеру тот же nest на node Dto надо ? А то, не мапить же модель бд на апи Отдельный интерфейс и какой то репозиторий нужен ? - как бы многие пишу напрямую, но тогда ни тестов написать, ни orm смерить … не успел оглянуться вот уже у тебя он же абстракции что и в Java но работают хуже Я не говорю что это нужно в go, просто для большого приложения это рано или поздно само появляется
Вадим
Гошники, в каких проектах сейчас интересных работаете?
Jxhor Lxryn
Скорее слава богу, что не разбираешься, кто там какой наследник какого абстрактного класса