@proGO

Страница 1265 из 1674
Александр
03.03.2018
18:53:31
вообще то 100 миллионов ?

Ruslan
03.03.2018
18:53:48
Это что O(n^m) алгоритм?

Daniel
03.03.2018
18:53:58
это вообще не алгоритм

Google
Александр
03.03.2018
18:54:22
это не алгоритм, но Daniel пытается сказать что с гоурутины не тормозят ага

Daniel
03.03.2018
18:54:34
горутины не тормозят

но я бы на этом закончил

Александр
03.03.2018
18:54:56
а можно я распечатаю, эту несомненно выдающуюся цитату? ?

Ruslan
03.03.2018
18:55:18
Попробуйте O(n^m) - в одном потоке запустить. Мне кажется это плохая идея на 100 миллионов элементов

Daniel
03.03.2018
18:55:23
а можно я распечатаю, эту несомненно выдающуюся цитату? ?
разговор продолжим, когда ты нам код покажешь, который тормозит

Александр
03.03.2018
18:55:31
обязательно

KrivdaAllStars
03.03.2018
18:55:43
это вообще не алгоритм
Что сейчас нужно читать для разработки на го с точки зрения перфоманса( это не троллинг) , просто как я слушал что допустим что то низолатентное требует к примеру использование не стандартного хттп сервиса и так далее

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

Daniel
03.03.2018
18:56:44
отчет профайлера надо читать

у меня все мое упиралось в json marshaler, а не в http

Zver
03.03.2018
19:25:57
Ну вообще-то Александр Попов прав. Если Гоурутины съедают монопольно все реальные потоки в приложении, то те Гоурутины, которым не досталось потока, будут постоянно висеть в ожидании. Что и получается у него. Так как многозадачность кооперативная. Поэтому для задач, замкнутых в самих себе и молотящих данные либо нужно ограничивать количество этих задач, либо временами выполнять операции, которые будут передавать управления на другие Гоурутины, к примеру ту же запись в каналы.

Google
Daniel
03.03.2018
19:30:44
но я же говорю - давайте глянем код. написать что-то, что не отдает тики шедулеру, не так и просто

Zver
03.03.2018
19:30:51
запись? https://golang.org/pkg/runtime/#Gosched
Ну или это. Честно сказать не знал о ее существовании.

Daniel
03.03.2018
19:32:06
а я вот знал. как выдумаете, почему?

Zver
03.03.2018
19:35:05
но я же говорю - давайте глянем код. написать что-то, что не отдает тики шедулеру, не так и просто
Ну вообще-то не сложно. Запустил несколько гоурутин с бесконечными циклами. Весь код далее уже не выполняется и программа не завершается.

Daniel
03.03.2018
19:35:21
коллега, вы пробовали?

Daniel
03.03.2018
19:37:43
коллеги, я повторюсь - вы пробовали?

Zver
03.03.2018
19:37:45
а я вот знал. как выдумаете, почему?
Потому что вы с этим работаете.

Я попробовал.

Daniel
03.03.2018
19:38:04
и?

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

Aleksandr
03.03.2018
19:45:38
попробуйте написать программу, которая реально что-то делает, и при этом не отдает управление шедулеру. я справился ровно один раз.
Перечитай. Я и говорю, что при таком раскладе горутины были бы нерабочим концептом, как утверждает zver

Zver
03.03.2018
20:08:45
Как раз для проверки и написал. Гоурутины съели все. Не завершалась программа, если бесконечные циклы ставить. Работают только те рутины, которым достались потоки, остальные колом стоят.

Соответственно решение либо ограничивать количество тяжелых рутин, либо в ручную шедулить.

Daniel
03.03.2018
20:26:06
а что эта программа делает? полезного, в смысле

С гоу ту?
не поможет

Anonchik
03.03.2018
21:27:19
Прошу прощения, но мб новичкам будет полезно https://t.me/studygo

Alexander
03.03.2018
22:59:17
Рекурсивный многопоточный парсер? Да ну такое извращение...

Я правильно понял?

Google
Alexander
03.03.2018
22:59:55
Внутри которого горутины лагают

Если да, то зачем?

Зачем внутри горутины запускать при обходе дерева? Это же парсер...

Marlik
04.03.2018
02:05:08
Хэлп, чото туплю, панику вылавливаю. https://play.golang.org/p/orv0URSXe3_D

Zver
04.03.2018
05:03:00
а что эта программа делает? полезного, в смысле
Можно и полезную нагрузку впихнуть. Но просто суть в том , что это можно без проблем получить, если горутина лопатит какие-то данные и не взаимодействует с окружением и не обязательно они должны быть долго выполняющимися. В большинстве задач такого не вылезет. Ну в основном проблема, что много не знает, что такое конкурентная много задачность и думают, что горутины это полноценные потоки.

Daniel
04.03.2018
05:41:32
Вот это ваше «без проблем» действительности не соответствует

Marlik
04.03.2018
05:43:12
Запустил. Нет паники.
На этом примере да, её нет. Но у меня почему то, паника при запуске, ну а ошибок видимых нет? У меня в редакторе тишина, линтеры молчат, хз, щас буду каждую строчку проверять принтом.

tsov
04.03.2018
06:52:35
это не вопрос веры. просто кое-кто говорит ерунду
да просто он так код написал. я вот на любом языке могу лагающий код сделать

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

Foxcool
04.03.2018
07:55:09
я тож упоминал про пул воркеров и входящие и исходящие каналы

Ivan
04.03.2018
08:22:26
Коллеги, задам, возможно, холиварный вопрос, который тут был и не раз, но быстрый поиск не дал результатов. Есть задача - restful api. Стою на распутье - использовать только возможности стандартной библиотеки или же взять фреймворк gin для упрощения задачи. У кого был реальный опыт в продакшне с этим фреймворком? Есть ли затыки? Предполагаемый средний RPS - 15k и выше. Переезжаем с php

Ivan
04.03.2018
08:23:06
Или же без фреймворка?

Ivan
04.03.2018
08:27:43
А жирные запросы/ответы есть?
В каком плане жирные? Ресурсоемкие? Ресайз картинок, декодирование видео(но мало), запросы к БД большие(бд - 300гб в постгресе, таблицы до 1ккк)

Ivan
04.03.2018
08:40:11
Вконтактик? ))
Смешно) Но даже рядом нет

Бэкенд для группы проектов разной направленности

Ivan
04.03.2018
09:33:46
в плане размера в байтах )
От 1кб до 1мб (ответ для 1с в json-е)

Google
Dmitriy
04.03.2018
10:06:46
Подслушаю тоже ;)

Alexandr
04.03.2018
10:06:59
Ребят, у всех в Goland при скроллинге файла идет подтормаживание интерфейса?

Dmitriy
04.03.2018
10:07:17
Нет

Alexandr
04.03.2018
10:08:20
Может как то настройки goland можно подкрутить?

Ivan
04.03.2018
10:08:51
А взять надо swagger
Сижу как раз проникаюсь им :)

Admin
ERROR: S client not available

Ivan
04.03.2018
10:09:51
Ребят, у всех в Goland при скроллинге файла идет подтормаживание интерфейса?
Проверил на файле в 700 строк - норма. Последний eap, ubuntu 17.10

Alexandr
04.03.2018
10:10:24
я сижу на маке 15 2015, разрешение максимальное

вот непонятно, из-за чего тормоза, при этом сама система работает хорошо

Daniel
04.03.2018
10:15:07
Обычно эти тормоза - индексация. В смысле - формирование ссылок go to implementation

Alexandr
04.03.2018
10:15:40
Ivan
04.03.2018
10:19:17
Alexandr
04.03.2018
10:19:49
invalidate cache пробовал?
ну это по идее тоже самое что полностью закрыть приложени и открыть?

Alexandr
04.03.2018
10:23:00
Нет конечно
попробовал, чуть получше стало

но если объективно сравнивать, то скроллинг того же кода в sublime например намного плавнее чем Goland

Daniel
04.03.2018
10:24:00
А как это сравнить объективно?

Записать кино, и посмотреть, как меняется картинка?

Alexandr
04.03.2018
10:26:07
А как это сравнить объективно?
поскроллить в sublime и тоже самое в goland

Google
Daniel
04.03.2018
10:26:58
Это субъективно

Wheaten
04.03.2018
10:42:46
Это субъективно
то есть если нельзя объективно измерить лаги интерфейса, значит их нет?)

Alexandr
04.03.2018
10:46:20
Wheaten
04.03.2018
10:46:57
а с каких пор лаги интерфейса подвержены метрике?

напомнило недавнюю статью на хабре

с человеком, ушедшим из гугла

похожая логика https://habrahabr.ru/post/350374/

Антон
04.03.2018
10:48:50
Я думаю Дэниэл хотел подчеркнуть разницу между обьективным и субьективным

Wheaten
04.03.2018
10:52:17
я думаю он просто обладатель гигантского чсв и такого же эго, которое он старается пихнуть в абсолютно любой разговор

даже в такой элементарный вопрос, как "лагает ли у кого-нибудь IDEname при скролинге?"

Антон
04.03.2018
10:52:56
Не, ну субьективно у меня такой же голанд и ничего не тормозит))

Wheaten
04.03.2018
10:53:41
ну в этом и суть, человек хотел узнать, проблема на его стороне или голанд сам по себе тяжелый

Roman
04.03.2018
10:57:29
От 1кб до 1мб (ответ для 1с в json-е)
Можно подумать о чем-то на fasthttp

А взять надо swagger
А чем он поможет?

Ivan
04.03.2018
10:57:51
Можно подумать о чем-то на fasthttp
gin - самое нормальное на мой взгляд на нем

Ivan
04.03.2018
10:59:05
graphql еще страшновато брать как-то... хоть на фронте и реакт и там с этим проблем нету

Daniel
04.03.2018
11:08:19
А чем он поможет?
Это тема для доклада или статьи :)

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