
Konstantin
02.11.2017
17:52:20
Чёт проиграл

Fedor
02.11.2017
17:52:27
тогда каждый раз эта функция будет завершаться, и выходить из стека

Konstantin
02.11.2017
17:52:41
Все с такого начинали

Google

Konstantin
02.11.2017
17:53:57
Я вчера к массиву find_each применял
Например

Vlad
02.11.2017
17:54:20
пойду почитаю про такой тип рекурсии, это интересно, однако)

Konstantin
02.11.2017
17:54:32
Хотя я думал, что это у меня реляция, конечно

Fedor
02.11.2017
17:54:59
хвостовая рекурсия, кстати, тоже опасна )
если в рекурсивной функции ошибка, то обычная рекурсия вызовет переполнение стека за пару минут и упадет
а хвостовая уйдет в бесконечный цикл и повиснет )))

Konstantin
02.11.2017
17:56:04
Кто-нибудь рубимайном пользуется?

Vlad
02.11.2017
17:56:20
я, но это даже не назвать "пользуюсь"

Konstantin
02.11.2017
17:58:01
Он какой-то сложный после атома

Vlad
02.11.2017
18:01:57
Да тут дело привычки наверное. Но мне особо нравится, что из коробки куча добра в нем. И консоль своя, и дебагер, и сервер(или просто файл) запустить сразу можно, интеграция с гитом.
Конечно, 99% функционала я даже еще не знаю в нем...

Konstantin
02.11.2017
18:04:15
Атом тоже интегрирован с гитом, но не так. В рубимайне блэйм можно глянуть прям по файлам.
Например. Удобно.

Google

Igor
02.11.2017
18:38:49
как заставить руби понимать по русски
encoding: cp866 —---- выдает кракозябр

Alex
02.11.2017
18:52:43
использовать UTF8 и выйти из 1997 года

Andrey
02.11.2017
19:35:38

Ilgiz
02.11.2017
20:08:50
Ребята, подскажите что такое return в руби? Что выполняет эта команда?

Vlad
02.11.2017
20:09:58
Возврат из процедуры к примеру
если указать после неё параметры, то вернет их "наверх", туда, откуда была вызвана текущая процедура. Если ничего не указывать, возвращает nil
к примеру
def procedure
return 5
end
a = procedure
Когда выполнить, а станет равной 5

Ilgiz
02.11.2017
20:12:40
Влад, спасибо!

Vlad
02.11.2017
20:13:59
Допустим, если тебе надо прервать выполнение процедуры, то можешь указать return там, где это надо сделать. Но учитывай, что все равно она вернет значение nil

Fedor
02.11.2017
20:16:20
ага, и стоить учитывать, как return работает с блоками, проками и лямбдами )
и в циклах использовать break а не return
который, кстати тоже возвращает nil
а можно и значение вернуть

Vlad
02.11.2017
20:17:18
ну я умолчал про блоки, проки и лямбды, я думаю, когда он до них дойдет, уже будет сам понимать

Ro
02.11.2017
20:17:52

Vlad
02.11.2017
20:19:21
А как вернее выразиться, последнее выполненное действие или последняя выполненная строка. Чет я сообразить не могу ?
*возвращается

Vitaliy
02.11.2017
20:22:27
Последняя инструкция

Vlad
02.11.2017
20:23:22
Спасибо)

Google

Ro
02.11.2017
20:40:23
результат выполнения последней инструкции
любая инструкция имеет результат
запусти irb
введи 555
увидишь, что оно дублируется
введешь 555 + 5 - получишь другой результат выполнения последней инструкции

Vlad
02.11.2017
20:51:52
Я просто слово не мог нужное подобрать)

Ro
02.11.2017
21:41:12
никто не знает телеграм канала про aws?
хотя может кто так скажет - что за тип девайся на amazon ec2 instance, который называется /dev/xvdh ?
нашел ответ

Eugene
02.11.2017
23:42:03
https://ideone.com/qQYZ2i
Мой код для пятничной задачи

Ro
03.11.2017
00:31:27
СПОЙЛЕР ^
любопытное решение
рекурсивное)

Evgeniy
03.11.2017
07:07:02
Всем привет!
Возник такой вопрос.
Использую связку passenger + nginx
nginx использую который идет в комплекте с passenger,
Периодически безсимптомно сервер зависает. Помогает перезапуск passnger'а или nginx'а (любого из веб-серверов).
При этом в логах никаких ошибок нет. Нагрузка в момент зависания отсутствует от слова совсем.
Кто-нибудь сталкивался с такой бедой?
Иногда работает сутками напролет.
А иногда - несколько минут и зависает.
В основном проблема наступает через какое-то время после одного из рестартов passanger'а (после заливки изменений). Притом может зависнуть через полчаса после рестарта, через несколько часов.
Потом перезапускаешь - может нормально работать, а может опять повиснуть. И в какой-то из рестартов все становится нормально и работает стабильно.

Aleksey
03.11.2017
07:25:46
у меня такая же связка, но с такой проблемой не сталкивался

Andrey
03.11.2017
07:44:05

Evgeniy
03.11.2017
07:44:25

Andrey
03.11.2017
07:49:28
Это всмысле ты локально запускаешь?

Google

Dmitry
03.11.2017
07:56:47
А за чем passenger? Nginx + puma и все отлично.

Andrey
03.11.2017
07:58:27
а вот такое одну команду упрощается?
user_id = params[:event_payload][:user_id] if params[:event_payload]

Evgeniy
03.11.2017
07:59:49

Andrey
03.11.2017
08:03:56
Решение как решение.

Dmitry
03.11.2017
08:04:25

Admin
ERROR: S client not available

Dmitry
03.11.2017
08:05:03
http://be9.ru/2015/09/12/memory-leak.html

Andrey
03.11.2017
08:05:04
Только если ты что то наследуешь то может оно всегда так было.

Evgeniy
03.11.2017
08:05:54
Как давно проблемы начались?
Думаю, достаточно давно. На момент моего вступления в проект - уже было. Перегрузка помогала - всех все устраивало. А сейчас пришло то самое время, когда пора с этим что-то делать.

Dmitry
03.11.2017
08:10:27

Evgeniy
03.11.2017
08:10:49

Marat
03.11.2017
08:37:39
Господа, по тестированию какой подход лучше взять? То, что в rails guide рекомендуется или ещё что?
Сам тестированием почти не занимался раньше, пришел в новый проект вместо старого программиста, оказалось что тестов вообще нет.

Maxim
03.11.2017
08:41:33

Andrey
03.11.2017
08:44:53
Rspec не потому что лучший, а потому что он везде.

Егор
03.11.2017
09:31:34
Ребят привет
подскажите такой кейс: База Mongo Есть route который делает выборку и сериализует в json. Надо сделать стабильность при 12к запросах - как лучше организовать. Сервер Puma, Nginx

Andrey
03.11.2017
09:50:27
а проблема в чем?

Егор
03.11.2017
09:53:22
тестирую на 2к+ запросах 502 иногда вываливаются
не могу понять почему

Google

Егор
03.11.2017
09:53:28
логи пустые

Dmitry
03.11.2017
10:17:44
У пумы сколько воркеров?
Ну и потоков на воркер

Marat
03.11.2017
10:21:07

Егор
03.11.2017
10:21:55
set :puma_threads, [0, 16]
set :puma_workers, 0

Dmitry
03.11.2017
10:25:05
А смотрел htop когда нагружаешь?

Егор
03.11.2017
10:25:23
нет

Dmitry
03.11.2017
10:25:59
Начни с этого

Егор
03.11.2017
10:26:54
ну создается 16 процессов
на загрузке в 2к

Dmitry
03.11.2017
10:31:57
Ну скорее всего это предел
Надо ещё воркеров запустить
Если есть возможность

Егор
03.11.2017
10:33:56
а как рассчиатть эту возможность?
исходя из железа

Andrey
03.11.2017
10:41:13
на глаз

Dmitry
03.11.2017
10:57:03