LINUX.ORG.RU

Сообщения skel1

 

Холодный старт MariaDB

Приветствую.

  • Сервер с Xeon D-1521 и 32 ГБ ОЗУ.
  • CentOS 7.2.1511.
  • MariaDB 5.5.49.
  • Базы данных находятся на SSD-разделе.

Проблема касается любого сайта/базы на сервере. Если сайт какое-то время (допустим, 1 час) был неактивен, то при первом заходе на него очень долго обрабатываются SQL-запросы, около 8-10 секунд. Обновляешь страницу - грузится моментально. Сайт - обычная легкая пустышка на wordpress. Включение или выключение query-cache никак не влияет на ситуацию.

Если выполнить sync && echo 3 | tee /proc/sys/vm/drop_caches, то эффект будет такой же: холодный старт.

Вопрос: как и что сделать, чтобы холодный старт базы был минимальным?

/etc/my.cnf.d/server.cnf:

[mysql]

# CLIENT #
port                           = 3306
socket                         = /var/lib/mysql/mysql.sock

[mysqld]

# GENERAL #
port            = 3306
#bind-address    = 0.0.0.0
socket          = /var/lib/mysql/mysql.sock
pid-file        = /var/run/mysqld/mysqld.pid
default-storage-engine         = InnoDB

# MyISAM #
key-buffer-size                = 1G
myisam-recover                 = FORCE,BACKUP

# SAFETY #
max-allowed-packet             = 16M
max-connect-errors             = 1000000
#skip-name-resolve
sysdate-is-now                 = 1

# CACHES AND LIMITS #
tmp-table-size                 = 32M
max-heap-table-size            = 32M
query-cache-type               = 1
query-cache-size               = 256M
query-cache-limit              = 1M

max-connections                = 500
thread-cache-size              = 50
open-files-limit               = 65535
table-definition-cache         = 4096
table-open-cache               = 3000

# INNODB #
innodb-buffer-pool-size        = 12G
innodb-flush-method            = O_DIRECT
innodb-log-files-in-group      = 2
innodb-log-file-size           = 512M
innodb-flush-log-at-trx-commit = 2
innodb-file-per-table          = 1
#innodb_data_file_path          = ibdata1:512M:autoextend

# LOGGING #
#log-queries-not-using-indexes  = 1
#slow-query-log                 = 1
#slow-query-log-file            = /var/lib/mysql/mysql-slow.log


[mysqldump]
quick
single-transaction
max_allowed_packet              = 16M

[mysql]
no_auto_rehash

 ,

skel1
()

HAProxy: проверка бекэнда по разным портам

Привет.

Есть лоад балансер и 2 backend-a (2 сервера с нгинкс+апач+мариадб галера на каждом). В данный момент haproxy проверяет только 80й порт:

frontend www
        bind 192.168.0.1:80
        default_backend ll-backend


backend ll-backend
        balance roundrobin
        mode http
        option http-server-close
        timeout http-keep-alive 3000
        option forwardfor header X-Real-IP
        server s1 192.168.0.10:80 check
        server s2 192.168.0.11:80 check

Можно ли сделать так, чтобы haproxy проверял еще порты 81 (апач) и 3306, т.е. и переключался на рабочий сервер при падении апача и/или мускуля?

 ,

skel1
()

RSS подписка на новые темы