
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

Lucky
26.12.2017
10:49:02

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

Alexey
26.12.2017
10:55:29

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

Oleh
26.12.2017
10:59:28
httprouter

Lucky
26.12.2017
11:00:02

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

Google

Phil
26.12.2017
11:00:52

Alexey
26.12.2017
11:01:29

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

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

Nick
26.12.2017
11:03:25

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

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

Arch
26.12.2017
11:05:16

Vadim
26.12.2017
11:11:25

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 контейнеры и начинаете перекидывать запросы?

Aleksandr
26.12.2017
11:45:58

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

Aleksandr
26.12.2017
11:54:11
ну вообще тема достаточно разнообразная, единого подхода не найдешь, зависит от конкретной задачи
но можно и докер-контейнерами, почему бы и нет

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

Jabbor
26.12.2017
12:15:32

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, знает кто ?

Daniel
27.12.2017
09:53:20

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

Daniel
27.12.2017
09:54:30

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

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

Daniel
27.12.2017
09:55:34

Google

Anatoliy
27.12.2017
09:55:40

Nick
27.12.2017
09:56:37

Admin
ERROR: S client not available

Alexey
27.12.2017
10:57:37

Nick
27.12.2017
10:58:07

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

xPushkin
27.12.2017
11:03:48

Marlik
27.12.2017
11:04:52

Alexey
27.12.2017
11:05:02

xPushkin
27.12.2017
11:07:18

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 надо раздавать когда это прям узкое место, иначе стоит делать где проще (а проще таки в коде, на Го это также довольно мало кода)


Vany
27.12.2017
11:17:20

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

Vany
27.12.2017
11:18:11

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 – не выход: увеличивает потребление сокетов втрое
• А сокеты – они дорогие

xPushkin
27.12.2017
11:19:42

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

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

Sergey
27.12.2017
11:20:12

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

xPushkin
27.12.2017
11:20:34