@gogolang

Страница 474 из 1630
Mush
23.08.2017
07:42:59
В отрыве от реальности что толку их смотреть? Или вы уже выяснили, что 50% времени программа сериализирует json и пора это оптимизировать?
Ну скажем так: 1 входящее сообщение в системе проходит 3-4 енкода/декода в жсон. Входящий поток 1 тыс сообщений в секунду

Ilia
23.08.2017
07:51:14
не подскажете чат, где можно опубликовать вакансию для go ?

Daniel
23.08.2017
07:52:18
https://t.me/golangjob

Ilia
23.08.2017
07:54:41
спасибо

Google
Vlad
23.08.2017
08:25:24
Ключом мэпы не может быть слайс. Это из-за того, что это всего лишь поинтер?..

Daniel
23.08.2017
08:29:04
поинтер может быть ключом

Vlad
23.08.2017
08:29:25
Тогда в чем беда?..

Daniel
23.08.2017
08:29:28
это из-за того, что для слайсов не определена операция ==

а не определена она из-за того, что реальные значения в слайсе могут быть изменены так, что слайс об этом не узнает

массив, кстати, может быть ключом

потому, что с него можно снять копию, которая будет неизменяемая

Vlad
23.08.2017
08:31:35
Это да, это да..

Я просто читаю Go in action перед собесом.

И понимаю, что зря не готовился

Такое..

Konstantin
23.08.2017
08:35:53
Сейчас работадатель это прочтет))

Diasko
23.08.2017
08:37:42
скиньте нормальный гениратор структур для постгреса

Google
Konstantin
23.08.2017
08:42:25
скиньте нормальный гениратор структур для постгреса
хотелось бы на ненормальные взгялнуть) для чего это вообще?

Vital
23.08.2017
09:17:58
возможно ещё кто-нибудь пользовался либой которая умеет складывать деревья в формате материалайзед пас или хотя бы нестед сет в постгрес или монгу?

или через gorm gorp

Vital
23.08.2017
09:19:29
)))

чатик то гошный

Mush
23.08.2017
09:19:58
ну и чего, структура бд и логика одна.

Vital
23.08.2017
09:19:59
для го есть готовое или только велосипедить?

Mush
23.08.2017
09:21:07
гугление не находит готового

ну значит есть шанс написать и получить звездочку )

Vital
23.08.2017
09:24:43
))

Mush
23.08.2017
10:37:30
https://github.com/mailru/easyjson
пропустил ответ. он же не может структуры?

Aleksandr
23.08.2017
10:40:31
пропустил ответ. он же не может структуры?
первое предложение в ридми: Package easyjson provides a fast and easy way to marshal/unmarshal Go structs to/from JSON without the use of reflection.

Илья
23.08.2017
10:43:20
а кто не может структуры?

Aleksandr
23.08.2017
10:44:30
и зачем в контексте go оно нужно

Mush
23.08.2017
10:52:57
там какие-то проксиобъекты создаются в них маршал анмаршал

а структуру как-то вроде самому надо делать

Илья
23.08.2017
10:53:39
в примерах использования

Google
Mush
23.08.2017
10:53:51
нет

маршал анмаршал структуры где?

Aleksandr
23.08.2017
10:54:24
generate marshaler/unmarshalers for all structs in a file

Илья
23.08.2017
10:54:33
расшифруй, пожалуйста, маршал/анмаршал методы генерятся на основне структуры

Aleksandr
23.08.2017
10:54:39
The above will generate <file>_easyjson.go containing the appropriate marshaler and unmarshaler funcs for all structs contained in <file>.go.

Mush
23.08.2017
10:54:52
спасибо

Leonid
23.08.2017
11:25:29
https://dave.cheney.net/2017/08/23/im-talking-about-go-at-devfest-2017-novosibirsk

Aleksandr
23.08.2017
13:49:31
Илья
23.08.2017
13:49:43
какое-то метапрограммирование
так generate и есть попытка метапрограммирование на пользователей спихнуть с компилятора :(

Mike
23.08.2017
13:52:52
обычная генерация
а что есть метапрограммирование как не код, генерящий код перед компиляцией?

Илья
23.08.2017
13:59:38
код, генерящий код в рантайме!
это вам в динамические языки

Oleg
23.08.2017
13:59:55
Илья
23.08.2017
13:59:55
код, генерящий код в рантайме!
хотя с reflect и не такое можно сделать

Vasily Romanov
23.08.2017
14:05:26
а Protocol Buffers не пробовал?
Это другой формат сериализации вообще

Konstantin
23.08.2017
14:07:28
Vasily Romanov
23.08.2017
14:08:41
Вообще да, но если бинарные данные слать во фронтент - некоторые могут чокнуться

Google
Илья
23.08.2017
14:08:59
если писать на диск, для восстановления состояния, то норм

Konstantin
23.08.2017
14:10:31
Вообще да, но если бинарные данные слать во фронтент - некоторые могут чокнуться
угу ну я навреное больше про микросервисы. тем более там обычно гоняют одни и те же структуры, для сериализации которых рефлексия будет дорого стоить

Vasily Romanov
23.08.2017
14:10:49
Микросервисы - да, милое дело

Вместе с gRPC сразу

Но вообще штатный сериализатор протобафа - ан рефлексии :)

gogoprotobuf уже занимается кодогенерацией по типу easyjson

Admin
ERROR: S client not available

Konstantin
23.08.2017
14:12:36
ну да тут уже google VS mail.ru ))

Vital
23.08.2017
14:13:46
а бывают ли грабли при использовании не гуглового сериализатора вместе с grpc?

Vasily Romanov
23.08.2017
14:15:02
Мы используем Пока полёт стабильный

Vasily Romanov
23.08.2017
14:16:24
Нет

Илья
23.08.2017
14:17:51
Mail.ru

Yegor
23.08.2017
15:01:24
Микросервисы на grpc это зло

Дебажить очень тяжело

А плюсы минимальны

Илья
23.08.2017
15:04:52
это пока у вас нагрузка 2 калеки :)

Vasily Romanov
23.08.2017
15:04:53
Почему тяжело ?

Vital
23.08.2017
15:05:43
где-то на хабре было видео с конфы. там толи из яндекса толи из баду рассказывали как они это всё в json конвертили чтоб дебажить

сдругой стороны если юзать gomicro - то он помогает генерить всякий бойлерплейт. хоть и сомнительно выглядит - но работы немного меньше

Google
Vasily Romanov
23.08.2017
15:07:21
там штатными средствами можно поставить json в качестве формата передачи

или msgpack, или xml

Илья
23.08.2017
15:08:00
https://improbable.io/games/blog/grpc-web-moving-past-restjson-towards-type-safe-web-apis#hn

Vital
23.08.2017
15:09:31
там штатными средствами можно поставить json в качестве формата передачи
описывать мессаги надо будет после этого в протобафе или в джейсоне

Vasily Romanov
23.08.2017
15:10:02
мессаги описываюстя в промежуточном IDL, на основе которого уже генерится всяко-разно

protoc генерит например обычную гошную структуру, у которой в тегах есть инфа для маршалинга протобафа. и json, кстати, тоже

там же не только мессаги генерятся, там ещё и интерфейс для сервиса, и вся клитентская обвязка

Vital
23.08.2017
15:37:11
@rvasily Можете посоветовать что лучше почитать про IDL и как с этим жить?

это он Interface Definition Language?

Vasily Romanov
23.08.2017
15:40:27
ага

ничего конкретно по этой теме посоветовать не могу, но тут более-мнее всё прсото

https://github.com/grpc/grpc-go/blob/master/examples/route_guide/routeguide/route_guide.proto

вот proto-файл это как раз idl на нём мы описываем наши структуры и сервисы

protoc берёт это и для разных языков генерирует код ключевая фишка - для разных языков

Vital
23.08.2017
15:42:21
ааа. т.е это такое общее название для протобафта, трифта и подобных?

Vasily Romanov
23.08.2017
15:42:36
ага

Ivan
23.08.2017
16:00:53
А вот книжки с амазона покупать норм щас, таможня не хочет ничего что б там заполнял?

Чего то я читал на хабре про боль с страдания но подзабыл чем кончилось

Страница 474 из 1630