The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

Опыт настройки связки PostgreSQL и 1С в Oracle Linux
Потребовалось сделать сервер 1С для чего была выбрана связка OracleLinux 6.1 +
1C82 (8.2.14.519) + Postgres 9.0.4.

Собрал следующее железо для тестов:

   MB: Asus P5
   CPU : Intel(R) Pentium(R) D CPU 3.20GHz 2 ядра
   MEM : 8G
   HDD : 1x160G 7200 (старый нового не нашлось)

hdparm -Tt /dev/sda
/dev/sda:
 Timing cached reads:   2670 MB in  2.00 seconds = 1335.62 MB/sec
 Timing buffered disk reads:  220 MB in  3.00 seconds =  73.30 MB/sec

При установке выделил под SWAP 10G, остальное под корень, получилось что-то вроде:

   /dev/sda1   *           1       18152   145803264   83  Linux
   /dev/sda2           18152       19458    10484736   82  Linux своп / Solaris

ставил все без LVM, разбивка руками. Выбрал минимальную установку

Прицепил RPM-репозитории:

   cd /etc/yum.repos.d
   touch public-yum-ol6.repo

добавил в файл public-yum-ol6.repo:

   [ol6_ga_base]
   name=Oracle Linux 6 GA - $basearch - base
   baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/0/base/$basearch/
   gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
   gpgcheck=1
   enabled=1

   [ol6_u1_base]
   name=Oracle Linux 6 U1 - $basearch - base
   baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/1/base/$basearch/
   gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
   gpgcheck=1
   enabled=1

затем все как обычно

   yum update

итак что видим ....
если верить описанию система очень быстрая, некоторые прогнозируют прирост аж 110 процентов.
смотрим что есть по дефолту

cat /etc/sysctl.conf

   # Kernel sysctl configuration file for Red Hat Linux
   # Controls IP packet forwarding
   net.ipv4.ip_forward = 0

   # Controls source route verification
   net.ipv4.conf.default.rp_filter = 1

   # Do not accept source routing
   net.ipv4.conf.default.accept_source_route = 0

   # Controls the System Request debugging functionality of the kernel
   kernel.sysrq = 0

   # Controls whether core dumps will append the PID to the core filename.
   # Useful for debugging multi-threaded applications.
   kernel.core_uses_pid = 1

   # Controls the use of TCP syncookies
   net.ipv4.tcp_syncookies = 1

   # Disable netfilter on bridges.
   net.bridge.bridge-nf-call-ip6tables = 0
   net.bridge.bridge-nf-call-iptables = 0
   net.bridge.bridge-nf-call-arptables = 0

   # Controls the maximum size of a message, in bytes
   kernel.msgmnb = 65536

   # Controls the default maxmimum size of a mesage queue
   kernel.msgmax = 65536

   # Controls the maximum shared segment size, in bytes
   kernel.shmmax = 68719476736

   # Controls the maximum number of shared memory segments, in pages
   kernel.shmall = 4294967296
   vm.overcommit_memory=2

неплохо
добавим на всякий случай

   kernel.panic=5
   kernel.panic_on_oops=5
   kernel.panic_on_io_nmi=5
   kernel.panic_on_unrecovered_nmi=5

отключим все ненужное .... взламывать сервер некому, он будет сугубо локальным.

   chkconfig ip6tables off
   chkconfig iptables off
   chkconfig netfs off
   chkconfig postfix off
   chkconfig saslauthd off

затем отключим SELinux, так как с ним не работает 1C.

vi /etc/selinux/config

   SELINUX=disabled

и reboot

Приступим к настройке 1C и PostgreSQL. Прочитал  статью
http://www.alsigned.ru/?p=1129 про установку 1С 8.2 в связке с Postgresql 9.0.
Сделал все как в статье, единственно подменил в конфигурации PostgreSQL 9.0.4 и
патчи взял для версии 9.0.3 (http://v8.1c.ru/overview/postgres_patches_notes.htm).

Краткое изложение процесса:

Загружаем необходимые пакеты:
   yum install rpm-build gcc make glibc-devel bison flex python-devel tcl-devel readline-devel \
      zlib-devel openssl-devel  krb5-devel  e2fsprogs-devel gettext pam-devel openldap-devel icu libicu libicu-devel

Патчим PostgreSQL
   wget http://v8.1c.ru/overview/postgresql_patches/9-0-4/postgresql-9.0.4-1.1C.src.rpm
   rpm -i postgresql-9.0.4-1.1C.src.rpm

В файле /usr/lib/rpm/macros в параметре %_default_patch_fuzz заменяем 0 на 2.
В файле /root/rpmbuild/SOURCES/postgresql.init прописываем:

   PGENGINE=/usr/pgsql/bin
   PGDATA=/var/lib/pgsql/data
   PGLOG=/var/lib/pgsql/pgstartup.log

В spec-файле /root/rpmbuild/SPECS/postgresql-9.0-4C.spec меняем  postgresql-9.0
на postgresql, получится примерно так:

   525 chkconfig --add postgresql
   530 sbin/service postgresql condstop >/dev/null 2>&1
   531 chkconfig --del postgresql
   537 /sbin/service postgresql condrestart >/dev/null 2>&1

Собираем пакет с пропатченным PostgreSQL:
    rpmbuild -ba --define 'runselftest 0' /root/rpmbuild/SPECS/postgresql-9.0-4C.spec

Устанавливаем пакет:
   rpm -i /root/rpmbuild/RPMS/x86_64/*.rpm

Инициализируем БД:

    su postgres
   /usr/pgsql/bin/initdb -D /var/lib/pgsql/data --locale=ru_RU.UTF-8

Запускаем postgresql:

   service postgresql start

Устанавливаем 1С:


Указываем имя хоста в /etc/hosts (имя должно совпадать с именем HOSTNAME,
указанным в файле /etc/sysconfig/network):

127.0.0.1       localhost 1csrv 1csrv.mydomain.local
192.168.1.1     1csrv 1csrv.mydomain.local


Устанавливаем пакеты с 1С:

   rpm -i 1C_Enterprise82-common-8.2.13-205.x86_64.rpm 1C_Enterprise82-server-8.2.13-205.x86_64.rpm \
      1C_Enterprise82-ws-8.2.13-205.x86_64.rpm 1C_Enterprise82-common-nls-8.2.13-205.x86_64.rpm \
      1C_Enterprise82-server-nls-8.2.13-205.x86_64.rpm 1C_Enterprise82-ws-nls-8.2.13-205.x86_64.rpm 

далее активируем сервисы 1c и postgresql:

   chkconfig srv1cv82 on
   chkconfig postgresql on

В .bash_profile правим "PGDATA=/var/lib/pgsql9/data" на "PGDATA=/var/lib/pgsql/data".

Далее запустил 1С-клиента, создал базу TEST и запустил тест Гилева (gilev.ru)
...ждал минут 20 !!!! набрал 9.1 !!! балов явно мало для комфортной работы.
Гилев рекомендует включить блокировки вручную .... что и делаем через конфигуратор
снова тест ..... уже 14 баллов.

Пробуем  оптимизировать postgresql.conf:

   shared_buffers = 1024MB                 # min 128kB
   work_mem = 400MB                                # min 64kB
   maintenance_work_mem = 2048MB           # min 1MB
   fsync = off                             # turns forced   synchronization on or off
   wal_sync_method = fdatasync             # the default is the first option
   commit_delay = 50                       # range 0-100000, in microseconds
   commit_siblings = 7                     # range 1-1000
   cpu_tuple_cost = 0.001                  # same scale as above
   cpu_index_tuple_cost = 0.0005           # same scale as above
   effective_cache_size = 4096MB

далее

   /etc/init.d/postgresql restart
   /etc/init.d/srv1cv82 restart

Следующее тестирование показало 20.4 баллов.... неплохой результат.
Поставил две конфигурации кадрыКОРП  + бухгалтерияКОПРП. В конфигураторе сменил
блокировки на управляемый режим блокировок.

Написал скрипт для чистки логов и бекапа БД и поместил его в cron:

   #!/bin/bash

   set +x

   /bin/rm -rf /backups/1c/*.log
   /bin/touch /backups/1c/1c8_bkp.log

   BKPDIR=/backups/1c

   TIME=`date +%d-%m-%Y_%H:%M:%S`  # год,месяц,день,часы,минуты
   DATE_ARC=`date +%d%m%Y`

   LOG=/backups/1c/1c8_bkp.log

   dl() {
     $* >> $LOG 2>&1
   }

   dl echo $TIME
   
   dl /etc/init.d/srv1cv82 stop
   dl /bin/sleep 10


   /bin/find /backups/1c -type f -mtime +1 -print | /usr/bin/xargs  /bin/rm -f
   /bin/find /var/lib/pgsql/data/pg_log/ -type f -mtime +1 -print |  /usr/bin/xargs /bin/rm -f

   /usr/pgsql/bin/pg_dump -U postgres -Fc -Z9 -c -f /backups/1c/buh.$DATE_ARC.sql buh
   /usr/pgsql/bin/pg_dump -U postgres -Fc -Z9 -c -f /backups/1c/hrm.$DATE_ARC.sql hrm
   /usr/pgsql/bin/pg_dump -U postgres -Fc -Z9 -c -f /backups/1c/test.$DATE_ARC.sql test

   dl echo $TIME
   dl /etc/init.d/srv1cv82 start

Вот пожалуй и все
 
06.09.2011 , Автор: alexpn , Источник: http://www.alsigned.ru/?p=1129...
Ключи: oracle, linux, postgresql, 1c / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / Установка и синхронизация времени

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, Дмитрий (??), 14:27, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    только один вопрос?
    - Почему OracleLinux???
     
  • 1.2, m0ps (ok), 14:33, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    ага, мне тоже интересно... судя по статье - он не лицензирован, тогда смысл в нем? апдейты ставить нельзя...
     
     
  • 2.11, gen1us (?), 12:47, 07/09/2011 [^] [ответить]    [к модератору]
  • +/
    он бесплатный. апдейты ставятся
     
     
  • 3.12, m0ps (ok), 12:58, 07/09/2011 [^] [ответить]    [к модератору]
  • +/
    > он бесплатный. апдейты ставятся

    да, он бесплатный, только вот апдейты стоят денег

     
  • 1.3, Гость (?), 15:16, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Да это всё приминимо к любому клону шапки, на CentOS или Fedora отличаться не будит.
     
  • 1.4, Zl0 (ok), 15:21, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Автор видимо голословно поверил, но все таки решил проверить.
    >если верить описанию система очень быстрая, некоторые прогнозируют прирост аж 110 процентов.
     
  • 1.5, alexpn (ok), 16:36, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Очень доволен OracleLinux
    Сделан неплохо но одно огорчает мало пакетов и иногда что нужно приходится собирать руками !!!
     
  • 1.6, Stax (ok), 17:48, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > vi /etc/selinux/config
    >   SELINUX=disabled

    На этом закончил читать. Руки за это надо отрывать, что в 2011 году кто-то так с selinux поступает.

    1С что, системный демон чтобы быть ограниченным selinux? Наверняка там все дело в паре алертов, косвенно связанных с базой или чем-то подобным, выключаемых установкой одного seboolean'а.

    Да и утверждение, что мол нелицензионный oracle linux обеспечивает прирост быстродействия 110% и тд.. Замечательный аргумент, чтобы лишаться обновлений и т.д.. Нет чтобы поставить SL или что-то подобное, где все работает..

     
     
  • 2.9, Алексей (??), 03:07, 07/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Может быть но для теста SEL не нужен... весь текст скрыт [показать]
     
  • 2.13, AntiStax (?), 15:20, 07/09/2011 [^] [ответить]     [к модератору]  
  • +/
    На этом закончил читать Руки за это надо отрывать, что в 2011 году кто-то так с... весь текст скрыт [показать]
     
     
  • 3.19, crypt (??), 02:35, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    На сервере в безопасности необходима в первую очередь. Так что с selinux статья выглядела бы действительно пристойно.
     
  • 2.55, Аноним (-), 02:14, 13/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Толку то с вашего selinux Гемора создает много, а в случае дыр в ядре - выносит... весь текст скрыт [показать]
     
  • 1.7, Аноним (-), 21:48, 06/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    > fsync = off

    Ну теперь то Вашим данным точно каюк.

     
     
  • 2.8, Алексей (??), 03:06, 07/09/2011 [^] [ответить]    [к модератору]  
  • +/
    Это тест !!! И данные не критичны
     
     
  • 3.10, alexpn (ok), 03:11, 07/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > Это тест !!! И данные не критичны

    http://gilev.ru/1c/tpc/tpc82.rar
    Вот сам тест
    берем файлик tpc82.dt

     
  • 3.36, arcade (ok), 12:38, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    Это слив, без fsync такого прироста производительности не будет.
     
  • 1.14, Forth (??), 15:44, 07/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Старые конфигурации с табличными блокировками портят кровь.:/ Сейчас используем Postgres 8.4 на CentOS 5.6. Размер кластера почти 500gb.
    В целом довольны. Программеры обещают переписать блокировки.
    Интереса ради запустил этот тест tpc82, показало 20 с копейками.
     
     
  • 2.17, admin (??), 18:46, 07/09/2011 [^] [ответить]     [к модератору]  
  • +/
    интересно а подскажите пожалуйста, у нас сервер приложений и сервер БД на разны... весь текст скрыт [показать]
     
     
  • 3.26, NSForth (ok), 10:23, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    В смысле По описанию похоже на то, что просто PostgreSQL на одно соединение бол... весь текст скрыт [показать]
     
     
  • 4.30, admin (??), 11:16, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    прошу прощения, я ещё не успел ознакомится с документацией, если не сложно напиш... весь текст скрыт [показать]
     
     
  • 5.33, NSForth (ok), 11:29, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    В консоли кластера 1С, надо создать еще рабочих процессов Но если клиентов мало... весь текст скрыт [показать]
     
     
  • 6.37, admin (??), 15:48, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    выяснил по подробней в общем проблема проявляется при закрытии месяца т е кли... весь текст скрыт [показать]
     
     
  • 7.38, NSForth (ok), 15:56, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Базка-то махонькая Видимо то самое закрытие месяца неудачный для постгреса запр... весь текст скрыт [показать]
     
     
  • 8.39, admin (??), 16:08, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    смотрели уже в диски вообще не упираемся смотрел vmstat top iowait , а проц юз... весь текст скрыт [показать]
     
     
  • 9.40, NSForth (ok), 16:22, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Ну похоже запрос длинный Он вообще завершается за разумное время Включите log_... весь текст скрыт [показать]
     
     
  • 10.41, admin (??), 16:30, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    странно, я думал у всех такая проблема, но раз вы так говорите, то стоит посмотр... весь текст скрыт [показать]
     
     
  • 11.42, NSForth (ok), 16:40, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Еще как нужно Мы когда переходили с MS SQL на Postgres первое время в планы вып... весь текст скрыт [показать]
     
  • 1.15, Forth (??), 15:46, 07/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Кстати, те кто данную статью прочтут - не делайте fsync = off, если не уверены на 100% что понимаете что это.
    Да и вообще не правьте конфиги в точности как автор.:)
     
     
  • 2.21, alexpn (ok), 07:31, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Проверил все планировщики open_datasync 21 75 fdatasync 21 65 fsync 21 28 fsync_... весь текст скрыт [показать]
     
     
  • 3.24, NSForth (ok), 10:21, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Тест с fsync off бесполезен И разница между fsync off и fsync on но рейде... весь текст скрыт [показать]
     
     
  • 4.27, alexpn (ok), 10:24, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    конфигурации все стандартные сам ничего не пишу т к нет в этом необходимос... весь текст скрыт [показать]
     
     
  • 5.29, NSForth (ok), 10:35, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    У нас грабли только табличными блокировками и с запросами с типовых конфигураций... весь текст скрыт [показать]
     
  • 3.25, alexpn (ok), 10:21, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Перешел на платформу 8 2 14 533 и поставил wal_sync_method open_sync Набрал 20... весь текст скрыт [показать]
     
  • 1.16, chemtech (ok), 15:55, 07/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +1 +/
    Хотел бы уточнить на счет теста Гилева:
    - какие экстремумы (максимум, минимум) в баллах получают при тестировании примерно на таком железе?
    - сколько баллов получает 1С примерно на такой же конфигурацией с использованием MSSQL?
     
     
  • 2.22, alexpn (ok), 07:34, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    К сожалению тест под MSSQL не проводился также как и под Oracle и DB2 Но у кого ... весь текст скрыт [показать]
     
     
  • 3.23, alexpn (ok), 07:38, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    также интересны тесты с другими файловыми системами Btrfs например или ext3. у меня MySQL на Btrfs крутится пока нет проблем
     
  • 1.18, neumeika (ok), 22:38, 07/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    по нашим тестам тюненная постре медленне МСсиквела 2005 в "гилёвотесте" на 20%, не тюненная 10%, а файловая минимум в 4 раза быстрее, чем постгресина тюненная. Что удивительно, если тесты проводить в виртуалке, то результаты ваще не однозачные, ибо по результатам, постгре в линупсе (центос отsysctlенный, постре тож тюненный) не дотягивает до своего собрата на винде, тесты проводились и на РАМ диске.
     
     
  • 2.20, Аноним (-), 02:40, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > по нашим тестам тюненная постре медленне МСсиквела 2005 в "гилёвотесте" на 20%, не тюненная 10%

    Продолжайте и дальше тюнить в том же духе. )) Виртуалка поди M$овская?)

     
  • 2.28, NSForth (ok), 10:25, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > по нашим тестам тюненная постре медленне МСсиквела 2005 в "гилёвотесте" на 20%,
    > не тюненная 10%, а файловая минимум в 4 раза быстрее, чем
    > постгресина тюненная. Что удивительно, если тесты проводить в виртуалке, то результаты
    > ваще не однозачные, ибо по результатам, постгре в линупсе (центос отsysctlенный,
    > постре тож тюненный) не дотягивает до своего собрата на винде, тесты
    > проводились и на РАМ диске.

    А pgbench что показывает? Там по крайней мере понятно что делается. В тесте гилева только "попугаи" на выходе. Надо смотреть внутрь, отчего так.

     
     
  • 3.31, alexpn (ok), 11:20, 08/09/2011 [^] [ответить]     [к модератору]  
  • +/
    Вот что нашел на http www westnet com gsmith content postgresql pgbench htm ... весь текст скрыт [показать]
     
     
  • 4.32, NSForth (ok), 11:26, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > Вот что нашел на
    > http://www.westnet.com/~gsmith/content/postgresql/pgbench.htm

    Это с fsync = off я так понимаю?


     
     
  • 5.34, alexpn (ok), 11:34, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    >> Вот что нашел на
    >> http://www.westnet.com/~gsmith/content/postgresql/pgbench.htm
    > Это с fsync = off я так понимаю?

    Да
    вот еще

    -bash-4.1$ /usr/pgsql/bin/pgbench -c 10 -t 3000 alex
    starting vacuum...end.
    transaction type: TPC-B (sort of)
    scaling factor: 1
    query mode: simple
    number of clients: 10
    number of threads: 1
    number of transactions per client: 3000
    number of transactions actually processed: 30000/30000
    tps = 1014.325899 (including connections establishing)
    tps = 1015.464440 (excluding connections establishing)

    -bash-4.1$ /usr/pgsql/bin/pgbench -c 50 -t 3000 alex
    starting vacuum...end.
    transaction type: TPC-B (sort of)
    scaling factor: 1
    query mode: simple
    number of clients: 50
    number of threads: 1
    number of transactions per client: 3000
    number of transactions actually processed: 150000/150000
    tps = 954.714991 (including connections establishing)
    tps = 955.709272 (excluding connections establishing)

     
     
  • 6.35, NSForth (ok), 11:47, 08/09/2011 [^] [ответить]    [к модератору]  
  • +/
    >>> Вот что нашел на
    >>> http://www.westnet.com/~gsmith/content/postgresql/pgbench.htm
    >> Это с fsync = off я так понимаю?
    > Да
    > вот еще

    Это бесполезный бенч. На живой базе с fsync = off вы же работать не будете.


     
     
  • 7.43, alexpn (ok), 04:05, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > Это бесполезный бенч. На живой базе с fsync = off вы же
    > работать не будете.

    буду .... купил райд + винты сейчас все цепляю и буду тестировать

     
     
  • 8.50, NSForth (ok), 12:15, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    >> Это бесполезный бенч. На живой базе с fsync = off вы же
    >> работать не будете.
    > буду .... купил райд + винты сейчас все цепляю и буду тестировать

    Вы уверены, что понимаете, что делает fsync = off?

     
  • 7.44, alexpn (ok), 04:21, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    как получить 35 баллов ???? кто райды использует например  5-й или 10-й ????
     
  • 7.45, alexpn (ok), 05:38, 09/09/2011 [^] [ответить]     [к модератору]  
  • +/
    с fsync on usr pgsql bin pgbench -i alex NOTICE table pgbench_branches do... весь текст скрыт [показать]
     
     
  • 8.46, alexpn (ok), 08:20, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    вопрос кто юзает PostgreSQL@Etersoft ????
    какие впечатления ..... и если можно то выложите тесты pgbench и гилева
     
     
  • 9.51, NSForth (ok), 12:16, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > вопрос кто юзает PostgreSQL@Etersoft ????
    > какие впечатления ..... и если можно то выложите тесты pgbench и гилева

    Хорошие впечатления. Да это на самом деле просто уже готовая сборка, с парой фиксов.
    Тесты не выложу, в отпуске :), на тесте gilev помнится было 20 с копейками.

     
  • 8.47, alexpn (ok), 08:48, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    перенес каталоги
    pg_clog , pg_xlog, pg_log на другой диск

    создал на них символические ссылки

    /usr/pgsql/bin/pgbench -c 100 -t 300  alex
    starting vacuum...end.
    transaction type: TPC-B (sort of)
    scaling factor: 1
    query mode: simple
    number of clients: 100
    number of threads: 1
    number of transactions per client: 300
    number of transactions actually processed: 30000/30000
    tps = 687.226120 (including connections establishing)
    tps = 692.270491 (excluding connections establishing)

    гилев 21.3 показал ......
    интересно какое надо железо чтоб 60 было !!!!!

    http://wiki.etersoft.ru/PostgreSQL/Optimum

     
     
  • 9.48, eee (??), 10:49, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    Чтобы в лог не валилось много ошибок типа
    WARNING:  nonstandard use of \\ in a string literal at character 5929
    HINT:  Use the escape string syntax for backslashes, e.g., E'\\'.
    нужно добавить
    escape_string_warning = off

     
  • 8.49, alexpn (ok), 11:31, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    ну вот собрал RAID 10
    4 винта по 250 WD2503ABYX RAID FastTrak TX4310

    -bash-4.1$ /usr/pgsql/bin/pgbench -i alex
    NOTICE:  table "pgbench_branches" does not exist, skipping
    NOTICE:  table "pgbench_tellers" does not exist, skipping
    NOTICE:  table "pgbench_accounts" does not exist, skipping
    NOTICE:  table "pgbench_history" does not exist, skipping
    creating tables...
    10000 tuples done.
    20000 tuples done.
    30000 tuples done.
    40000 tuples done.
    50000 tuples done.
    60000 tuples done.
    70000 tuples done.
    80000 tuples done.
    90000 tuples done.
    100000 tuples done.
    set primary key...
    NOTICE:  ALTER TABLE / ADD PRIMARY KEY will create implicit index "pgbench_branches_pkey" for table "pgbench_branches"
    NOTICE:  ALTER TABLE / ADD PRIMARY KEY will create implicit index "pgbench_tellers_pkey" for table "pgbench_tellers"
    NOTICE:  ALTER TABLE / ADD PRIMARY KEY will create implicit index "pgbench_accounts_pkey" for table "pgbench_accounts"
    vacuum...done.

    -bash-4.1$ /usr/pgsql/bin/pgbench -c 10 -t 300 -j 10 alex
    starting vacuum...end.
    transaction type: TPC-B (sort of)
    scaling factor: 1
    query mode: simple
    number of clients: 10
    number of threads: 10
    number of transactions per client: 300
    number of transactions actually processed: 3000/3000
    tps = 1603.210697 (including connections establishing)
    tps = 1623.610501 (excluding connections establishing)

    Думал быстрее будет ....... в понедельник обновлю биос в райде + соберу дрова из исходников ......

     
     
  • 9.52, NSForth (ok), 12:20, 09/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > ну вот собрал RAID 10
    > 4 винта по 250 WD2503ABYX RAID FastTrak TX4310

    Первая же дурная операция проведения, вешающая табличные блокировки, или неоптимальный отчет и плевать на все эти бенчмарки. Не майтесь дурью, лучше разберитесь с тем, как отчеты и запросы в самой 1С переписывать. Планы выполнения как смотреть и т.п.
    Больше пользы в 100 раз.


     
  • 1.53, Сергей (??), 19:58, 09/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Для любителей отключать fsync на сервере(таких как alexpn) приведу выдержку из доков:

        If this parameter is on, the PostgreSQL server will try to make sure that updates are physically written to disk, by issuing fsync() system calls or various equivalent methods (see wal_sync_method). This ensures that the database cluster can recover to a consistent state after an operating system or hardware crash.

        While turning off fsync is often a performance benefit, this can result in unrecoverable data corruption in the event of a power failure or system crash. Thus it is only advisable to turn off fsync if you can easily recreate your entire database from external data.

    Короче говоря, независимо от того raid у вас или нет и с батарейкой он или нет, то если данные вам дОроги, отключать fsync нельзя

     
     
  • 2.54, alexpn (ok), 03:48, 12/09/2011 [^] [ответить]    [к модератору]  
  • +/
    для всех последних тестов со стоки fsync = ON Этот праметр НЕ ОТКЛЮЧАЛСЯ !!!!!

    ЦИТИРУЮ !!!!
    Сообщение от alexpn (ok) on 09-Сен-11, 05:38
    с fsync = on

    а то что програмеры в 1С заточены только под маздай дак это их проблема !!!!
    в тесте с рейдом

    synchronous_commit = on
    fsync = on
    единственное что сделано это весь /var перенесен на райд !
    pg_log И прочие каталоги также остались на дополнительном диске !!!

     
  • 1.57, Zur (?), 11:38, 27/09/2011 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Вопрос к автору: ссылка после "Патчим PostgreSQL" - "wget http://v8.1c.ru/overview/postgresql_patches/9-0-4/postgresql-9.0.4-1.1C.src.r - нерабочая. Откуда образовался postgresql-9.0.4-1.1C.src.rpm, поподробней можно, плиз?
     
     
  • 2.58, alexpn (ok), 05:46, 29/09/2011 [^] [ответить]    [к модератору]  
  • +/
    > Вопрос к автору: ссылка после "Патчим PostgreSQL" - "wget http://v8.1c.ru/overview/postgresql_patches/9-0-4/postgresql-9.0.4-1.1C.src.r
    > - нерабочая. Откуда образовался postgresql-9.0.4-1.1C.src.rpm, поподробней можно, плиз?

    Все просто !!!! качаем
    http://v8.1c.ru/overview/postgresql_patches/9-0-3/postgresql-9.0.3-3.1C.src.r
    затем качаем
    http://wwwmaster.postgresql.org/download/mirrors-ftp/source/v9.0.4/postgresql
    устанавливаем
    rpm -Uvh postgresql-9.0.3-3.1C.src.rpm

    правим файлик
    /root/rpmbuild/SPECS/postgresql-9.0-1C.spec
    заменяем все на версию 9.0.4
    строка 77
    Version: 9.0.4
    просто в прикол меняем строку 78
    Release: 4.2C
    правим остальные файлики как тут
    http://www.alsigned.ru/?p=1129
    не забываем про мягкие ссылки на библиотеки icu

    копируем или переносим postgresql-9.0.4.tar.bz2 в
    /root/rpmbuild/SOURCES

    далее собираем
    rpmbuild -ba --define 'runselftest 0' /root/rpmbuild/SPECS/postgresql-9.0-1C.spec
    если все без ошибок
    смотрим
    ll /root/rpmbuild/RPMS/x86_64/

    или еще вариант ждем пока появится новый релиз скажем 9.0.5
    вот тут
    http://v8.1c.ru/overview/postgres_patches_notes.htm
    либо юзаем готовый
    http://v8.1c.ru/overview/postgresql_patches/9-0-3/postgresql-9.0.3-3.1C.src.r

    Извиняюсь за опечатки в статье

     
     
  • 3.59, alexpn (ok), 08:07, 29/09/2011 [^] [ответить]    [к модератору]  
  • +/
    собрал с 9.0.5
    единственное поправил ссылки
    ln -s /usr/lib64/libicudata.so.42.1 /usr/local/lib64/libicudata.so.46
    ln -s /usr/lib64/libicui18n.so.42.1 /usr/local/lib64/libicui18n.so.46
    ln -s /usr/lib64/libicuuc.so.42.1 /usr/local/lib64/libicuuc.so.46

    в настоящий момент тестирую .....

     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:



      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor