@proRuby

Страница 1139 из 1594
Anton
24.03.2018
16:38:00
Знакомый написал тулзу, что бы через трансиб работать

Ты хотб имеешь влияния, давай впередь Антон?
Я против гуи в большинстве случаев, так что сорян

Я против гуи в большинстве случаев, так что сорян
Могу только принять браузеры + клиент для постгреса

Subb98
24.03.2018
16:38:52
Поддерживаю что ли. Ну и IDE ещё.

Google
Decadent
24.03.2018
16:39:09
и для монги

Dima
24.03.2018
16:39:14
пример осилишь привести?
премеров залупания лично на меня хватает.

Black
24.03.2018
16:39:29
Могу только принять браузеры + клиент для постгреса
Клиент для postgress? Как ты мог? Ты же все должен делать на консоли.

Dima
24.03.2018
16:39:39
Так что сиди и не призывай банить честных людей, потому что тебя не банят.

Anton
24.03.2018
16:39:42
Поддерживаю что ли. Ну и IDE ещё.
Не, я так иде и не осилил

Decadent
24.03.2018
16:40:07
премеров залупания лично на меня хватает.
долго пытался понять, из какой это области - залупание ???

Subb98
24.03.2018
16:40:16
loop

Black
24.03.2018
16:40:30
Так что сиди и не призывай банить честных людей, потому что тебя не банят.
Спасибо. На самом деле я никого не оскорбляю, а просто даю пищу для размышления?

Black
24.03.2018
16:46:30
Не, я так иде и не осилил
А у тебя бывает такое, например, ты знаешь как заходит в консоль postgres, а через некоторое время забываешь, и ты начинаешь читать доки как будто с нуля изучаешь?

И так для каждой технологии

Google
Anton
24.03.2018
16:47:25
И с гитом такое бывает и с чем угодно

Ты и в гуи так же тупить можешь долго

Особенно если сложная софтина (логик про, как пример)

Black
24.03.2018
16:48:20
Но там методом тыка все вспоминаешь, а в консоле ввод-откат

И на откат тоже читаешь доки

Anton
24.03.2018
16:48:46
Но там методом тыка все вспоминаешь, а в консоле ввод-откат
Зависит от: сложности и частоты использования

Black
24.03.2018
17:00:08
Нужно будет провести эксперимент.

Есть к примеру запрос: SELECT COUNT(*) FROM table WHERE user_id IN (...) вытаскивает количество 70к и занимает 190ms, это норма? По сути данных в IN много. Как можно ускорить запрос? Индексы есть.

Александр
24.03.2018
20:22:57
Выглядит максимально просто на первый взгляд

Black
24.03.2018
20:24:36
А как ускоряют в таких моментах?

Александр
24.03.2018
20:28:51
Единственное, что приходит в голову, это распараллеливание, у psql такое есть

Не знаю на счет того, насколько это поможет, не приходилось пользоваться

https://www.citusdata.com/blog/2016/10/12/count-performance/

Мб тут что есть

Black
24.03.2018
20:32:28
У Rails нету из коробки?

Александр
24.03.2018
20:33:04
Нет

Это особенность конкретной бд

Roman
24.03.2018
20:36:27
ну тогда только так. если пажинация не вариант

Google
Black
24.03.2018
20:36:30
Это особенность конкретной бд
Наверно это переломный момент для MySQL

Roman
24.03.2018
20:36:39
рекомендую кешировать минут на пять хотя бы

Александр
24.03.2018
20:37:22
Roman
24.03.2018
20:37:33
аа блин

Black
24.03.2018
20:37:36
ну тогда только так. если пажинация не вариант
Три-пять подобных запроса - 1 - 2сек, и это плохо.

Roman
24.03.2018
20:38:13
ключ по user_id есть?

Black
24.03.2018
20:39:22
А это важно при чистом запросе?

Roman
24.03.2018
20:40:24
ну иначе будет full table scan

Black
24.03.2018
20:41:13
Roman
24.03.2018
20:41:27
Точно?
просто проверь :)

набери explain

увидишь что оно делает

Black
24.03.2018
20:42:31
А на уровне ActiveRecord как проверить на присутствие ключа?

Roman
24.03.2018
20:43:59
http://guides.rubyonrails.org/active_record_querying.html#running-explain

Black
24.03.2018
20:47:59
http://guides.rubyonrails.org/active_record_querying.html#running-explain
Читаю про explain. Он просто составляет схему для выявления проблемных мест как я понял?

Roman
24.03.2018
20:48:26
explain показывает, как будет выполняться твой запрос

будут ли использоваться индексы и какие

Black
24.03.2018
20:52:52
explain показывает, как будет выполняться твой запрос
Проверил, type не All, значит не full table scan

Roman
24.03.2018
20:53:17
Black
24.03.2018
20:54:46
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra | +----+-------------+-----------+------------+-------+--------------------------------+--------------------------------+---------+------+-------+----------+------------------------------------+ | 1 | SIMPLE | shippings | NULL | range | index_shippings_on_district_id | index_shippings_on_district_id | 5 | NULL | 93366 | 10.0 | Using index condition; Using where | +----+-------------+-----------+------------+-------+--------------------------------+--------------------------------+---------+------+-------+----------+------------------------------------+ 1 row in set (0.03 sec)

Google
Roman
24.03.2018
20:55:52
да, индекс есть

Black
24.03.2018
20:56:59
да, индекс есть
Ну вот, значит счастье есть

Alex
25.03.2018
08:41:31
Ржу

Райлян
25.03.2018
18:33:07
Здрасте, подскажите где почитать про тестирование delayed jobs

Александр
25.03.2018
18:40:15
Можно выполнять в них отдельно лежащую функцию и на нее тесты накатать

Roman
25.03.2018
18:57:59
есть еще тесты, что джоба заенкьюилась

Nikita
25.03.2018
19:00:29
Похоже на тест ради теста

Roman
25.03.2018
19:29:39
с чего бы?

wi11son
26.03.2018
05:56:10
А ещё можно включить инлайн выполнение, для интеграционных тестов

Dmitry
26.03.2018
09:17:45
Если в руби все объект, то при сложении двух Fixnum => получаем Fixnum с суммой значений слагаемых. Так вот, в Fixnum значение - объект или примитивный тип?

Alex
26.03.2018
09:18:13
значение лежит где то внутри дебрей реализации

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

я кстати не шарю есичо.

Т.е 4 = Fixnum(4) грубо говоря

ojab
26.03.2018
09:19:24
2.5.0 :001 > (1 + 1).class => Integer

примитивных типов не бывает

Dmitry
26.03.2018
09:20:27
ну а как тогда сложение реализовать? если примитивных типов нет

мне тоже кажется что оно где-то глубоко-глубоко зарыто

Хорошо, даже если так. Fixnum умеет сложение с Fixnum, значение в Fixnum - Integer. У Integer должна быть реализация сложения, и должно быть значение, чтобы складывать числа

Google
Alex
26.03.2018
09:22:10
т.е если хочешь досконально знать - лезешь в C сорсы MRI

ojab
26.03.2018
09:23:08
а точнее rb_int_plus в сорцах mri

ojab
26.03.2018
09:25:55
плохо исправил, надо :+

wi11son
26.03.2018
09:26:09
сорян

:+ так тоже не работает

ща

Alex
26.03.2018
09:28:22
define_method сработает

wi11son
26.03.2018
09:29:39
2.4.3 :010 > class T 2.4.3 :011?> def +(something) 2.4.3 :012?> "#{self}#{something}" 2.4.3 :013?> end 2.4.3 :014?> end => :+ 2.4.3 :015 > 2.4.3 :016 > T.new + 5 => "#<T:0x00007fe18e9045f8>5"

Dmitry
26.03.2018
09:32:05
https://ruby-doc.org/core-2.5.0/Integer.html#method-i-2B

source поглядеть можно, ну в общем-то значение - тип, не объект

wi11son
26.03.2018
09:35:25
static VALUE fix_plus(VALUE x, VALUE y)

короче возвращается некое VALUE

это VALUE — это рубишный класс

так что оно в любом случае не значение овзвращает а объект

Roman
26.03.2018
09:40:13
вопрос по newrelic: то что на скрине - это значит где-то n+1 есть? значения справа - это %Time, Avg Calls (per txn), Avg time (ms)

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