@proGO

Страница 1442 из 1674
1nt3rrupt3r
15.05.2018
07:27:59
Блокировкой файла например

или подключением по TCP

Alexey
15.05.2018
07:28:30
Блокировкой файла например
Ну файловую нигде не остановить, даже kill -9 не убьёт

1nt3rrupt3r
15.05.2018
07:28:32
Или ожиданием данных по TCP

Google
1nt3rrupt3r
15.05.2018
07:29:26
Ну файловую нигде не остановить, даже kill -9 не убьёт
Ну, тогда select же на каждом шагу ставить не комильфо))

Meow
15.05.2018
07:29:58
Или ожиданием данных по TCP
Вот это прям бесит

Alexey
15.05.2018
07:30:36
Вот это прям бесит
Прямо так часто такая проблема?)

1nt3rrupt3r
15.05.2018
07:30:44
Вот это прям бесит
тут поможет использование TCP на уровне L3 и pipelining :D

Meow
15.05.2018
07:30:50
Мб не именно это, а случаи где работаешь с сетью и нет таймаута

Kirill
15.05.2018
07:31:23
Зато хрен ты остановишь блокированные горутины))
контексты разве не для этого прикрутили?

Александр
15.05.2018
07:44:21
просто любят этот вопрос в различнх тестах

"чем отличается os thread от гоурутины"

и дальше кроме как "гоурутины надстройка над os thread" я ничего не смог ? Поэтому и полез в доку

Olzhas
15.05.2018
07:52:17
горутины - это асинхронные функции

Google
Olzhas
15.05.2018
07:52:43
точнее, функции, которые выполняются параллельно

есть процессы - их количество устанавливаются переменной GOMAXPROCS, вроде с версии 1.8 их количество по умолчанию равно количеству доступных ядер процессора

в одном процессе одновременно может выполняться одна горутина

менеджер разруливает горутины между свободными процессами, по принципу first in - first out

https://habr.com/post/141853/ о, вот для пхпшников объяснение

Vasily Romanov
15.05.2018
08:01:23
в целом, не по го

но доклад классный, очень рекомендую

1nt3rrupt3r
15.05.2018
08:21:14
контексты разве не для этого прикрутили?
не шарю что это и как с этим работать))

Artem
15.05.2018
08:30:35
Devios Cr&.
15.05.2018
09:05:38
Хелп гайз



Kirill
15.05.2018
09:07:36
и что оно не гуглится?

Dmitri
15.05.2018
09:10:21
Или ожиданием данных по TCP
контекст.ВизТаймаут()

Alexey
15.05.2018
09:11:58
кошачий чат какой-то

Dmitri
15.05.2018
09:11:59
горутины - это асинхронные функции
вот это прямо в заблуждение вводит неофитов... асинхронная и параллельная модели - достаточно разные вещи

Dmitri
15.05.2018
09:12:41
он не разблочит горутину
тот, который с таймаутом, вполне разблочит

Никита
15.05.2018
09:15:20
Так разве scheduler не переключает контекст в треде с одной горутины на другую, пока дожидается ответа от ее выполнения?

Meow
15.05.2018
10:01:13
О, ейчар

Google
hh
15.05.2018
10:01:19
Подскажите плз, а ошибка при параллельном чтении с мапы будет? Или только при параллельной записи и чтении

Meow
15.05.2018
10:01:22
Возьми меня на работу

Kirill
15.05.2018
10:01:34
Ахахахахха)))

Это провал)

Meow
15.05.2018
10:01:45
:(

Daniel
15.05.2018
10:02:49
Так разве scheduler не переключает контекст в треде с одной горутины на другую, пока дожидается ответа от ее выполнения?
тред может быть в трех состояниях: исполняет горутину (кусок ее, до следующей точки возврата управления шедулеру), свободна дня исполнения горутины, заблокирована в сисколе. прервать ее в третьем состоянии невозможно. в первом, впрочем, тоже

hh
15.05.2018
10:03:29
не будет, только при записи
Спс. А если запись синхронная, но чтение асинхрон, будет проблема?

Alexey
15.05.2018
10:03:53
Спс. А если запись синхронная, но чтение асинхрон, будет проблема?
не знаю, что такое запись синхронная, и асинхронное чтение)

Daniel
15.05.2018
10:04:06
что такое синхрон/асинхрон в этом контексте?

Daniel
15.05.2018
10:04:35
без горутин и проблемы не будет, очевидно же

Daniel
15.05.2018
10:04:44
с горутинами - будет обязательно

почитайте по RWMutex

Danil
15.05.2018
10:05:29
Господа, такой вопрос: каким необходимым минимумом должен обладать Джуниор?

hh
15.05.2018
10:05:37
А если я через горутину читаю, но записываю без нее, будет проблема?

Alexey
15.05.2018
10:06:10
Основной поток приложения - это тоже горутина по сути:)

Daniel
15.05.2018
10:06:30
будет, конечно. не будет ее в двух случаях: все операции с мапой остаются в одной горутине и операции с мапой прикрыты мутексом

hh
15.05.2018
10:07:23
Понял, спс

Google
Artem
15.05.2018
10:08:49
Daniel
15.05.2018
10:09:37
джун, чтобы я его взял, должен уметь читать, писать, задавать вопросы и понимать ответы.

Kirill
15.05.2018
10:09:48
Сделал сейчас простой хттп сервер, принимает джсон сериализует, десиарилизует и отдает его же, больше ничего не делает. Время запроса от 30 до 50 милисекунд. Я мож че не так сделал? На ноде это занимает 5-10 милисекунд

Artem
15.05.2018
10:10:33
Сама серилизация дорогая

Admin
ERROR: S client not available

Artem
15.05.2018
10:11:08
был где то генератор от маил ру, где без рефлексии серилизация, там должно быть быстрее

Daniel
15.05.2018
10:11:25
easyjson

Harotobira
15.05.2018
10:11:29
https://github.com/mailru/easyjson

Kirill
15.05.2018
10:12:00
Спасибо, потраю

Daniel
15.05.2018
10:12:00
на 20% примерно быстрее получалось в моем случае

Semen
15.05.2018
10:19:15
Привет! Я новичок в го,интересует следующие, собираюсь написать приложение, которое будет активно делать запросы к определенному ресурсу через прокси различного типа и возвращать ответ пользователю, в среднем 1000 в минуту. Насколько го подходит для этой цели

Daniel
15.05.2018
10:19:44
отлично подходит

Semen
15.05.2018
10:21:26
В этом чате можно задавать вопросы нубского уровня,если Гугл не понятно отвечает, или тут про ребята?

Daniel
15.05.2018
10:21:49
можно

Artem
15.05.2018
10:22:09
Получается, что тред держит горутину до тех пор пока эта горутина не выполнит свою задачу?
есть точки переключения, в которых управление отдается другой горутине, чтение из канала например

Никита
15.05.2018
10:22:53
В принципе, как понять, какие это точки?

Google
Artem
15.05.2018
10:23:48
статьи почитать/выступления

Daniel
15.05.2018
10:24:13
Получается, что тред держит горутину до тех пор пока эта горутина не выполнит свою задачу?
не получается. с чего вы решили, что тред держит горутину? реально все наоборот - горутина держит тред до точки переключения. точка переключения - это операция ввода-вывода, вызов не-inline функции, вызов runtime.Gosched()

В случае ожидания ответа от БД, контекст переключается же?
а вот тут интересно. да, переключается. тут ввод-вывод фактически уходит в event loop, горутина им не занята. и пока соответствующее событие не случится - горутина управления не получает, и процессор не занимает

Никита
15.05.2018
10:25:55
Все, понял, спасибо

Kirill
15.05.2018
13:03:37
Товарищи гоферы, а сейчас еше есть большой смысл использовать fasthttp , или простой net/http со своим http 2.0 уже его лучше?

Daniel
15.05.2018
13:03:56
лучше в чем?

Kirill
15.05.2018
13:04:12
В скорости

Daniel
15.05.2018
13:04:34
вообще, имеет смысл начинать со стандартной библиотеки, а улучшать начинать после того, как выяснится. что не хватает производительности

а не наоборот

The
15.05.2018
13:04:54
Я для себя решил юзать net/http. Если нужно больше мощности, добавляю ноду и балансировщик спереди.

Как-то тестил я их, и не смог выжать хоть сколько-то значительное ускорение. Но не исключаю свою рукожопость.

Daniel
15.05.2018
13:08:09
у каждого пакета есть своя область применения, в которой он лучше стандартного. обычно - довольно узкая

The
15.05.2018
13:09:36
да, согласен, не совсем мой кейс. у меня там и шаблонизатор, и БД.

Crypt
15.05.2018
14:44:31
Писать функцию приводящую разношёрстный map[string]interface{} (базовые типы) к map[string]string совсем зашквар? Может кто видал что-то готовое?

Alexey
15.05.2018
14:47:28
А чо там писать, y[key1] = fmt.Sprintf("%v", x[key1])

Daniel
15.05.2018
14:47:31
почему зашквар?

Crypt
15.05.2018
14:50:57
А чо там писать, y[key1] = fmt.Sprintf("%v", x[key1])
Спасибо, а то я уже собрался рефлексию подключать

почему зашквар?
Не знаю, мало ли так не по канонам

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