Дополнительная информация по
OpenSwitch

OpenSwitch - это приложение, которое располагается между клиентскими соединениями (такими как ISQL, или любыми приложениями, разработанными с использованием Sybase OpenClient, ODBC, или jConnect для JDBC библиотек) и двумя или более Sybase Adaptive Servers. Этот продукт предоставляет возможности для прозрачного переключения входящих соединений на любые серверные продукты Sybase, такие как Adaptive Server Enterprise, либо другие Sybase Open Server приложения (включая и другой экземпляр OpenSwitch).

OpenSwitch работает в двух режимах - ручном и автоматическом. В ручном режиме администратор сам управляет работой OpenSwitch. В автоматическом - OpenSwitch сам определяет отказ в работе на удаленном сервере Sybase.

OpenSwitch предоставляет средства для маршрутизации и балансировки загрузки серверов и дает возможность работы с любыми решениями высокой готовности (High Availability), предлагаемыми третьей стороной.

Прозрачное переключение клиентских соединений

OpenSwitch управляет всеми соединениями c приложениями. Он анализирует все входящие соединения и преобразует их в выходящие соединения с удаленным Adaptive Server. Для клиентского приложения такое переключение происходит незаметно. При необходимости OpenSwitch переключает выходящее соединение с одного сервера на другой без каких-либо уведомлений о произошедшей ошибке клиентских приложений.

При работе OpenSwitch пытается проследить и сохранить как можно больше информации о состоянии каждого клиентского соединения, с тем, чтобы использовать при необходимости эти сведения для восстановления. Это может быть, например, информация о состоянии базы данных и транзакции. Такое накопление информации позволяет гарантировать, что ни одна транзакция не будет нарушена при активной передаче информации между клиентским приложением и удаленным Adaptive Server.

Такое переключение соединений остается прозрачным (незаметным) для клиентского приложения и не требует специального отключения от сервера перед тем, как соединение будет восстановлено. Клиентское приложение остается в неведении о том, что может происходить переключение с одного сервера на другой при обеспечении равномерной загрузки серверов, из-за отказов в работе, сбоев и т.д.

 

Обнаружение отказов в работе и восстановление

На протяжении существования всего входящего соединения OpenSwitch контролирует несколько наиболее важных аспектов соединения с удаленным Adaptive Server, включая:

Если в какой-либо момент соединение с удаленным Adaptive Server неожиданно прерывается (например, Adaptive Server был выключен или соединение было убито), Open Switch автоматически перенаправит соединение на любой, доступный в данный момент, сервер.

Координация извне

Обычное поведение OpenSwitch при прерванном соединении - это попытка автоматически переключить его на доступный сервер (в соответствии с режимом пула транзакций).

Однако очень часто возникает необходимость управлять процессом переключения, опираясь на определенные бизнес требования. Например, прежде чем осуществить безотлагательное переключение на следующий рабочий сервер, может быть лучше сначала попробовать восстановить соединение с отказавшим сервером и удостовериться, что он действительно не работает; или при одном отказе может лучше сразу перенаправить все соединения на работающий сервер.

Другим важным моментом может быть необходимость координировать процесс переключения с помощью внешнего приложения высокой готовности (таких как Sybase Replication Server или специальные аппаратные решения, предлагаемые поставщиками). При отказе сервера могут быть предприняты различные шаги, свойственные приложениям высокой готовности, например, введение в действие резервного(back-up) сервера, и как необходимый элемент приведения резервного (или другого работающего) сервера в состояние готовности - это синхронизация данных между серверами посредством репликации. Только после всех необходимых шагов синхронизации новое соединение может быть установлено с сервером, данные на котором теперь соответствуют последнему устойчивому состоянию отказавшего сервера.

В таких ситуациях OpenSwitch предусматривает простой API (application programming interface) для разработки внешнего Согласующего Модуля (CM). Пока существует соединение с OpenSwitch, CM будет получать сообщения, содержащие информацию об изменении состояния соединения (например, о попытке пользователя войти в систему или о потере соединения с сервером). Основываясь на полученных сведениях, CM информирует OpenSwitch о необходимых действиях.

Согласованная настраиваемая работа с приложениями высокой готовности

OpenSwitch предоставляет открытый и легко настраиваемый интерфейс, который позволяет согласовать шаги, предпринимаемые при отказе работы, с приложениями высокой готовности, таким как Sybase Replication Server, HP Service Guard, Sun Solstice, Microsoft Wolfpack и т.д. При такой интеграции, OpenSwitch гарантирует, что все транзакции, которые были применены к первичному серверу, будут перенаправлены на резервный сервер. Перед таким переключением резервный сервер будет приведен в рабочее состояние. OpenSwitch гарантирует, что все транзакции будут завершены перед переключением на резервный сервер, после чего будет инициализирована необходимая последовательность действий для приведения системы в рабочее состояние.

За дополнительной информацией обращайтесь в Interface Ltd.


Interface Ltd.

Tel: 7+(095) 135-55-00, 135-25-19
E-mail: mail@interface.ru
http://www.interface.ru
Подготовили: kurmaz@interface.ru
tkachev@interface.ru

Дата: 16.03.2000