@proRuby

Страница 578 из 1594
v
01.06.2017
09:28:44
которые в руби уже кончились

>Их применение крайне примитивное и крайне ограниченное. ну что за пипец?

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

а без него нет жизни

Google
Alan
01.06.2017
09:40:08
Выполнение кода параллелится как раз таки

No
01.06.2017
09:40:50
/stat@combot

Combot
01.06.2017
09:40:50
combot.org/chat/-1001032697885

Alan
01.06.2017
09:41:43
Другой вопрос что в нутрях, не но пофиг ли, Konstantin вы же не профессионал в параллельных вычислениях и многопоточности? Или профессионал?

Konstantin
01.06.2017
09:51:29
Другой вопрос что в нутрях, не но пофиг ли, Konstantin вы же не профессионал в параллельных вычислениях и многопоточности? Или профессионал?
А что, есть какой-то уровень профессионализма, связанный с мнопоточностью? )) Если вопрос в том, пишу ли я в работе какой-то продакшен код, связанный с параллельностью/конкурентностью, то да, пишу. Нет, мне не пофиг, потому что текущая реализация потоков в MRI не позволяет столь же эффективно их использовать, нежели в том же JRuby, например. Хотя это и лучше, чем ничего. Я не знаю, это стоит вообще обсуждать? Разве это не очевидно или вы хотите доказать обратное?

v
01.06.2017
09:58:16
это не очевидно

Konstantin
01.06.2017
10:00:49
ок?

Alex
01.06.2017
10:06:54
все что дают потоки в руби, это эффективная работа с блокирующими функциями.

Nikita
01.06.2017
10:34:42
какой-то тухлый наброс, понимать как работает интерпретатор никогда не будет лишним

Oleg
01.06.2017
15:24:01
Паралелить только IO - вполне себе хороший подход. В том же NodeJS оно из коробки на каждый чих готово переключиться на другие вычисления чтобы не ждать завершения текущего кода из-за обращения к IO. И при этом всё вполне себе быстро и эффективно. GIL по сути делает тоже самое, только, в отличие от JS, тут ты сам руками всё делаешь, что дает и свои плюсы и минусы.

Google
Oleg
01.06.2017
15:24:55
Есть ещё форк процесса, что увы теряет общий контекст ибо память дублируется и каждая по своему используется, но, в некоторых задачах, почему бы и нет

А так да - хочешь все ядра занять и иметь общую память - храни общее в редисе или чем-то подобном

И много инстансов руби

В целом то приложения обычно на самом то деле не часто и не много имеют общей памяти на поток. С другой стороны конечно сильно зависит от задачи. Но в том же веб обычно это получение запроса от клиента, какие-то вычисления, 1 или более запросов в базу и ответ. И всё это не требует иметь общей памяти за исключением базы данных. Вот туда может по разному ходиться, и транзакциями и просто простенькими запросами, но нет необходимости что-то прям динамически в памяти держать и сложное вычислять, достаточно сложное чтобы нагрузить ядро процессора на все 100%. Ибо если 1 запрос одного юзера не грузит на 100% - можно просто роутить на другие запущенные инстансы на входе, причем не только в рамках одной машины даже - а в рамках многих нод, балансировка нагрузки и прочее такое всё

Если же вычисление требует прям вот всё-всё нагрузить - возможно не тот язык выбран. Впрочем, вероятно, редис поможет в обмене данными между инстансами MRI по ядру на каждый

Dima
01.06.2017
15:38:15
Тут столько бесед про многопоточность

Неужели это такая прямо проблема?

Oleg
01.06.2017
15:39:01
На самом деле многопоточность - действительно проблемы

Dima
01.06.2017
15:39:51
Я просто не сталкивался с этим очень остро. Если что,выделял в воркер или микросервис

И вообще, каждой задаче свои инструменты. Многопоточность не самая сильная сторона руби

v
01.06.2017
15:46:45
Неужели это такая прямо проблема?
просто у некоторых фетиш

если язык не занимает все ядра - гештальт не закрыт

Dima
01.06.2017
15:48:43
Так он в принципе не самый быстрый

Alexander
01.06.2017
15:48:55
Dima
01.06.2017
15:49:45
Нет) нужен.

Alexander
01.06.2017
15:51:32
Некоторые ищут ну прям идеальный язык, некоторые хотят и рыбку съесть, и многопоточность. Чуть позже должно прийти осознание, что один язык нормально все возможные задачи не решит, иногда лучше выбрать другой, а иногда можно "скостыльнуть" (как с отдельными процессами вместо обычных потоков)

Alexander
01.06.2017
15:52:05
С++ же
Много веб-проектов на нём видел? И фронт?

решает все задачи
Именно поэтому я написал "нормально"

Google
Alexander
01.06.2017
15:53:46
Кое-как почти все задачи может решить и руби, и пхп, но иногда это тупо не выгодно

v
01.06.2017
15:54:36
Много веб-проектов на нём видел? И фронт?
все веб-проекты на MRI - считай, на С++

Alex
01.06.2017
15:56:05
не, все веб проекты на MRI а не C++

Alexander
01.06.2017
15:56:14
А почему не Java тогда уж с той же аргументацией? ?

v
01.06.2017
15:58:14
А почему не Java тогда уж с той же аргументацией? ?
а я не помню, на чем оно написано

Alexander
01.06.2017
15:59:08
Короче, MRI написан на Си, а не плюсах, как минимум

v
01.06.2017
15:59:24
На коболе </sarcasm>
может на ассемблере

Alexander
01.06.2017
16:00:27
может на ассемблере
Кобол на ассемблере, а ассемблер — на Фортране. Потому Фортран так и ценится. Всё на Фортране работает, весь веб в том числе

Alexander
01.06.2017
16:01:40
Ассемблер на Фортране? Ого, не знал
Теперь знаешь. Выучишь Фортран — будешь получать сто тыщ баксов

Alex
01.06.2017
16:05:30
Alexander
01.06.2017
16:14:45
так говоришь как будто это много
Это вроде цитата из тех времён, когда было много

Alexander
01.06.2017
16:27:59
Oleg
01.06.2017
16:28:21
Тонковатая шутка получилась

Alexander
01.06.2017
18:45:59
https://bogdanvlviv.github.io/posts/ruby/new-aliases-append-to-push-and-prepend-to-unshift-since-ruby-2_5_0.html?utm_source=rubyweekly&utm_medium=email

Google
v
01.06.2017
18:46:35
ну у него и ник

Roman
01.06.2017
18:51:13
Admin
ERROR: S client not available

Oleg
01.06.2017
21:21:56
А что нового обещают завезти?

Dmitriy
02.06.2017
09:46:07
Добрый день. Кто-нибудь занимался компрессией ассетов, лежащих на s3? Опишу ситуацию. Используем CloudFront. Ассеты улетают в бакет на s3 (юзаем гем asset_sync). В конфиге гема включил опцию, которая должна компрессить ассеты. Проверяю бакет - сейчас там лежат рядом .css и .css.gz файлы. На всякий случай проверил конфиг nginx - там всё ок с точки зрения дружбы с gzip. Но сайт по-прежнему продолжает ссылаться на простой .css файл. Гуглил, грыз матчасть - пока не очень помогло, я явно что-то упускаю. Кто-нибудь сталкивался с подобным?

Vitaliy
02.06.2017
09:58:37
могу ошибаться, но - сайт и должен ссылаться на простой css js. а gzip версию отправляет уже nginx, и разруливает все по этой версии браузер

Dmitriy
02.06.2017
10:01:54
Примерно так и должно работать, судя по гуглу, да - nginx отправляет гзипованную версию, браузер её разжимает и использует. Но пока не понял, как проверить и убедиться, что в этом плане всё ок. Изначально я на этот вопрос внимание обратил, когда смотрел в рекомендации гуглового PageSpeed Insights, после всех изменений он по-прежнему продолжает ругаться, что ассеты не сжаты =/

Dmitriy
02.06.2017
10:07:08
Судя по нетворку - приходит полная css-ка, не сжатая. При этом чекер говорит, что всё ок. Хотя судя по всему, он просто проверяет нужный header: With this tool you can check if your web server is sending the correct GZIP enabled header.

Alexander
02.06.2017
10:11:22
Dmitriy
02.06.2017
10:15:22
Размер, урлу - всё смотрю :) Размер отображается один, и это размер оригинала, несжатого

kolas
02.06.2017
10:17:30
там в хедере в контент encoding gzip должно быть

Dmitriy
02.06.2017
10:24:02
Есть в хедерах такое :) Content-Encoding: gzip

Вообще, по ощущениям, на стороне AWS и Nginx - всё так, как должно быть. Вопрос именно в том, чтобы рельса понимала, что ей нужно обращаться к .gz файлу

ojab
02.06.2017
11:45:24
А зачем вообще заморачиваться по этому поводу, если cloudfront?

самое простое — сделать nginx'у gzip off; gzip_static on; и потом curl -H "Accept-Encoding: gzip,deflate" -I https://example.com/asset.css 2>&1 | grep Content-Encoding

но, опять же, непонятно зачем

Sergey
02.06.2017
12:59:41
Ещё disable cache включи

Тогда вроде сможешь увидеть разницу

Google
Dmitriy
02.06.2017
14:26:37
Спасибо за ссылки/комменты Сейчас разбираюсь, как это всё работает, есть пробелы в матчасти, восстанавливаю

Alexander
02.06.2017
16:18:28
это если ты их не проксируешь.
надо у вопрошающего спросить, одинаковы ли root URL для ассетов и для приложения

Dmitriy
02.06.2017
17:12:03
Не одинаковы

Alexander
02.06.2017
17:28:34
Не одинаковы
Тогда это явно не про проксирующий nginx

Сергей
02.06.2017
20:45:37
ребятки, подскажите как быстро изменить регистр имен множества файлов? CamelCase -> kebab-case

Сергей
02.06.2017
20:46:56
pry в помощь :)
и как он поможет?

ojab
02.06.2017
20:48:54
FileUtils#mv и String#dasherize, очевидно

Страница 578 из 1594