
Al
13.09.2017
15:42:47

Sergey
13.09.2017
15:42:56
Мне нет. Входящих соединений в 5 раз больше чет тредов java включая служебные треды weblogic. Jdbc pool не вырастает до вернего предела а болтается гдето посередине. Нагрузки на тестере и сервере приложений незаметно

Al
13.09.2017
15:43:54

Sergey
13.09.2017
15:44:07
База тоже не сказать чтоб сильно загружена

Google

Sergey
13.09.2017
15:44:30
Входчщих в weblogic

Al
13.09.2017
15:56:12

Sergey
13.09.2017
16:17:02
Не полностью используются ресурсы серверов. Порядка 100 tps по современным меркам уровень микроволновки

Вадим
13.09.2017
16:59:26
Всем привет)
Тут общение по делу?

Alex
13.09.2017
17:01:22
и без дела

Вадим
13.09.2017
17:04:39
Есть программисты?
/stat@combot

Combot
13.09.2017
17:05:41
combot.org/chat/-1001045152752

Ilya
13.09.2017
17:07:34
Но это не точно

Igor
13.09.2017
17:08:23
?
Всех с 256 днем года!

Google

Igor
13.09.2017
17:08:37
Будьмо!

Вадим
13.09.2017
17:10:39

Al
13.09.2017
17:28:05

Kirill
13.09.2017
17:30:11
13-го же ?
Всех с 256 днем года!

Vladislav
13.09.2017
17:32:10

Alexander
13.09.2017
17:45:19
есть запрос:
explain SELECT username, max(acctstarttime) AS last_session_start , IFNULL(MAX(acctstoptime), 0) AS last_session_end, SUM(acctinputoctets+acctoutputoctets) AS data_usage FROM radacct GROUP BY username ORDER BY max(acctstoptime) ASC;
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+---------+------+---------------+------+---------+------+---------+---------------------------------+
| 1 | SIMPLE | radacct | ALL | NULL | NULL | NULL | NULL | 5564552 | Using temporary; Using filesort |
выполняется 15-20 секунд, в сторону какого индекса копать, если вообще он поможет?
чуется мне, что переписывать надо, т.к. "https://dev.mysql.com/doc/refman/5.7/en/order-by-optimization.html": The query uses ORDER BY with an expression that includes terms other than the index column name:

Dmitry
13.09.2017
17:54:20

Alexander
13.09.2017
17:55:30
я пробовал убирать max() из запроса - не помогает
хотя ...
create index i_username_acctstoptime on radacct (username,acctstoptime);
попробую вот с этим и без max()

Ilya
13.09.2017
17:56:09
Temporary и filesort
Он на винте сортирует

Alexander
13.09.2017
17:56:45
да это понятно ...

Ilya
13.09.2017
17:56:52
Во временном файле. Ибо памяти нет на весь набор

Alexander
13.09.2017
17:57:31
sort_buffer_size ?

Google

Alexander
13.09.2017
17:57:32
собственно, это выборка из базы радиуса по клиентам - кто сколько скушал ...
сейчас попробую

Ilya
13.09.2017
17:58:08
Индекс по полю пили
Чуть чуть быстрее будет
Но вставка и апдейт будут тупить

Alexander
13.09.2017
17:59:47
у радиуса уже есть:
PRIMARY KEY (`radacctid`),
KEY username (`username`),
KEY framedipaddress (`framedipaddress`),
KEY acctsessionid (`acctsessionid`),
KEY acctsessiontime (`acctsessiontime`),
KEY acctuniqueid (`acctuniqueid`),
KEY acctstarttime (`acctstarttime`),
KEY acctstoptime (`acctstoptime`),
KEY nasipaddress (`nasipaddress`)

Ilya
13.09.2017
18:01:23
Max убери
А так как вы делаете вы ее естественно заебете. И запрос индексы не цепанет
А бля. Вам батенька отдельную таблицу надо
Последние сессии держать
походу майнеры атмосферу перегрели своими фермами
летний дождь в сентябре
ппц

Al
13.09.2017
18:29:10

Ilya
13.09.2017
18:30:30
чо за машина и чо за коробка
мне вот поставщик дмрв бу походу привез дважды.
рассея блин
так и катаю с оторваным разъемом теперь. воздух порчу. клал на экологию

Al
13.09.2017
18:32:31

Ilya
13.09.2017
18:32:55
вульвы ж не ломаюца

Google

Al
13.09.2017
18:33:13
Сказки
Новая. Только полтора месяца как с завода прикатила

Ilya
13.09.2017
18:34:22
это чо аналог дсг?
ффуууу

Al
13.09.2017
18:35:42
Понятия не имею что такое дсг

Ilya
13.09.2017
18:40:59
я человек испорченный гирдроавтоматом.

Al
13.09.2017
18:41:43
Кстати довольно разумная. В смысле обучается. Умеет через передачу переключаться если не чуствует нагрузки.

Alexander
13.09.2017
18:59:21
имхо, из-за group by username проблемы ...

Ilya
13.09.2017
19:00:33

Al
13.09.2017
19:06:49

Ilya
13.09.2017
19:07:16
как не сделай все раком. ахаха
можно индекс правда сделать user, time
но это пиздец как по мне
ну и сначала max(time) выбрать а потом с этим селектом сджойнить таблицу сессий и выбрать еще раз
хотя не. тоже первый по максу будет косячным...

aster
13.09.2017
19:16:46
Интересные какие баталии тут были ?
Если этот чат скормить ИИ - что он скажет?)

Алексей
13.09.2017
19:17:08
напрашивается отдельная табличка. Или матвью

Google

Al
13.09.2017
19:18:35

Ilya
13.09.2017
19:24:55
еслиб за сегодня этоб дико сократило выборку
откуда ты знаешь что ему надо "сегодня" а не вообще

Al
13.09.2017
19:26:44
а чо именно за сегодня?
Понятия не имею как он складирует. Но я бы выбирал по юзеру. Делал сортировку по ид записи и брал последнию

Ilya
13.09.2017
19:27:07
ну это вариант хуй знает какая там селективность по юзеру
я думаю что плохая )

Al
13.09.2017
19:27:27
Вот в том и проблема что мы не знаем
Сначала дб напроектируют через зад а потом выкоаыривают с нее хитромудрыми методами

Алексей
13.09.2017
19:29:19
и еще неизвестно, как настроен роутер у клиента. Если у него с инетом соединение on demand, то можем иметь over 9000 сессий в день на одного клиента
я так понимаю, это freeradius

Al
13.09.2017
19:29:52
9к записей это фигня. Вопрос что нас в этих записях интересует.

Alexander
13.09.2017
20:58:32
там сейчас примерно 5mln записей
бд проектировали авторы freeradius, естественно, они на такие запросы не рассчитывали
насчёт ограничения по времени - вариант, но ... клиент может висеть днями и неделями ... "без единого разрыва"

Ilya
13.09.2017
21:01:21
я опять тот ролик про пистолет вспомнил )
(:

Al
13.09.2017
21:36:18

Alexander
13.09.2017
21:36:50
я тоже так думаю. но 15-20 секунд на этот запрос