СПОСОБ И УСТРОЙСТВО, ПРЕДНАЗНАЧЕННЫЕ ДЛЯ ДВУХЭТАПНОГО ФИКСИРОВАНИЯ ИЗМЕНЕНИЙ ПРИ РАСПРЕДЕЛЕНИИ ДАННЫХ В WEB-ФЕРМЕ Российский патент 2008 года по МПК G01R31/08 

Описание патента на изобретение RU2314547C2

Область техники

Изобретение относится к передаче данных и, в частности, к новой и усовершенствованной системе синхронизации данных Web-фермы.

Предшествующий уровень техники

Web-фермы объединены с Web-сайтами большого объема, поскольку они увеличивают доступность Web-сайтов с помощью распределения задач обработки между несколькими "элементами" Web-фермы.

Фиг.1 представляет схематическую диаграмму Web-фермы 100 предшествующего уровня техники, включающего в себя элементы 1...n. Каждый элемент сконфигурирован таким образом, чтобы работать как Web-сервер, как известно в данной области техники, и может включать в себя процессор 102 и базу 104 данных, предназначенную для сохранения и извлечения данных.

Одной из проблем при реализации Web-фермы является гарантирование того, что файлы данных синхронизированы между всеми элементами Web-фермы. Обычно новые данные представляют одновременно всем элементам Web-фермы 100 через шлюз 106. Для того чтобы Web-сайт работал эффективно, данные, которые передают в Web-ферму, должны быть сохранены в отдельных элементах таким образом, чтобы поддерживалась целостность данных от элемента к элементу. Например, если новые данные, переданные в Web-ферму, представляют нового потребителя, запоминаемого в базе данных потребителей, все элементы Web-фермы должны сохранить данные нового потребителя перед появлением новой транзакции. Если какому-либо элементу Web-фермы не удается запомнить новые данные, целостность будущих транзакций может быть поставлена под угрозу.

В предшествующем уровне техники поняли важность синхронизации данных и делали попытки гарантировать целостность распределенных данных. Например, Web-фермы предшествующего уровня техники могут использовать временную задержку, чтобы дать возможность всем элементам Web-фермы захватить и запомнить новые данные. Однако этот подход имеет определенные недостатки. Такая задержка времени неизбежно налагает ограничение на доступность отдельных элементов Web-фермы и, следовательно, на доступность Web-сайта, управляемого главной машиной, в целом. Кроме того, в течение временной задержки новые данные запоминают в некоторых элементах Web-фермы, в то время как другие элементы захватывают данные. Следовательно, Web-ферма не синхронизирована в течение этого периода времени. Если, по меньшей мере, одному из элементов не удастся синхронизировать новые данные, может потребоваться, чтобы Web-ферма была возвращена в исходное состояние, процесс, посредством которого данные заново восстанавливают в элементах в предыдущем известном состоянии. Возврат в исходное состояние Web-фермы является нежелательной процедурой, которая является утомительной и склонной к ошибкам.

Сущность изобретения

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

В дополнительном аспекте раскрыт способ, предназначенный для синхронизации данных между элементами Web-фермы, включающий в себя этапы, на которых дают команду элементам Web-фермы принять новые данные; определяют, принял ли какой-либо из элементов Web-фермы новые данные неуспешно; дают команду элементам Web-фермы запомнить новые данные, если все элементы Web-фермы приняли новые данные; и дают команду элементам Web-фермы возвратиться к предыдущему множеству данных, если какой-либо из элементов Web-фермы неуспешно принял новые данные.

Также раскрыто синхронизированная Web-ферма. В одном аспекте Web-ферма может включать в себя первичный (основной) элемент Web-фермы, сконфигурированный таким образом, чтобы принимать данные из сервера загрузки приложения; и, по меньшей мере, один резервный элемент Web-фермы, также сконфигурированный таким образом, чтобы принимать данные из сервера загрузки приложения. Первичный элемент Web-фермы может быть сконфигурирован таким образом, чтобы определять, имеются ли новые данные для Web-фермы; переводить Web-ферму в подготовительное состояние, если имеются новые данные; переводить Web-ферму в состояние фиксирования изменений, если элементы Web-фермы успешно примут новые данные; и переводить Web-ферму в состояние преждевременного завершения, если какой-либо из элементов Web-фермы неуспешно примет новые данные.

Краткое описание чертежей

Признаки, задачи и преимущества настоящего изобретения станут более понятными из подробного описания, приведенного ниже, взятого совместно с чертежами, на которых одинаковые ссылочные символы соответственно указаны по всем чертежам и на которых:

фиг.1 представляет схематическую диаграмму Web-фермы предшествующего уровня техники;

фиг.2 представляет схематическую диаграмму одного аспекта Web-фермы, сконфигурированной в соответствии с раскрытием настоящей заявки;

фиг.3 представляет схематическую диаграмму одного аспекта первичного элемента, сконфигурированного в соответствии с настоящим изобретением;

фиг.4 представляет схематическую диаграмму одного аспекта резервного элемента, сконфигурированного в соответствии с настоящим изобретением;

фиг.5 представляет схематическую диаграмму одного аспекта запоминающего элемента, сконфигурированного в соответствии с настоящим изобретением;

фиг.6 представляет блок-схему одного аспекта синхронизации Web-фермы в соответствии с настоящим изобретением;

фиг.7 представляет диаграмму состояния одного аспекта синхронизации Web-фермы в соответствии с настоящим изобретением;

фиг.8 представляет схематическую диаграмму одного аспекта признака Web-фермы поддержки резервирования в соответствии с настоящим изобретением.

Подробное описание

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

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

Изобретение дополнительно относится к машинно-читаемому носителю, на котором сохраняют варианты осуществления настоящего изобретения. Предполагается, что любой носитель, подходящий для запоминания инструкций, связанных с настоящим изобретением, находится в рамках объема настоящего изобретение. В качестве примера, такой носитель может принимать форму магнитного, оптического или полупроводникового носителя.

Настоящее изобретение может быть описано посредством использования блок-схем. Часто будет изображен один экземпляр варианта осуществления настоящего изобретения. Однако, как понятно специалистам в данной области техники, протоколы, процессы и процедуры, описанные в настоящей заявке, могут быть повторены непрерывно или так часто, как необходимо для того, чтобы удовлетворить потребности, описанные в настоящей заявке. Таким образом, представление настоящего изобретения посредством использования блок-схем не должно быть использовано таким образом, чтобы ограничить рамки объема настоящего изобретения.

Примерные варианты осуществления раскрытых устройств и способов могут быть раскрыты в настоящей заявке. Слово "примерный" исключительно используют в настоящей заявке, чтобы означать "служащий в качестве примера, образца или иллюстрации". Любой вариант осуществления, описанный как "примерный вариант осуществления", не должен быть истолкован как обязательно предпочтительный или выгодный по сравнению с другими вариантами осуществления, описанными в данной заявке.

Примерная структура

фиг.2 представляет схематическую диаграмму Web-фермы 200, сконфигурированной в соответствии с настоящим изобретением. Web-ферма 200 может включать в себя первичный (основной) элемент 202 и, по меньшей мере, один резервный элемент 204, причем каждый сконфигурирован таким образом, как будет описано более подробно ниже. Web-ферма также может включать в себя, по меньшей мере, один запоминающий элемент 206.

Предполагается, что различные элементы Web-фермы могут включать в себя аппаратное обеспечение и программное обеспечение, известное в данной области техники, предназначенные для выполнения операционной системы Microsoft Windows, UNIX, LINUX или других требуемых операционных систем, и предпочтительно сконфигурированные таким образом, чтобы выполнять приложения, написанные на языке Java. Машина элемента может содержать автономный компьютер, многопроцессорную машину или сервер, смонтированный в стойке, расположенный вместе с другими серверами в стойке.

Элементы Web-фермы 200 также могут быть сконфигурированы таким образом, чтобы администрировать базу данных, такую как Oracle, используя аппаратное обеспечение и программное обеспечение, как известно в данной области техники. В примерном варианте осуществления элементы Web-фермы 200 также могут быть сконфигурированы таким образом, чтобы сохранять и извлекать данные, принятые в формате расширяемого языка разметки (XML, РЯР).

Элементы Web-фермы 200 предпочтительно сконфигурированы таким образом, чтобы принимать данные из сервера 300 распределения (СР, DS). СР может быть сконфигурирован таким образом, чтобы работать как шлюз транзакций между Web-фермой 200 и внутренней сетью предприятия, содержащего Web-ферму. Чтобы обеспечить функциональную возможность защищенной транзакции, Web-ферма 200 и СР 300 могут взаимодействовать через брандмауер (система защиты доступа) 302 с использованием защищенных протоколов, известных в данной области техники, таких как SSL (уровень защищенных сокетов), через VPN (виртуальная частная сеть).

Каждый элемент Web-фермы 200 ниже раскрыт более подробно

Первичный элемент

Предполагается, что в Web-ферме 200 настоящего изобретения имеется один первичный (основной) элемент 202, который отвечает за синхронизацию различных элементов Web-фермы. Так как каждый элемент фермы в Web-ферме должен представлять состояние данных, первичный элемент 202 работает как администратор распределения и обеспечивает, чтобы все элементы Web-фермы имели множество данных. В примерном варианте осуществления первичный элемент 202 обеспечивает, чтобы все элементы имели один и то же РЯР и файлы пакетов приложений в любой данный момент времени.

Фиг.3 изображает функциональную блок-схему первичного элемента 202, сконфигурированного в соответствии с настоящим изобретением. Первичный элемент 202 включает в себя модуль 302 первичного администратора синхронизации (SyncMG, АдмСинхр), предназначенный для управления планированием и синхронизацией всех данных, таких как РЯР и пакетные файлы, в каждом элементе Web-фермы. Модуль 302 АдмСинхр может быть запрограммирован как приложение Java. Модуль АдмСинхр может выполняться в каждой из машин Web-фермы с использованием виртуальных машин Java для надежности. Первичный модуль 302 АдмСинхр также может быть оперативно соединен с другими элементами Web-фермы 200, чтобы обеспечить управление первичной синхронизацией, как будет описано более подробно ниже.

Первичный администратор 202 также может включать в себя модуль 304 клиента загрузки приложения (AdaCIt, КлтЗпр), предназначенный для загрузки данных из СР 300 согласно фиг.2. Модуль 304 КлтЗпр предпочтительно взаимодействует с СР 300 через брандмауер 302 через HTTPS (протокол защищенной передачи гипертекста), чтобы принимать данные, такие как РЯР и пакетные файлы. Модуль 304 КлтЗпр может быть запрограммирован как приложение Java.

Первичный администратор 202 также может включать в себя сервлет 306 клиента распределения (DistCIt, КлтРаспр), предназначенный для взаимодействия с модулем 304 КлтЗпр. Сервлет 306 КлтРаспр может быть использован элементами Web-фермы для того, чтобы активизировать КлтЗпр 304, чтобы инициировать процесс загрузки и загрузить данные в базу данных 308. Сервлет 306 КлтРаспр может содержать машину сервлетов Java, сконфигурированную таким образом, чтобы запускаться в момент времени начальной загрузки.

Фиг.4 изображает функциональную блок-схему резервного элемента 204, сконфигурированного в соответствии с настоящим изобретением. Резервный элемент 204 также включает в себя модуль 402 АдмСинхр, как описано выше. Однако резервный АдмСинхр 402 предпочтительно оперативно соединен с другими элементами Web-фермы, чтобы обеспечить резервное управление синхронизацией, как будет описано более подробно ниже.

Резервный элемент 204 также может включать в себя модуль 304 КлтЗпр и сервлет 306, как описано выше, предназначенные для приема данных из СР 300. Резервный модуль 204 также включает в себя базу 308 данных, предназначенную для запоминания и извлечения данных, принятых из СР 300, и предпочтительно сконфигурированную таким образом, чтобы запоминать данные, принятые из СР 300, под управлением первичного элемента 202.

Фиг.5 изображает функциональную блок-схему запоминающего элемента 206, сконфигурированного в соответствии с уроками этого раскрытия. Запоминающий элемент 206 предпочтительно сконфигурирован таким образом, чтобы запоминать данные, принятые из СР 300, под управлением первичного элемента 202.

Запоминающий элемент 206 может включать в себя модуль 304 КлтЗпр, сервлет 306 КлтРаспр и базу 308 данных, как описано выше.

Ниже раскрыты различные аспекты работы Web-фермы согласно изобретению.

Работа

Модуль АдмСинхр сконфигурирован таким образом, чтобы реализовывать двухэтапный алгоритм фиксирования, чтобы гарантировать то, что элементы Web-фермы принимают новые данные из центра распределения одновременно.

Фиг.6 представляет блок-схему последовательности операций одного аспекта синхронизации данных в соответствии с настоящим изобретением. Процесс фиг.6 начинают на этапе 600, где дают команду элементам Web-фермы принять новые данные. В одном аспекте изобретения этот этап может быть выполнен с помощью первичного элемента, дающего команду другим элементам Web-фермы считывать данные из сервера распределения.

Процесс продолжают на этапе 602 запроса, где определяют, потерпел ли какой-либо из элементов Web-фермы неудачу в попытке принять новые данные. Если никакой из элементов Web-фермы не потерпел неудачу принять новые данные, элементам Web-фермы может быть дана команда запомнить новые данные на этапе 604.

Однако, если какой-либо из элементов Web-фермы потерпел неудачу в том, чтобы правильно принять новые данные, всем элементам Web-фермы может быть дана команда возвратиться назад к предыдущему множеству данных на этапе 606. Таким образом, если какой-либо элемент Web-фермы не может правильно принять новые данные, все элементы Web-фермы могут возвратить назад к существующему множеству данных.

Следовательно, процесс фиг.6 гарантирует, что либо все элементы Web-фермы принимают новые данные, либо, если какой-либо из элементов Web-фермы неуспешно принял новые данные, никакой из элементов Web-фермы не использует новые данные. Следовательно, процесс согласно фиг.6 может исключить любые несогласованности данных между элементами Web-фермы.

Фиг.7 представляет диаграмму состояния дополнительного аспекта синхронизации данных в соответствии с настоящим изобретением. Процесс согласно фиг.7 начинают, когда Web-ферму переводят в подготовительное состояние. В одном аспекте первичный элемент, как раскрыто выше, может работать как администратор распределения с помощью запрашивания каждого элемента Web-фермы, чтобы загрузить или принять данные из центра распределения. Предполагают, что администратор распределения может периодически контролировать новые данные. Когда новые данные имеются, тогда администратор распределения может перевести Web-ферму в подготовительное состояние.

Предполагается, что в течение подготовительного состояния каждый элемент Web-фермы может запоминать вновь принятые данные во временном информационном архиве, таком как новый файл базы данных.

По-прежнему находясь в подготовительном состоянии, каждый элемент Web-фермы может извещать администратора распределения о состоянии запоминания новых данных, т.е. о том, был ли их процесс приема успешным или нет. Предполагают, что администратор распределения может ждать заранее определенное время, пока все элементы Web-фермы не ответят в течение подготовительного состояния.

Если все элементы Web-фермы ответят с помощью указания, что новые данные успешно запомнены, тогда Web-ферма переходит в состояние фиксирования (изменений). В состоянии фиксирования (изменений) администратор распределения может запросить элементы Web-фермы, чтобы сделать новые данные их постоянными данными. Это может быть выполнено с помощью администратора распределения, запрашивающего, чтобы вновь запомненные данные во временном информационном архиве были сделаны текущими данными.

Если какой-либо из элементов Web-фермы укажет, что новые данные не были успешно запомнены, Web-ферма может быть переведена в состояние преждевременного завершения. В состоянии преждевременного завершения администратор распределения может реализовать действие возврата, при котором подготовительное состояние преждевременно завершают, а временные данные не делают текущими данными. Кроме того, если какому-либо из элементов Web-фермы не удалось ответить в течение заранее определенного количества времени, администратор распределения может определить, что подготовительное состояние истекло, и перевести Web-ферму в состояние преждевременного завершения.

Web-ферма согласно настоящему изобретению также может обеспечить поддержку резервирования в случае, когда откажут первичные элементы. Фиг.8 представляет блок-схему Web-фермы 800, сконфигурированной таким образом, чтобы обеспечивать поддержку резервирования в соответствии с изобретением. Фиг.8 включает в себя первичный элемент 202 и один или более резервных элементов 204, причем каждый сконфигурирован, по существу, как изображено и описано выше.

Фиг.8 дополнительно изображает, что АдмСинхр первичного и резервного элементов могут быть оперативно соединены таким образом, чтобы обеспечить поддержку резервирования. Как раскрыто выше, в Web-ферме имеется только один первичный АдмСинхр, но может быть один или более резервных АдмСинхр 204. Идентичность первичного АдмСинхр может быть заранее определена посредством способов, таких как аппаратная реализация или предварительное программирование, таким образом, гарантируя, что первичный элемент Web-фермы существует при запуске.

Один из резервных элементов 204 может быть сконфигурирован таким образом, чтобы отслеживать первичный элемент 202. В примерном варианте осуществления модуль АдмСинхр резервного элемента 204 может периодически проверять, чтобы гарантировать, что первичный администратор 202 доступен. Если резервный элемент 204 определит, что первичный администратор 202 не доступен, резервный администратор может заключить, что первичный администратор 202 отказал. В дополнительном варианте осуществления резервный администратор может делать заранее определенное число последовательных неуспешных попыток перед заключением, что первичный администратор отказал.

В случае отказа первичного элемента резервный администратор может принять управление Web-фермой, становясь первичным элементом.

Фиг.8 дополнительно изображает, что в случае, когда имеется множество резервных элементов, резервные элементы могут быть сконфигурированы таким образом, чтобы отслеживать друг друга в цепочке из N элементов, где N - число резервных элементов, присутствующих в Web-ферме. В случае множества отказов следующий резервный элемент по порядку будет принимать роль первичного элемента. Следовательно, Web-ферма согласно настоящему изобретению обеспечивает N+1 уровней избыточности, включая начального первичного администратора.

В примерном варианте осуществления последовательность имен главных устройств, записанных в файле конфигурации, может определять, какой резервный АдмСинхр будет принимать первичные выполняемые функции.

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

Предыдущее описание различных вариантов осуществления, которые включают в себя предпочтительные варианты осуществления, предоставлено для того, чтобы дать возможность любому специалисту в данной области техники изготовить или использовать вариант осуществления настоящего раскрытия. Различные модификации этих вариантов осуществления понятны специалистам в данной области техники, а общие принципы, определенные в настоящей заявке, могут быть применимы к другим вариантам осуществления без использования изобретательской способности. Следовательно, настоящее раскрытие не предназначено быть ограниченным вариантами осуществления, раскрытыми в настоящей заявке, а должно соответствовать самому широкому объему, согласуемому с принципами и новыми признаками, раскрытыми в настоящей заявке.

Похожие патенты RU2314547C2

название год авторы номер документа
РАЗВЕРТЫВАНИЕ РЕШЕНИЙ В ФЕРМЕ СЕРВЕРОВ 2006
  • Аммерлан Майкл Х.
  • Тируппати Арулсеелан
  • Руссель Кори Майкл
  • Бэнкстон Джон Кит
RU2417416C2
ПРОГРАММНЫЙ ИНТЕРФЕЙС ПРИЛОЖЕНИЙ ДЛЯ АДМИНИСТРИРОВАНИЯ РАСПРЕДЕЛЕНИЕМ ОБНОВЛЕНИЙ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ В СИСТЕМЕ РАСПРЕДЕЛЕНИЯ ОБНОВЛЕНИЙ 2005
  • Джиамбалво Дэниел
  • Тэйлер Джей
  • Шоуман Кеннет
  • Дейгэн Дэвид
  • Спонхейм Томас А.
  • Джеффериз Ренан
  • Оуэнс Кристофер Дж.
  • Таннер Кэри
  • Ван Цюань
  • Хэмилтон Николь А.
  • Марл Дэннис К.
  • Сой Нирмал Р.
RU2386218C2
УСТРОЙСТВО ОБРАБОТКИ ИНФОРМАЦИИ И СПОСОБ УПРАВЛЕНИЯ ДЛЯ НЕГО 2011
  • Акузава Масао
RU2482536C1
АРХИТЕКТУРА ДЛЯ ПОДКЛЮЧЕНИЯ УДАЛЕННОГО КЛИЕНТА К РАБОЧЕМУ СТОЛУ ЛОКАЛЬНОГО КЛИЕНТА 2004
  • Биллхарз Алан М.
  • Нонис Аарон Дж.
  • Дарнелл Скотт
  • Фишман Нейл С.
  • Дохерти Трейси М.
RU2368945C2
ПОЭТАПНАЯ, ОБЛЕГЧЕННАЯ СИСТЕМА РЕЗЕРВНОГО КОПИРОВАНИЯ 2008
  • Депю Адам
  • Фицджералд Пол
RU2483349C2
АВТОНОМНОЕ ВЫПОЛНЕНИЕ ВЕБ-ПРИЛОЖЕНИЙ 2007
  • Хокинз Джонатан К.
  • Нийоджи Шанку С.
RU2453911C2
СПОСОБ И УСТРОЙСТВО УПРАВЛЕНИЯ КАНАЛАМИ СВЯЗИ ДЛЯ ОБМЕНОВ ДАННЫМИ С БОРТА ЛЕТАТЕЛЬНОГО АППАРАТА 2008
  • Сумье Венсан
  • Работ Эрик
  • Регуби Кристоф
  • Моте Иван
  • Жили Фабьен
  • Кюк Пьер
RU2474050C2
ВЕБ-КАНАЛ, БАЗИРУЕМЫЙ НА ЯЗЫКЕ XML, ДЛЯ ВЕБ-ДОСТУПА УДАЛЕННЫХ ИСТОЧНИКОВ 2009
  • Лондон Кевин Скотт
  • Беншачар Идо
  • Рескусич Рэй
  • Эрдоган Эрсев Самим
  • Хау Травис
RU2503056C2
ОСНОВАННОЕ НА МОДЕЛИ УПРАВЛЕНИЕ КОМПЬЮТЕРНЫМИ СИСТЕМАМИ И РАСПРЕДЕЛЕННЫМИ ПРИЛОЖЕНИЯМИ 2004
  • Макколлум Реймонд В.
  • Паланка Раду Р.
  • Пфеннинг Йорг Т.
  • Саттон Александр М.
  • Браун Марк Р.
RU2375744C2
ТЕХНОЛОГИИ ЗАПИСИ КОНТЕНТА 2004
  • Сандерс Скотт Д.
  • Зигмонд Дэниел Дж.
RU2368094C2

Иллюстрации к изобретению RU 2 314 547 C2

Реферат патента 2008 года СПОСОБ И УСТРОЙСТВО, ПРЕДНАЗНАЧЕННЫЕ ДЛЯ ДВУХЭТАПНОГО ФИКСИРОВАНИЯ ИЗМЕНЕНИЙ ПРИ РАСПРЕДЕЛЕНИИ ДАННЫХ В WEB-ФЕРМЕ

Изобретение относится к передаче данных и, в частности, к усовершенствованной системе синхронизации данных Web-фермы. Технический результат - обеспечение синхронизации файлов данных между всеми элементами Web-фермы. Для этого Web-ферма может включать в себя первичный элемент и, по меньшей мере, один резервный элемент. Элементы Web-фермы могут включать в себя модули, предназначенные для определения того, доступны ли новые данные для Web-фермы; перевода Web-фермы в подготовительное состояние, если новые данные доступны; перевода Web-фермы в состояние фиксирования изменений, если элементы Web-фермы успешно принимают новые данные; и перевода Web-фермы в состояние преждевременного завершения, если какой-либо из элементов Web-фермы неуспешно принимает новые данные. 4 н. и 24 з.п. ф-лы, 8 ил.

Формула изобретения RU 2 314 547 C2

1. Способ синхронизации данных между элементами Web-фермы, причем Web-ферма содержит первичный элемент, по меньшей мере, один резервный элемент и сервер распределения, при этом способ содержит этапы, на которых

определяют в первичном элементе, доступны ли в сервере распределения новые данные для Web-фермы;

если новые данные доступны, в первичном элементе переводят Web-ферму в подготовительное состояние, причем, когда Web-ферма находится в подготовительном состоянии, первичный элемент инициирует выполнение им и каждым резервным элементом следующих действий:

извлечение новых данных с сервера распределения и сохранение извлеченных новых данных во временном хранилище; и

уведомление первичного элемента при успешном сохранении извлеченных новых данных во временном хранилище;

если уведомление первичным элементом и каждым резервным элементом произошло в течение предопределенного промежутка времени с начала подготовительного состояния, первичный элемент переводит Web-ферму в состояние фиксирования изменений, причем, когда Web-ферма находится в состоянии фиксирования изменений, первичный элемент инициирует фиксирование им и каждым резервным элементом извлеченных новых данных; и

если уведомление одним или более из первичного элемента и каждого резервного элемента не произошло в течение предопределенного промежутка времени с начала подготовительного состояния, первичный элемент переводит Web-ферму в состояние преждевременного завершения, причем, когда Web-ферма находится в состоянии преждевременного завершения, первичный элемент инициирует откат им и каждым резервным элементом упомянутых новых данных.

2. Способ по п.1, дополнительно включающий в себя этап, на котором обеспечивают, с помощью упомянутого, по меньшей мере, одного резервного элемента, поддержку преодоления отказов для первичного элемента.3. Способ по п.2, дополнительно включающий в себя этап, на котором периодически проверяют, с помощью упомянутого, по меньшей мере, одного резервного элемента, доступность упомянутого первичного элемента.4. Способ по п.3, дополнительно включающий в себя этап, на котором роль первичного элемента берет на себя заранее определенный один из упомянутых, по меньшей мере, одного резервного элемента Web-фермы, если упомянутый первичный элемент недоступен.5. Способ по п.3, в котором упомянутый, по меньшей мере, один резервный элемент проверяет доступность упомянутого первичного элемента заранее определенное число раз перед принятием на себя роли первичного элемента.6. Способ по п.4, в котором упомянутый, по меньшей мере, один резервный элемент берет на себя роль первичного элемента в заранее определенной последовательности.7. Web-ферма, содержащая

сеть;

первичный элемент, соединенный с упомянутой сетью и выполненный с возможностью принимать данные из сервера распределения, и

по меньшей мере, один резервный элемент, причем каждый резервный элемент соединен с упомянутой сетью и выполнен с возможностью принимать данные из сервера распределения;

при этом упомянутый первичный элемент выполнен с возможностью

определять, имеются ли новые доступные данные для Web-фермы на сервере распределения;

переводить Web-ферму в подготовительное состояние, если новые данные доступны, причем, когда Web-ферма находится в подготовительном состоянии, первичный элемент инициирует выполнение им и каждым резервным элементом следующих действий:

извлечение новых данных с сервера распределения и сохранение извлеченных новых данных во временном хранилище; и

уведомление первичного элемента при успешном сохранении извлеченных новых данных во временном хранилище;

если уведомление первичным элементом и каждым резервным элементом принято в течение предопределенного промежутка времени с начала подготовительного состояния, переводят Web-ферму в состояние фиксирования изменений,

если уведомления от первичного элемента и каждого резервного элемента не приняты первичным элементом в течение предопределенного промежутка времени с начала подготовительного состояния, переводят Web-ферму в состояние преждевременного завершения.

8. Web-ферма по п.7, в которой упомянутый первичный элемент дополнительно выполнен с возможностью неоднократно определять, на периодической основе, доступны ли новые данные для Web-фермы.9. Web-ферма по п.7, в которой первичный элемент и каждый резервный элемент дополнительно выполнен с возможностью реализовывать действие отката данных в случае упомянутого состояния преждевременного завершения.10. Web-ферма по п.7, в которой предопределенный один из резервных элементов дополнительно выполнен с возможностью обеспечивать поддержку преодоления отказа для упомянутого первичного элемента.11. Web-ферма по п.10, в которой упомянутый предопределенный резервный элемент дополнительно выполнен с возможностью периодически проверять доступность упомянутого первичного элемента.12. Web-ферма по п.11, в которой упомянутый предопределенный резервный элемент дополнительно выполнен с возможностью принимать на себя роль первичного элемента, если упомянутый первичный элемент недоступен.13. Web-ферма по п.12, в которой упомянутый предопределенный резервный элемент дополнительно выполнен с возможностью проверять доступность упомянутого первичного элемента заранее определенное число раз перед принятием на себя его роли.14. Web-ферма по п.12, в которой упомянутые резервные элементы дополнительно выполнены с возможностью брать на себя роль упомянутого первичного элемента в заранее определенной последовательности.15. Система синхронизации данных, содержащая

сетевое средство;

средство первичного элемента, соединенное с упомянутым сетевым средством и выполненное с возможностью принимать данные из средства сервера распределения, и

по меньшей мере, одно средство резервного элемента, причем каждое средство резервного элемента соединено с упомянутым сетевым средством и выполнено с возможностью принимать данные из средства сервера распределения;

при этом упомянутое средство первичного элемента содержит

средство определения новых данных для того, чтобы определять, имеются ли новые доступные данные на средстве сервера распределения;

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

извлечение новых данных с средства сервера распределения и сохранение извлеченных новых данных в средстве временного хранения; и

посылку уведомления средству первичного элемента при успешном сохранении извлеченных новых данных в средстве временного хранения;

средство перевода в состояние фиксирования изменений для перевода упомянутой системы в состояние фиксирования изменений, если средство первичного элемента приняло уведомления от средства первичного элемента и каждого средства резервного элемента в течение предопределенного промежутка времени с начала подготовительного состояния, и

средство преждевременного завершения для перевода упомянутой системы в состояние преждевременного завершения, если средство первичного элемента не приняло уведомления от упомянутого средства первичного элемента и каждого средства резервного элемента в течение предопределенного промежутка времени с начала подготовительного состояния.

16. Система по п.15, в которой средство определения новых данных неоднократно и периодически определяет, являются ли новые данные доступными.17. Система по п.15, дополнительно включающая в себя средство возврата, предназначенное для реализации действия отката упомянутых новых данных, когда упомянутая система находится в состоянии преждевременного завершения.18. Система по п.15, дополнительно включающая в себя средство, предназначенное для обеспечения, с помощью предопределенного одного из упомянутых средств резервных элементов, поддержки преодоления отказов для первичного элемента.19. Система по п.18, в которой упомянутое одно предопределенное средство из числа упомянутых средств резервных элементов периодически проверяет доступность упомянутого первичного элемента.20. Система по п.19, в которой упомянутое одно предопределенное средство из числа упомянутых средств резервных элементов берет на себя роль упомянутого средства первичного элемента, если упомянутое средство первичного элемента недоступно.21. Система по п.20, в которой упомянутое одно предопределенное средство из числа упомянутых средств резервных элементов берет на себя роль упомянутого средства первичного элемента только после недоступности упомянутого средства первичного элемента, установленной предопределенное число раз.22. Система по п.20, в которой упомянутое средство резервного элемента сконфигурировано брать на себя роль упомянутого средства первичного элемента в заранее определенной последовательности.23. Машиночитаемый носитель, содержащий команды, которые, когда выполняются компьютером, побуждают компьютер синхронизировать данные в Web-ферме, содержащей первичный элемент, по меньшей мере, один резервный элемент и сервер распределения, при этом упомянутые команды содержат

по меньшей мере, одну команду для определения в первичном элементе, доступны ли в сервере распределения новые данные для Web-фермы;

по меньшей мере, одну команду для перевода Web-фермы в подготовительное состояние в первичном элементе, если новые данные доступны, причем, когда Web-ферма находится в подготовительном состоянии, первичный элемент инициирует выполнение им и каждым резервным элементом следующих действий:

извлечение новых данных с сервера распределения и сохранение извлеченных новых данных во временном хранилище; и

уведомление первичного элемента при успешном сохранении извлеченных новых данных во временном хранилище;

в первичном элементе, если уведомление первичным элементом и каждым резервным элементом произошло в течение предопределенного промежутка времени с начала подготовительного состояния, по меньшей мере, одну команду для перевода Web-фермы в состояние фиксирования изменений, причем, когда Web-ферма находится в состоянии фиксирования изменений, первичный элемент инициирует фиксирование им и каждым резервным элементом извлеченных новых данных; и

в первичном элементе, если уведомление одним или более из первичного элемента и каждого резервного элемента не произошло в течение предопределенного промежутка времени с начала подготовительного состояния, по меньшей мере, одну команду для перевода Web-фермы в состояние преждевременного завершения, причем, когда Web-ферма находится в состоянии преждевременного завершения, первичный элемент инициирует откат им и каждым резервным элементом упомянутых новых данных.

24. Машиночитаемый носитель по п.23, дополнительно включающий в себя, по меньшей мере, одну команду для обеспечения, с помощью предопределенного одного из упомянутых резервных элементов, поддержки преодоления отказов для первичного элемента.25. Машиночитаемый носитель по п.24, дополнительно включающий в себя, по меньшей мере, одну команду для периодической проверки, с помощью упомянутого предопределенного одного из упомянутых резервных элементов, доступности упомянутого первичного элемента.26. Машиночитаемый носитель по п.25, дополнительно включающий в себя, по меньшей мере, одну команду для принятия на себя роли первичного элемента упомянутым заранее определенным одним из упомянутых резервных элементов, если упомянутый первичный элемент недоступен.27. Машиночитаемый носитель по п.25, в котором упомянутый предопределенный один из упомянутых резервных элементов проверяет доступность упомянутого первичного элемента заранее определенное число раз перед принятием на себя роли первичного элемента.28. Машиночитаемый носитель по п.27, в котором упомянутые резервные элементы берут на себя роль первичного элемента в заранее определенной последовательности.

Документы, цитированные в отчете о поиске Патент 2008 года RU2314547C2

US 6269080 В1, 31.07.2001
НОСИТЕЛЬ ЗАПИСИ, СПОСОБ И УСТРОЙСТВО ДЛЯ ЗАПИСИ ИНФОРМАЦИОННЫХ ФАЙЛОВ И УСТРОЙСТВО ДЛЯ ВОСПРОИЗВЕДЕНИЯ ИНФОРМАЦИИ С ТАКОГО НОСИТЕЛЯ ЗАПИСИ 1991
  • Жозеф Мария Карел Тиммерманс[Be]
RU2073913C1
Устройство для обмена данными между оперативной памятью и периферийными устройствами 1990
  • Рымарчук Александр Григорьевич
  • Чеховских Людмила Васильевна
SU1829038A1
US 6137862 А, 24.10.2000
US 6188695 B1, 13.02.2001
US 5991771 А, 23.11.1999.

RU 2 314 547 C2

Авторы

Нгуйен Фил

Даты

2008-01-10Публикация

2003-02-19Подача