@gogolang

Страница 1305 из 1630
Daniel
22.08.2018
14:59:21
но ты не томи :)

как, по-твоему, можно еще паснуть файлхендлер другому процессу?

номер-то у хендлера уникальный только в рамках одного процесса

Kirill
22.08.2018
15:00:44
я этого кода не видел, и не увижу.
так-то тот код может вообще работать чуть ли не поверх libancillary, так что недоступность кода здесь — не так и хорошо

Google
Kirill
22.08.2018
15:05:04
просто "без sendmsg" чтобы отправить нужно "всего лишь" заменить пару сотен сяшного кода, которым этот sendmsg обрабатывается

Pawel
22.08.2018
15:05:29
я сначала на atom перешел, потом на вскод
с джетбрейнз кровь из глаз, а с атома не блеванул?

Daniel
22.08.2018
15:07:05
Stanislav
22.08.2018
15:14:05
просто "без sendmsg" чтобы отправить нужно "всего лишь" заменить пару сотен сяшного кода, которым этот sendmsg обрабатывается
в ядре, сейчас оно поддерживает только два способа шарить дескрипторы между процессами - sendmsg через unix domain socket и через fork к child'у

Kirill
22.08.2018
15:14:10
дело же не в sendmsg, а в механизме передачи дескриптора из процесса в процесс.
тогда я что-то не понимаю, что у тебя, собственно, сейчас не работает

в ядре, сейчас оно поддерживает только два способа шарить дескрипторы между процессами - sendmsg через unix domain socket и через fork к child'у
я-то знаю, что в ядре. я пытаюсь понять, какую именно проблему Нил пытается решить. сначала я подумал, что проблема в самом сокете.

Dmitry
22.08.2018
15:16:53
проблема шаринга сетевого сокета между процессами видно. насколько я понял

Daniel
22.08.2018
15:18:00
тогда я что-то не понимаю, что у тебя, собственно, сейчас не работает
у меня, после недели разнообразного секса, наконец-то все работает :) а не работало у меня спонтанное закрытие listen-сокета. которое вызывалось закрытием fd

Stanislav
22.08.2018
15:18:01
проблема в том что при отправке из-за каких-то проблем либо при работе с сырыми дескрипторами в го, либо в рантайме, либо даже в ядре (маловероятно) с какой-то вероятностью в fd оказывается совершенно левый номер другого сокета

Kirill
22.08.2018
15:18:03
сама проблема в чем заключается?

Google
Kirill
22.08.2018
15:19:11
как-то вы синхронно ответили дополняющие друг друга вещи. вы из одной конторы, что ли? :D

Stanislav
22.08.2018
15:19:32
я подозреваю потому что закрывали fd, оставляя живым os.File, который в finalizer ещё творит магии с поллером

есть немного

Kirill
22.08.2018
15:22:04
ну — вы, конечно, можете избавиться от finalizer'а :D

ну а вообще — как решили-то?

Stanislav
22.08.2018
15:22:54
так это не поможет избавиться от fd уже зареганного в поллере. можно конечно слинковаться с рантайм-функциями поллера и разрегать его там, но зачем

Stanislav
22.08.2018
15:25:16
это к данилу, у меня только непроверенные предположения из вчерашнего обсуждения

Kirill
22.08.2018
15:26:33
@onokonem

Aleksandr
22.08.2018
17:49:34
а у нас один пакет, генерящий кастомные анмаршалеры json - тот, что мейл.ру?

Daniel
22.08.2018
17:52:32
ну а вообще — как решили-то?
так я же написал - перестали закрывать fd, начали закрывать file

если закрывать fd, пусть даже взятый из файла - проблема есть

если закрывать conn - проблемы нет

Aleksandr
22.08.2018
18:49:42
easyjson от mail ru, но вопрос не понятен
есть ли еще аналоги, кроме него и найденного ffjson?

Michael
22.08.2018
18:54:02
есть ли еще аналоги, кроме него и найденного ffjson?
https://github.com/avelino/awesome-go там парочка ещё есть, но честно говоря кроме easyjson ничего не использовал, узнал о нём из курса Василия Романова, остался доволен

Aleksandr
22.08.2018
18:55:15
https://github.com/avelino/awesome-go там парочка ещё есть, но честно говоря кроме easyjson ничего не использовал, узнал о нём из курса Василия Романова, остался доволен
ну я прям что-то по странице прошелся ctrl+f и не нашел даже выше упомянутых двух пакетов и ни одного другого. УТочню, пакетов, генерящих кастомные анмарашллеры без рефлексии

Michael
22.08.2018
18:57:59
https://github.com/ugorji/go/tree/master/codec#readme есть кодогенерация

и отакой с того же списка https://github.com/json-iterator/go и бенч марк результаты есть

Aleksandr
22.08.2018
19:03:51
и отакой с того же списка https://github.com/json-iterator/go и бенч марк результаты есть
этот вроде просто оптимизированный под капотом. без кодогенерации. А первый да, спасибо, гляну

Google
Aleksandr
22.08.2018
19:15:29
@rvasily будет easyjson поддерживать go modules, а точнее работать без требования gopath?

Aleksandr
22.08.2018
19:16:00
сроки есть?

Vasily Romanov
22.08.2018
19:16:13
не обещаю что в ближайшее время, но к релизу 3-й курса части было бы круто запилить

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

Aleksandr
22.08.2018
19:17:19
второе

Vasily Romanov
22.08.2018
19:17:26
надо смотреть, у нас там всё на рефлекии сделано в данный момент

я на будущей неделе постараюсь добраться туда, оценить, сложно-ли будет поддержать работу в модулях без перепиливания самого кодогенератора

но вообще PR рады :)

Denis
22.08.2018
19:52:02
Добрый день всем. Скажите пожалуйста, кто нибудь сталкивался с внедрением WebView в Go? Есть биндинг под CEF - https://github.com/cztomczak/cef2go, но он походу заброшен и имеет весьма скромный функционал (не хватает биндинга методов в JS) Можете посоветовать лучшую альтернативу?

Fastumkruk ✅
22.08.2018
20:06:41
Можно как либо скринить страницу из go?

Лемур
22.08.2018
20:08:02
Fastumkruk ✅
22.08.2018
20:08:10
Лемур
22.08.2018
20:08:56
Да
Есть phantomjs для этого. Есть хедлес хромиум Есть qt байндинги к хромиуму

Есть селениум

Phantomjs самое простое

Впиливать хромиум внутрь бинарника на го я бы не стал

Fastumkruk ✅
22.08.2018
20:12:52
У меня серв на убунту без гуя. Возможно такое реализовать?

Fastumkruk ✅
22.08.2018
20:14:21
Google
Slava
22.08.2018
20:56:53
фантомжс депрекейтед вроде как

и не обновлялся уже давно

Лемур
22.08.2018
20:58:36
Тем не менее, с задачей сделать скриншот страницы сайта он справлялся всегда отлично.

Admin
ERROR: S client not available

Лемур
22.08.2018
21:01:05
Спасибо за замечание. Не знал.

MVP
22.08.2018
21:06:18
Спасибо за замечание. Не знал.
https://github.com/GoogleChrome/puppeteer

Лемур
22.08.2018
21:06:44
https://github.com/GoogleChrome/puppeteer
А вот и хедлес хром

Aleksandr
22.08.2018
21:26:59
А вот и хедлес хром
биндинги ноды к хрому. под го свои

но вообще PR рады :)
готово, принимайте)

Vasily Romanov
23.08.2018
10:56:46
готово, принимайте)
посмотрю сегодня, спасибо

Ivan
23.08.2018
11:26:37
Коллеги, такой вопрос. А есть нативные либы в гошке, которые умеют с berkley db работать? Я только сигошные биндинги нашел.

может кто сталкивался?

Zarif
23.08.2018
11:37:44
Коллеги, такой вопрос. А есть нативные либы в гошке, которые умеют с berkley db работать? Я только сигошные биндинги нашел.
по своему опыту могу сказать, что годные для продакшна обычно как раз биндинги сишных драйверов для бд. нативные чаще всего бывают не лучше, а то и хуже

Ivan
23.08.2018
11:39:56
Не хочется иметь оверхед на cgo

Olzhas
23.08.2018
11:40:25
Не хочется иметь оверхед на cgo
либо шашечки, либо ехать

Никита
23.08.2018
11:47:28


То что у всех остальных вызовов указано 0 мс - они реально занимают времени меньше миллисекунды? Или как?

Roman
23.08.2018
11:48:54
а что за код?

Никита
23.08.2018
11:49:48
а что за код?
Ну код показать не могу. Это бэк. Как я понимаю cgocall делает драйвер постгреса

Но меня интересует то, реально ли отражается время выполнения остального кода, так как 0 миллисекунд - как то подозрительно, учитывая то, что в тех функциях делаются Select запросы к базе, и хоть какой то процент времени занимать они должны

Google
Denys
23.08.2018
11:54:00
Хочу сделать фасад UserAgentParser с методами Os() string, Browser() string, DeviceType() string, как в этом случае назвать интерфейс?

Хочу скрыть работу внешних библиотек в этом фасаде, но проблема с неймингом, ибо по соглашениям, интерфейсы должны оканчиваться на -er, тогда как структуру назвать ?

Denys
23.08.2018
12:07:45
интерфейс эскпортным сделать, а структуру нет?

а если затем понадобиться расшарить фасад?

Maxim
23.08.2018
12:22:27
а если затем понадобиться расшарить фасад?
А в чем проблема его расширить? Делаешь конструктор NewUserAgentParser и возвращаешь из него свой публичный интерфейс. Вся имплементация в приватной структуре. Расширяй сколько душе угодно)

Aleksandr
23.08.2018
12:23:59


type_easyjson показывается во втором уровне.

Kirill
23.08.2018
12:24:39
?

Aleksandr
23.08.2018
12:25:26
?
на vscode переходить?)

Kirill
23.08.2018
12:25:38

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