Мое приложение состоит из пары серверов Apache, которые общаются с общей коробкой MySQL.Часть приложения позволяет пользователям создавать часовые встречи в будущем.Мне нужен механизм, который не позволяет разным пользователям приходить из разных экземпляров Apache в одно и то же время, заказывать один и тот же час для встреч.Я видел аналогичное решение «межсистемного мьютекса», реализованное в базах данных Oracle (в основном «выберите ... для обновления»), но не рассматривал детали того же, что и с MySQL.Буду признателен за любые советы, ссылки на код или документацию, лучшие практики и т. Д. Попробовал поискать в гугле, но в основном идут дискуссии о внутренних мьютексах MySQL.
Это мои настройки MySQL, которые я считал актуальными (мой код будет иметь try-catch и все, и он никогда не должен запускаться без разблокировки того, что он заблокировал, но должен учитывать и то, что происходит в этих случаях):
mysql> show variables like 'innodb_rollback_on_timeout';
+----------------------------+-------+
| Variable_name | Value |
+----------------------------+-------+
| innodb_rollback_on_timeout | OFF |
+----------------------------+-------+
1 row in set (0.00 sec)
mysql> show variables like 'innodb_lock_wait_timeout';
+--------------------------+-------+
| Variable_name | Value |
+--------------------------+-------+
| innodb_lock_wait_timeout | 100 |
+--------------------------+-------+
1 row in set (0.00 sec)
mysql> select @@autocommit;
+--------------+
| @@autocommit |
+--------------+
| 1 |
+--------------+
1 row in set (0.00 sec)
Какие альтернативные решения (кроме MySQL) вы могли бы порекомендовать?У меня также работает экземпляр memcached, но он довольно часто сбрасывается (и я не уверен, что хочу иметь memcachedb и т. Д., Чтобы сделать его отказоустойчивым).
Ценю вашу помощь ...