У меня есть веб-сайт ASP.Net, который работает в среде с балансировкой нагрузки (2 сервера Windows). Он подключается к кластерной базе данных MySql, которая работает на двух Linux-серверах под управлением Ubuntu.
Мы столкнулись с рядом ошибок при попытке направить данные MySql через наш балансировщик нагрузки JetNexus, поэтому я пытаюсь выяснить, есть ли способ настроить отдельные веб-серверы с помощью какого-то автоматического сервера базы данных. обнаружение отказа. Если бы я использовал MS-SQL, я бы настроил строку подключения с помощью параметра «Отказоустойчивый партнер», но MySql этого не поддерживает. Есть ли что-то подобное или есть альтернативное решение этой проблемы?
Дополнительная информация:
Я использую соединитель MySql 6.4.3, ASP.Net 4.0, MVC 3.0, в базе данных работает кластер MySql 7.1.15a, cluster_server 5.1.
Я попытался указать несколько хостов MySql в файле подключения (используя «сервер = 192.168.0.1 и 192.168.0.2»), и, хотя это работает, оно не обнаруживает автоматически аварийное переключение и аварийно завершает работу, как только я вынимаю один из базы данных.
Я наткнулся на что-то под названием «MySQL Proxy», которое выглядит так, как будто оно должно отвечать всем требованиям, но у нас есть аппаратный балансировщик нагрузки, поэтому я собираюсь потратить время на то, чтобы заставить его работать должным образом, а не внедрять дополнительный программный прокси.
Мы получаем следующие ошибки: «System.IO.EndOfStreamException: Попытка чтения после конца потока». Это происходит периодически, когда мы запускаем MySql через балансировщик нагрузки. Это отдельная проблема и может не иметь отношения к вопросу, но я включил его сюда для полноты картины.
Спасибо за чтение !