
Pavel
07.03.2017
20:30:38
а зачем? :)

Vladimir
07.03.2017
20:30:48
собирая данные с профилировщика того же Го можно было бы понимать почему иногда сервис тормозит без расчехления дебаггера и попыток поймать этот момент

Pavel
07.03.2017
20:31:50
Prometheus :)

Google

Vladimir
07.03.2017
20:32:11
Это скорее так, идея о том с чем можно поиграться и возможно будет интересно

Pavel
07.03.2017
20:33:32
вы так дойдете что каждый пакет трафика писать будете в базу :)
но к счастью - это невозможно %)
100GE штука суровая ни в какие базы не всовываемая)

Vladimir
07.03.2017
20:38:21
И в общем уши растут в первую очередь из дебага
Вот случается у тебя раз в день пачка таймаутов
А почему непонятно
И вот если бы на сервисе был постоянно пишущий в базу профилировщик, можно было б отлистать в нужное и посмотреть

Pavel
07.03.2017
20:42:35
таймауты - это скорее нормально, чем нет
эти ваши линуксы это не RTOS все же

Vladimir
07.03.2017
20:55:48

Google

Paul
07.03.2017
21:20:26

Vladimir
07.03.2017
21:26:07
rt != preempt

Pavel
07.03.2017
21:27:20
ну условия работы RT добиться легко
isol_cpu в опции ядра
и cpuset cgroup на процесс
но это только для тех, у кого много-много денег %)

Vladimir
07.03.2017
21:28:58
@pavel_odintsov ну оно не рт будет все же

Pavel
07.03.2017
21:29:14
мягкий РТ)

Vladimir
07.03.2017
21:29:15
rt это о https://rt.wiki.kernel.org/index.php/Main_Page вот этой поделке все же

Pavel
07.03.2017
21:29:23
жесткий чтобы сделать, конечно, нужно упороться

Vladimir
07.03.2017
21:29:53
честно я не читал внутренности, но очень сомневаюсь что там даже мягкий рт будет

Pavel
07.03.2017
21:30:57
мне тут говорили что InfluxDB жрет память нищадно

Vladimir
07.03.2017
21:31:14
1.2 я правда не смотрел

Paul
07.03.2017
21:31:28

Pavel
07.03.2017
21:31:37
у меня есть инстанс где-то с 100+ записями секунду
выглядит он так
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4277 influxdb 20 0 24.590g 698168 227056 S 27.6 17.2 4811:33 influxd

Vladimir
07.03.2017
21:32:08
@pavel_odintsov а теперь поделай селектов

Pavel
07.03.2017
21:32:16
все бы ничего, да на машине 4GB памяти и работает оно почти третий месяц без сбоев :)

Google

Pavel
07.03.2017
21:32:17
дык делал
я боюсь это стандартное поведение Go аллокатора, который выделяет много-много, а потом решает что с этим делать
и выделяет сильно много чтобы избежать фрагментации

Vladimir
07.03.2017
21:33:03
у них была беда в том что на слодных запросах оно много памяти новой алоцировало на каждый запрос
и очень неохотно отдавало
можно было при должном везении найти такой селект который призывал оом

Pavel
07.03.2017
21:33:46
дык и не отдаст
Го аллокатор вообще отдавать не умеет

Vladimir
07.03.2017
21:33:57
на 64-128ГБ оперативы

Pavel
07.03.2017
21:34:41
я вот ищу как найти, сколько у него реально занято

Vladimir
07.03.2017
21:36:08
@pavel_odintsov поведение было что ты выполняешь сложный запрос - у тебя хоп-хоп-хоп и в системе -20% оперативы
еще один запрос - хоп-хоп-хоп и еще -20% к тому что было
они над этим активно работали и в 1.2 говорят лучше стало

Pavel
07.03.2017
21:36:36
CH боюсь страдает тем же

Roman
07.03.2017
21:37:04
О, знакомые все лица: Pavel

Vladimir
07.03.2017
21:37:05

Pavel
07.03.2017
21:37:39
добрый день :)

Vladimir
07.03.2017
21:43:24
@pavel_odintsov почитал capnproto - там описание особенностей в основном C++ версии.

Google

Vladimir
07.03.2017
21:43:31
К тому же есть альтернативные генераторы

Pavel
07.03.2017
21:44:57
ага, для го оч хороши
окей, инфлакс не та ки плох, по крайней мере у меня
influx -precision rfc3339 -database _internal -execute " select HeapAlloc/1024/1024 from runtime order by time limit 5"
name: runtime
time HeapAlloc
—— —-------
2017-02-28T00:00:00Z 187.9983139038086
2017-02-28T00:00:10Z 239.1747589111328
2017-02-28T00:00:20Z 246.97897338867188
2017-02-28T00:00:30Z 178.97337341308594
2017-02-28T00:00:40Z 201.73348236083984

Алексей
07.03.2017
21:54:11

Admin
ERROR: S client not available

Pavel
07.03.2017
21:55:03
перефразирую - он плох, но при этом лучше альтернатив :)

Vladimir
08.03.2017
10:12:15
@alexanderzobnin Cannot read property 'getAttribute' of null у плагина это есть идеи почему?
если на графике нет данных

Alexander
08.03.2017
10:13:55
Потом все ок?

Vladimir
08.03.2017
10:14:06
при добавлении
потом все кажется ок

Alexander
08.03.2017
10:14:38
Попробую у себя воспроизвести. А датасорс какой?
И, на всякий случай, хэш коммита
а то у меня уже изменения локальные есть

Vladimir
08.03.2017
10:19:37
dd4eedcaeada47a319c70a019e9496461eb442ac
но так работает и довольно прикольно

Alexander
08.03.2017
10:23:50
Воспроизвел. Попробую пофиксить.

Google

Alexander
08.03.2017
10:24:20
Можете, кстати, git pull сделать - там есть новые изменения

Vladimir
08.03.2017
10:25:08
да я попозже сделаю
у нас фронтэдов больше чем 1, чтоб обновить нужно через процедуру деплоя идти (
не хочется лишний раз делать
как я понимаю bucket size делает то же самое что "Buckets"?
просто в других величинах

Alexander
08.03.2017
10:30:10
Я добавил пояснения, но еще не запушил. Buckets - это кол-во элементов, а Bucket Size - явно задает размер
Для оси времени удобнее указать Buclek size, например, 30s, 10m, 1h

Vladimir
08.03.2017
10:35:58
маленький комментарий еще есть
вот видишь ты график
видишь что что-то выбивается, очень мало
а понять что - не можешь
условно вот я навел и вижу информацию о бакете, но нет возможности сразу понять что за метрики выделяются

Pavel
08.03.2017
10:39:41
^^ а как такие графики можно в Гарфане делать?