понятно, то есть оптимальное решение с failover такое что надо приложению обращаться всегда к одному ip на haproxy но с делением на порты
1111 - запись
2222- чтение
дальше haproxy будет сам направлять куда нужно.
Т.е в приложении нужно обязательно разделить типы процедур на чтение и запись и дальше направлять на разные порты haproxy
разделить процедуры которые пишут или читают и направлять их соответственно на один мастер или слейвы.
Значит каждая нода postgres базы должна хранить всегда одинаковый набор процедур.
Если вдруг отказывает мастер - получается надо по всем базам менять процедуры которые обращаются к мастеру? если мастером станет другой хост...... после восстановления упавшего мастера он пусть становится слейвом, чтобы повторно не изменять процедуры...
Две виртуалки производительности не прибавят, поэтому лучше по одной виртуалке с галерой на каждом сервере и ещё одна виртуалка на другом сервере с арбитратором.
A1estro: тут дело в том что есть только два физических сервера. Две виртуалки галеры на каждом севрере делаю не с целью производительности, а с целью отказоустойчивости кластера
если я сделаю по 1 галере базе на каждом сервере.
А вот арбитратор куда пихать тогда? третьего сервера нет
Если арбитратор будет на одном из серверов где есть галера нода. То если выйдет из строя тот сервер где будет пара арбитратор+галера, то не будет работать снова
проблема в том как организовать этот расчет. (перебирать строчки последовательно, предварительно отсортировав по времени данные?)
То есть например два раза проходить по этим данным: 1) первый раз искать последовательность вход, выход и вычитать "время выхода минус время входа." 2) второй перебор данных это искать сначала данные где будет первый раз встречаться слово "выход" а следующее идет "вход" и делать вычет между временем "время входа минус время выхода"
такая запись не работает..
if ($uri ~ "/article/[0-9]+-([-\w]+)/[0-9]+-([-\w]+)") {
rewrite ^/article/[0-9]+-([-\w]+)/[0-9]+-([-\w]+) /$1/$2 redirect;
}
if ($uri ~ "/article/[0-9]+-([-\w]+)/[0-9]+-([-\w]+)/[0-9]+-([-\w]+)") {
rewrite /article/[0-9]+-([-\w]+)/[0-9]+-([-\w]+)/[0-9]+-([-\w]+) /tender/$1/$2/$3 redirect;
}
есть такая утилита backupPC - в ней и нужно настраивать
просто искать файлы и удалять их не вариант - т.к удалиться много чего лишнего