Реклама на Sys-Adm.in

Автор Тема: 1С+Postgres  (Прочитано 671 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Евгенич

  • Юзер
  • *
  • Сообщений: 10
  • Karma: +0/-0
    • Share Post
1С+Postgres
« : Март 21, 2018, 12:43:41 pm »
Всем доброго времени суток.
Стоит сервер Win2008+1C+Postgres, проблема в том что жесткий диск находится постоянно в загрузке под 100%.
Жесткие в RAID1. Всю часть диска по сути съедает Postgres. Какие способы решения можете подсказать?  :smile3:

 

Оффлайн Pantryk

  • Сообщество ИТ-Специалистов
  • Опытный пользователь
  • ***
  • Сообщений: 132
  • Karma: +21/-0
    • Share Post
Re: 1С+Postgres
« Ответ #1 : Март 21, 2018, 12:55:55 pm »
Попробуйте это https://postgrespro.ru/docs/postgresql/9.6/runtime-config-wal#guc-synchronous-commit
Если совсем туго, то можно еще https://postgrespro.ru/docs/postgresql/9.6/runtime-config-wal#guc-fsync , но уже со снижением надежности
Нет ничего более вечного, чем то, что обмотано синей изолентой

Оффлайн Евгенич

  • Юзер
  • *
  • Сообщений: 10
  • Karma: +0/-0
    • Share Post
Re: 1С+Postgres
« Ответ #2 : Март 21, 2018, 01:33:09 pm »
Я так понял Вы предлагайте отключить synchronous_commit (enum)?
Это снизить нагрузку postgres на диск?

Оффлайн sysadmin

  • Administrator
  • сисадми́н
  • *****
  • Сообщений: 8658
  • Karma: +119/-0
  • Пол: Мужской
    • Share Post
    • сайт для сис. админов и не только...
Re: 1С+Postgres
« Ответ #3 : Март 21, 2018, 01:56:48 pm »
В доках которые привел выше Pantryk все подробно написано, тебе дана информация к размышлению, попробовать никто не мешает...

Pantryk + за ссылки
дорогу осилит идущий...
......................
MCP, MCTS, RHCSA
......................
also aka xck...

Оффлайн Pantryk

  • Сообщество ИТ-Специалистов
  • Опытный пользователь
  • ***
  • Сообщений: 132
  • Karma: +21/-0
    • Share Post
Re: 1С+Postgres
« Ответ #4 : Март 21, 2018, 01:58:07 pm »
Ммм.. это указано в fsync как более гуманный способ увеличить производительность, чем отключение fsync, но действительно менно synchronous_commit не имеет отношения к самой записи. Ну а так логично, что как только появляется транзакция она сразу пишется на диск во избежании потери данных при сбое. Т.е. если вы можете позволить себе отключить fsync, тогда можно уменьшить загрузку диска.

Оффлайн Евгенич

  • Юзер
  • *
  • Сообщений: 10
  • Karma: +0/-0
    • Share Post
Re: 1С+Postgres
« Ответ #5 : Март 21, 2018, 02:10:00 pm »
sysadmin, согласен полезная информация)) Pantryk, спасибо.
Я слышал что можно pg_stat перетащить на другой диск, дабы разгрузить основной.
Какие есть мысли по этому поводу? Опасно ли это делать?

И вот еще, при включении сервера, еще Без пользователей, postgres запускается и сразу дает под 100% нагрузку,
с некоторыми переменами в 50-100%, разве это нормально?

Оффлайн Pantryk

  • Сообщество ИТ-Специалистов
  • Опытный пользователь
  • ***
  • Сообщений: 132
  • Karma: +21/-0
    • Share Post
Re: 1С+Postgres
« Ответ #6 : Март 21, 2018, 02:28:31 pm »
Ну оно работает так. Транзакции пишутся в файл журнала. Как только файл заполнился (по умочанию 16мб) то данные пишутся в основную базу (количество файлов журнала после которого происходит слияние тоже настраивается).  При этом сам журнал пишется чисто линейно. При переносе журналов на отдельный диск запись журналов происходит быстрее т.к не требуется время на значительное перемещение головок (если этот диск никто больше не использует).
По поводу нормальности 50-100% сразу ничего сказать не могу. Я пока упражняюсь практически на пустой базе. Возможно при больших базах при включении он что-нибудь начинает шерстить.
« Последнее редактирование: Март 21, 2018, 02:30:21 pm от Pantryk »

Оффлайн Евгенич

  • Юзер
  • *
  • Сообщений: 10
  • Karma: +0/-0
    • Share Post
Re: 1С+Postgres
« Ответ #7 : Март 21, 2018, 02:37:26 pm »
//Возможно при больших базах при включении он что-нибудь начинает шерстить.
Да так и есть, начинает сразу бегать по базам, баз около 4 штук.
Вот как то бы понять зачем он туда лезет изначально повышая нагрузку на диск. Может причина в этом.

Оффлайн Pantryk

  • Сообщество ИТ-Специалистов
  • Опытный пользователь
  • ***
  • Сообщений: 132
  • Karma: +21/-0
    • Share Post
Re: 1С+Postgres
« Ответ #8 : Март 21, 2018, 02:47:02 pm »
А памяти им хватает? Это не своп случайно?

Оффлайн Евгенич

  • Юзер
  • *
  • Сообщений: 10
  • Karma: +0/-0
    • Share Post
Re: 1С+Postgres
« Ответ #9 : Март 21, 2018, 02:50:42 pm »
Увеличили недавно до 32GB, не хватало 16GB, так как многие сотрудники используют несколько баз.
Сейчас норм, хватает.

Оффлайн Deonis

  • Опытный пользователь
  • ***
  • Сообщений: 238
  • Karma: +43/-0
  • Пол: Мужской
  • https://iptest.kz
    • Share Post
    • iptest.kz
Re: 1С+Postgres
« Ответ #10 : Март 26, 2018, 04:51:46 pm »
Я слышал что можно pg_stat перетащить на другой диск, дабы разгрузить основной.
Какие есть мысли по этому поводу? Опасно ли это делать?

И вот еще, при включении сервера, еще Без пользователей, postgres запускается и сразу дает под 100% нагрузку,
с некоторыми переменами в 50-100%, разве это нормально?

pg_stat - действительно снижает нагрузку если таковой диск имеется в идеале лучше подключить SSD.

Ещё у себя, я перемещал pg_stat_tmp в RAMFS.

Также рекомендую сменить или добавить следующие опции влияющие на работу с диском:

Цитировать
autovacuum_naptime = 900s

synchronous_commit = off                                                                                                                                       
commit_siblings = 5                                                                                                                               
commit_delay = 100                                                                                                                                 
fsync = on                                                                                                                             
wal_sync_method = fdatasync                                                                                                                                                                                                                                                 
                                                                                                                                                                                             
row_security = off                                                                                               
                                                                                                                                                                                             
bgwriter_lru_maxpages = 400                                                                                                                   
bgwriter_lru_multiplier = 4.0     

Описание по многим опциям есть здесь:  https://its.1c.ru/db/metod8dev#content:5866:hdoc


xx
Почтовый сервер - Debian, exim, dovecot, postgres, fetchmail, apache/nginx

Автор ven419

7 Ответов
1029 Просмотров
Последний ответ Июнь 10, 2017, 12:53:59 am
от Shrek