@proGO

Страница 1099 из 1674
Andrey
26.12.2017
10:18:47
точно

Может я чего не понмиаю. Может ли при добвлении кода __text не расти а __rodata расти?При условии что мы строк и констант не добавляем. Я предполагаю что __rodata обычно растёт потому что компилятор сует в бинарник имена функций и какую то служебную инфу. Я считаю всёе что это баг компилятора. Но товарищ с стэковерфлоу настативает на том, что это инлайн и что в родате код хранится.

Lucky
26.12.2017
10:30:05
А стоит ли пересылать протобафом файлы, которые и в plane json весят 7 кб?

Vasily Romanov
26.12.2017
10:30:42
будут весь 3-4 кб

Google
Vasily Romanov
26.12.2017
10:31:02
основной вопрос - а сколько запросов в сек если там типа 100 qps то можно не морочиться

Eldar
26.12.2017
10:31:06
Зависит от содержания)

Это по поводу прото

Phil
26.12.2017
10:32:16
Слушайте, а есть какие-нибудь чатики поговорить о Роскомнадзоре и блокировках^W^W^W REST/OAUTH/ANYWEB API с заинтересованными? Пофилософствовать там, пофантазировать, обменяться опытом. А то иногда в диалоге самим с собой глаз замыливается, а Го-чатик всё-таки про Go, а не про REST API

Vasily Romanov
26.12.2017
10:54:52
это меньше 1 qps имхо можно не заморачиваться

Lucky
26.12.2017
10:58:15
Извиняюсь за спам, но! Как вам gorilla/mux раутер? Есть ли хорошие альтернативы для создания микросервиса с REST апи?

Oleh
26.12.2017
10:59:17
fasthttp

Phil
26.12.2017
10:59:18
Извиняюсь за спам, но! Как вам gorilla/mux раутер? Есть ли хорошие альтернативы для создания микросервиса с REST апи?
RESP? :))) Я норм гориллу использую. Не помню, что меня в стандартном не устроило

Oleh
26.12.2017
10:59:28
httprouter

Lucky
26.12.2017
11:00:02
RESP? :))) Я норм гориллу использую. Не помню, что меня в стандартном не устроило
да я уже не знаю, что ещё проверить на предмет утечки, так что пробую менять разные части

Andrey
26.12.2017
11:00:34
а чем утечку проверяете?

Google
Phil
26.12.2017
11:00:52
Создавай
Блин. Ну просто как-то...

Phil
26.12.2017
11:01:29
Создавай
А давай ты тоже попасешься у меня в fb, ну хоть не только с Добряковым будем об этом. Но у меня ещё много Роскомнадзора и велосипедов

Если микро, то обычный net.http достаточно:)
вспомнил. переменные я хотел. и вроде накладки стандартный не очень

Lucky
26.12.2017
11:02:05
а чем утечку проверяете?
Через прометеус слежу за аллоцируемой памяться, ну и TOP. Пробовал профайлер прикрутить, но из него ничего внятного вытянуть не смог

Lucky
26.12.2017
11:04:13
Блин, тогда получается, что лыжи таки едут, а я - нет

Oleh
26.12.2017
11:04:20
А что такое "ручки" - часто слышу в докладах Яндекса, нигде ранее не встречал такого термина?

Igor
26.12.2017
11:16:52
Это хэндлеры
Хэндлер - обработчик. В данном контексте "ручки" зачастую имеют совсем другой смысл. https://ru.stackoverflow.com/questions/431135/%D0%A7%D1%82%D0%BE-%D1%82%D0%B0%D0%BA%D0%BE%D0%B5-%D1%80%D1%83%D1%87%D0%BA%D0%B8-%D0%BD%D0%B0-%D1%81%D0%BB%D0%B5%D0%BD%D0%B3%D0%B5-%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%81%D1%82%D0%BE%D0%B2

Kirill
26.12.2017
11:34:36
Господа, а как вы делайте интеграционные тесты? Какие-то фреймворки? Или просто запускаете прямо в файле с тестами из кода docker контейнеры и начинаете перекидывать запросы?

Kirill
26.12.2017
11:46:57
мокаем
Замокать можно все сервисы с которыми идет взаимодествие, но это же уже не интеграционные тесты, разве нет?

Aleksandr
26.12.2017
11:54:11
Замокать можно все сервисы с которыми идет взаимодествие, но это же уже не интеграционные тесты, разве нет?
если критически важно именно не эмитировать поведение, то делаем это на уровне CI, Jenkins например билд который запускает сервисы какие-то, типа как докер контейнеры, прогоняет какой-то go скрипт который с ними взаимодействуют и крашится если все плохо, а там уже зависимости на апдейт продакшн билда

ну вообще тема достаточно разнообразная, единого подхода не найдешь, зависит от конкретной задачи

но можно и докер-контейнерами, почему бы и нет

Kirill
26.12.2017
11:55:47
Ясно, спасибо

Demuz
26.12.2017
12:04:55
Error 1452: Cannot add or update a child row: a foreign key constraint fails/ ON DELETE CASCADE ON UPDATE NO ACTION)

Google
Demuz
26.12.2017
12:05:31
В базе если вручную вписываю значения, все работает. А при запросе из ORM база ругается.

Ilya
26.12.2017
12:06:22
Ок.

Demuz
26.12.2017
12:06:42
Здесь же запись новая добавляется. При чем тут ON UPDATE NO ACTION?

Jabbor
26.12.2017
12:12:22
Demuz
26.12.2017
12:14:30
Vozmojno kakoyto foreign key ne sushestvuet v insert raw
Спасибо. Нашел. Галка не там стояла )



Andrey
26.12.2017
14:19:44
а тут есть контрибьюторы в го?

Похоже что нет

Alex
27.12.2017
09:52:19
вот интересно; а если напишешь реализацию шаблонов для Go и сделаешь запрос чтобы включили твой код в основной репоз, то примут запрос или отклонят ???

Alexey
27.12.2017
09:52:34
расстреляют

Nick
27.12.2017
09:53:01
Я так и не понял, есть ли быстрые orm-ки без reflect'ов на go, знает кто ?

Foxcool
27.12.2017
09:54:05
orm юзают в го таки? Для микросервисов может быть лишковатым или норм?

Nick
27.12.2017
09:54:36
reform
оп, спасибо, сейчас гляну

Foxcool
27.12.2017
09:55:11
на sql-injection проверялись? (:

Daniel
27.12.2017
09:55:34
orm юзают в го таки? Для микросервисов может быть лишковатым или норм?
я вот обнаружил, что заставлять мидлов использовать орм может быть осмысленным. код слегка поструктурированнее получается

Google
Nick
27.12.2017
09:56:37
Admin
ERROR: S client not available

Alexey
27.12.2017
10:57:37
в плане организации кода это определённо плюс. Без орм получается жуткая каша
У нас что Орм, что не Орм все равно сверху оборачивают структуркой с методами типа CreateUser

Marlik
27.12.2017
11:02:40
@onokonem то есть на данный момент, что-бы использовать серты в го, желательно через nginx это делать?

Marlik
27.12.2017
11:04:52
В net/http есть ListenAndServeTLS
А насколько быстрее это чем через nginx?

xPushkin
27.12.2017
11:07:18
через нжинкс проще и удобнее:)
Проще? Поменять ListenAndServe на ListenAndServeTLS Или Ставить nginx проксю перед сервисом и там писать конфиг

Alexey
27.12.2017
11:14:06
Проще? Поменять ListenAndServe на ListenAndServeTLS Или Ставить nginx проксю перед сервисом и там писать конфиг
Нжинкс, помимо терминации ssl, даёт: - балансировку нагрузки - логи - кеш - отдачу статики - разруливание запросов на разные сервисы по имени хоста, айпишнику и location - не надо выставлять сервис голой попой в интернет (в нжинксе таки меньше дырок, чем в моей поделке) А терминация ssl на нжинксе ещё и даёт возможность задампить трафик и посмотреть, что не так, если что-то не так, без всякой возни с декодированием ssl. В общем, несколько строчек в его конфиге мне написать совсем не лень ради всего этого:) Но вообще это холивар, конечно.

?
27.12.2017
11:15:11
По мне так тож лучше nginx:)

Vladimir
27.12.2017
11:15:51
Нжинкс, помимо терминации ssl, даёт: - балансировку нагрузки - логи - кеш - отдачу статики - разруливание запросов на разные сервисы по имени хоста, айпишнику и location - не надо выставлять сервис голой попой в интернет (в нжинксе таки меньше дырок, чем в моей поделке) А терминация ssl на нжинксе ещё и даёт возможность задампить трафик и посмотреть, что не так, если что-то не так, без всякой возни с декодированием ssl. В общем, несколько строчек в его конфиге мне написать совсем не лень ради всего этого:) Но вообще это холивар, конечно.
- балансировку можно сделать и на Го, она тебе вообще нужна? - Логи приложению все равно нужны, они все равно будут лучше чем у веб-сервера (только приложение знает что нужно логгировать и с каким набором деталей) - кэш приложению тоже нужно, никто лучше приложения не знает что и как кэшировать - статика - ну да, не надо писать этот момент, но в целом в Го это тоже достаточно нормально работает - можно написать нужную кастомную логику на Го - только тебе nginx тут не поможет увеличить безопасность

статику через nginx надо раздавать когда это прям узкое место, иначе стоит делать где проще (а проще таки в коде, на Го это также довольно мало кода)

Vladimir
27.12.2017
11:17:44
в смысле обернуть хттп хендлеры в recover

и те места где может быть падеж

Vladimir
27.12.2017
11:18:25
балансирока может быть опять же l7 кастомная с сложной логикой. Тем более из nginx'а довольно так себе балансер

Google
Vladimir
27.12.2017
11:18:42
функционала ему не хватает чтобы называться балансером

Sergey
27.12.2017
11:18:56
и те места где может быть падеж
очень сложно, хочу писать на пхп

Vany
27.12.2017
11:18:57
да можно обернуть. Но есть шанс написать свой нжинкс.

Vladimir
27.12.2017
11:18:58
Hello world!
нет, просто оборачиваешь нужные места в recover хотя бы и будет уже лучше

Marlik
27.12.2017
11:19:07
Я по мотивам вот этого текста вопрос задал: Что плохо в Go runtime SSL • Медленный SSL handshake • 250rps против 500rps на nginx (читай OpenSSL) • Жрущий память SSL • Примерно на 13KB на коннект в сранении с таким же, но без шифрования • Видимо, копия сертификата и ключа у каждого коннекта своя • nginx – не выход: увеличивает потребление сокетов втрое • А сокеты – они дорогие

Vladimir
27.12.2017
11:20:07
@Premoder об этом можно думать в тот момент когда у тебя будут такие нагрузки что Го рантайму станет плохо и ты в топе увидишь например гошный ссл

Vany
27.12.2017
11:20:09
А, если есть "основной" - всё надо сделать на нём

Sergey
27.12.2017
11:20:12
Статику пусть отдаёт другой сервис. Да и скорее всего основной нжинкс уже разрулил запрос на наш сервис.
микростатику типа js/css вполне разумно запихивать прям в бинарь, имхо тупо из соображений деплоя. хотя тоже холивар. и сам так не делаю, лол.

Vladimir
27.12.2017
11:20:18
до тех пор это преждевременная оптимизация

и за нее надо кое что отрезать

Страница 1099 из 1674