СТРУКТУРА РАСШИРЯЕМОЙ И ПРОГРАММИРУЕМОЙ СЛУЖБЫ С НЕСКОЛЬКИМИ АРЕНДАТОРАМИ Российский патент 2012 года по МПК G06F15/16 

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

УРОВЕНЬ ТЕХНИКИ

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

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

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

СУЩНОСТЬ ИЗОБРЕТЕНИЯ

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

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

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

КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ

На Фиг.1 изображен пример модели службы с одним арендатором;

на Фиг.2 изображен пример модели службы с несколькими арендаторами;

на Фиг.3 изображена расширяемая архитектура службы с несколькими арендаторами по вариантам осуществления;

на Фиг.4 изображены примерные компоненты части службы организации службы с несколькими арендаторами;

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

на Фиг.6 изображен пример сетевой среды, в которой можно реализовать варианты осуществления;

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

на Фиг.8 изображена логическая схема для процесса предоставления клиенту службы с несколькими арендаторами.

ПОДРОБНОЕ ОПИСАНИЕ ИЗОБРЕТЕНИЯ

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

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

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

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

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

В подобной типичной платформе с одним арендатором клиент 102 получает доступ к данным и деловым приложениям, относящимся к единственному арендатору, который обслуживается web-службой 106 через сети 104 передачи данных. Хотя сети 104 передачи данных могут являться сетью Интернет, обычно они являются сочетанием корпоративных сетей передачи данных. Поскольку данной службой обслуживается единственный арендатор, то идентификация, безопасность и другие предварительные операции могут выполняться самой службой, а не с использованием сторонней службы. Местоположение служб обычно не меняется, хотя избыточность и некоторые операции балансировки нагрузки могут предусматривать использование нескольких серверов и/или кластеров серверов.

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

На Фиг.2 показан пример модели 200 службы с несколькими арендаторами. В обслуживании с несколькими арендаторами платформа деловых приложений размещает службы для нескольких организаций. Для доступа к данным и приложениям, относящимся к одной или нескольким организациям, любое число клиентов 202 может вызывать web-службу 206 через сети 204 передачи данных, которые в данном случае скорее будут сетями Интернет или сочетанием различных сетей.

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

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

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

На Фиг.3 показан пример расширяемой архитектуры 300 службы с несколькими арендаторами по вариантам осуществления. Платформу 320 деловых приложений, выполненную в виде программного обеспечения как службы, в соответствии с вариантами осуществления можно реализовать на различных узлах с возможностью размещения данных и приложений нескольких организаций на одном узле. Каждый из узлов установки платформы 320 может быть сильно расширяемым, тем самым способствуя высокой производительности и доступности служб. Данные узлы можно размещать в сети Интернет или в корпоративных сетях.

В соответствии с некоторыми вариантами осуществления для идентификации пользователей (клиента 302) каждой организации возможно использование данной службой службы идентификации, предоставленной доверенной третьей стороной (например, службы 312 мандатов). Независимые подключаемые службы идентификации также можно использовать в режиме работы в сетях Интернет или корпоративных сетях. В соответствии с другими вариантами осуществления доступ к данным и работе каждой организации можно ограничивать на основе ролей безопасности и привилегиях, а также членстве в организации.

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

Служба 322 обнаружения предоставляет службы по идентификации и обнаружению организации, позволяющие клиенту 302 регистрироваться в платформе 320 и обнаруживать все организации, членом которых он/она является. Служба 322 обнаружения может предоставлять подробные данные конфигурации о каждой организации, в том числе их местонахождение в платформе для прямого доступа и другую конфигурационную информацию. Конфигурационная информация может сохраняться и извлекаться из хранилища 324 конфигураций. Пользователь (клиент) может быть членом одной или нескольких организаций, размещенных на узле. Служба 322 обнаружения может работать в нескольких режимах идентификации. Каждый режим идентификации может иметь собственную выделенную конечную точку, позволяющую клиенту установить, какую идентификацию следует использовать.

Согласно дополнительным вариантам осуществления каждая конечная точка API может обслуживать несколько организаций. Каждый вызов API может определить целевую организацию, к которой предполагается обратиться. Служба 322 обнаружения может использовать хранилище 324 конфигураций для извлечения конфигурационных данных организации. Можно позволить администратору доступ и поддержку хранилища 324 конфигураций.

Данные и работы организации можно поместить во множество расширяемых групп (места службы 1, 2, и так далее), доступных в пределах кластера 330 службы платформы 320. Местоположение организации может меняться и перемещаться между расширяемыми группами с целью балансировки нагрузки. Расширяемая модель службы с несколькими арендаторами является динамической в том смысле, что она может определять местонахождение искомой организации даже после перемещения. Каждое место службы (332, 334...) может включать в себя один или несколько виртуальных или физических серверов, предоставляющих службы.

На Фиг.4 изображены примерные компоненты участка службы организации службы с несколькими арендаторами. Как упоминалось выше, расширяемые кластеры 430 серверов являются ядром расширяемой платформы программного обеспечения как службы с несколькими арендаторами. В соответствии с некоторыми вариантами осуществления кластеры 430 серверов могут включать в себя группу виртуальных или физических web-серверов 431, принимающих запросы клиентов, обрабатывающих синхронные запросы, и управляющих базами 433 данных организаций. Клиенту можно назначить отдельный сервер из web-серверов 431 посредством случайного выбора, в соответствии с предопределенным алгоритмом (например, алгоритмом балансировки нагрузки) или как-нибудь иначе. Базы 433 данных организаций могут включать в себя физические или виртуальные хранилища данных для каждой организации (или арендатора), обслуживаемой платформой. Например, система финансовых служб может включать в себя отдельные базы данных для каждой участвующей организации (банка и так далее), которые хранят информацию о счетах, информацию о доступе к счетам и так далее. Информацию о индивидуальных базах данных, их конфигурации, любой избыточности и тому подобное можно хранить в хранилище 324 конфигураций, показанном на Фиг.3.

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

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

На Фиг.5 изображена схема действий, иллюстрирующая взаимодействие между клиентом и компонентами службы с несколькими арендаторами во время работы. Взаимодействия на диаграмме 500 действий иллюстрируют пример работы на определенных этапах. Взаимодействия в платформе с несколькими арендаторами в соответствии с вариантами осуществления могут включать в себя различные обмены с меньшим числом или дополнительными этапами, а также с другим порядком взаимодействий.

В соответствии с примером работы клиент 504 начинает вызов путем запроса у службы 506 обнаружения политики узла. Служба 506 обнаружения посылает в ответ политику узла, которая может идентифицировать необязательную службу 502 мандатов (например, для идентификации). Если используется необязательная служба 502 мандатов, клиент 504 может послать службе 504 мандатов запрос мандата и принять мандат, если регистрационные данные клиента подтверждены для доступа к запрашиваемой организации (арендатору).

Затем клиент 504 присылает службе 506 обнаружения запрос мандата узла вместе с мандатом службы, принятым от службы 502 мандатов. Служба 506 обнаружения посылает в ответ список местонахождений объектов запрашиваемых организаций и другую конфигурационную информацию (схему и так далее). Следующим этапом клиент 504 может осуществить доступ к целевым организациям с помощью служб 508 организаций, используя местоположение и конфигурационную информацию, предоставленную службой 506 обнаружения. Как было показано ранее, местоположение служб организаций может меняться из-за расширения, балансировки нагрузки и так далее. Служба 506 обнаружения может посылать клиенту обновления, содержащие информацию об изменениях в местонахождении, так что доступ клиента к службам организаций может продолжаться непрерывно.

Масштабируемые системы с несколькими арендаторами и их работа, описанная с Фиг.3 по Фиг.5, являются примером для наглядности. Систему для расширяемых служб с несколькими арендаторами можно реализовать с дополнительным или меньшим числом компонентов и действий, используя принципы, описанные в настоящем документе.

На Фиг.6 изображен пример сетевой среды, в которой можно реализовать варианты осуществления. Расширяемые системы службы с несколькими арендаторами можно реализовать посредством распределения по ряду физических и виртуальных клиентов и серверов. Их также можно реализовать в некластерных системах или кластерных системах, применяющих ряд узлов, связанных одной или несколькими сетями передачи данных (например, сетью(ями) 610).

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

В сетевой системе с несколькими арендаторами запросы на доступ могут приходить от арендаторов с использованием индивидуальных клиентских устройств 602-606 или сервера 608 приложений. Подобную систему также можно реализовать в виде одного или нескольких серверов (например, серверов 612, 614), вызываемых клиентскими устройствами (или приложениями). Один или несколько web-серверов (физических или виртуальных), таких как сервер 612, могут принимать запросы и направлять их к соответствующему ресурсу. Данные ресурсы могут включать в себя расширяемые кластеры серверов с синхронным или асинхронным сервером, базы данных организаций и другие компоненты.

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

Сеть(и) 610 передачи данных могут включать в себя защищенную сеть передачи данных, такую как сеть предприятия, незащищенную сеть, такую как открытая беспроводная сеть или сеть Интернет. Сеть(и) 610 передачи данных предоставляют обмен данными между узлами, описанными в настоящем документе. С целью примера, а не ограничения, сеть(и) 610 передачи данных может включать в себя проводные среды передачи данных, такие как проводные сети или прямые проводные соединения, беспроводные среды передачи данных, такие как звуковые, радиочастотные, инфракрасные и другие беспроводные среды передачи данных.

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

Фиг.7 и связанное с ней пояснение предназначены для предоставления краткого, общего описания подходящей вычислительной среды, в которой можно реализовать варианты осуществления. Со ссылкой на Фиг.7 показана блок-схема примерной вычислительной операционной среды, такой как вычислительное устройство 700. В базовой конфигурации данное вычислительное устройство 700 может являться сервером, предоставляющим службы по управлению, связанные с расширяемой службой с несколькими арендаторами и обычно включает в себя, по меньшей мере, один процессор 702 и системное запоминающее устройство 704. Вычислительное устройство 700 также может включать в себя множество процессоров, взаимодействующих при исполнении программ. В зависимости от точной конфигурации и вида вычислительного устройства системное запоминающее устройство 704 может быть энергозависимой (такой, как ОЗУ), энергонезависимой (такой, как ПЗУ, флэш-память и так далее) или их сочетанием. Системное запоминающее устройство 704 обычно содержит в себе операционную систему 705, подходящую для управления работой сетевого персонального компьютера, такую как операционные системы WINDOWS® производства корпорации Microsoft из Редмонда, штат Вашингтон. Системное запоминающее устройство 704 также может содержать в себе одно или несколько программных приложений, такие как программные модули 706, web-службы 722, службу 724 обнаружения в составе web-служб 722 и необязательную службу 726 определения местоположения.

Web-служба 722 может быть отдельным приложением или встроенным модулем размещенной платформы службы с несколькими арендаторами, предоставляющей данные и обрабатывающей службы клиентского приложения, относящегося к вычислительному устройству 700. Служба 724 обнаружения может предоставлять местоположение и конфигурационную информацию, относящуюся к индивидуальным службам организации (арендатора) клиенту, запрашивающему доступ к этой организации. Необязательная служба 726 установления местонахождения может предоставлять службы, относящиеся к определению назначения службы и того, какие базы данных использовать для web-служб, а также асинхронной обработки серверов, как было описано ранее. Эта базовая конфигурация показана на Фиг.7 посредством компонентов в пределах пунктирной линии 708.

Вычислительное устройство 700 может иметь дополнительные признаки или функциональные возможности. Например, вычислительное устройство 700 может также включать в себя дополнительные устройства хранения данных (съемные и/или несъемные), такие как, например, магнитные диски, оптические диски или лента. Подобное дополнительное запоминающее устройство показано на Фиг.7 с помощью съемного запоминающего устройства 709 и несъемного запоминающего устройства 710. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или по любой технологии для хранения информации, такой как машиночитаемые команды, структуры данных, программные модули или другие данные. Системное запоминающее устройство 704, съемное запоминающее устройство 709 и несъемное запоминающее устройство 710 - все являются примерами компьютерных носителей данных. Компьютерные носители данных включают в себя, но не ограничиваются этим: ОЗУ, ПЗУ, ЭСППЗУ, флэш-память или другие технологии накопления информации, CD-ROM, универсальные цифровые диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитные ленты, накопители на магнитных дисках, или другие магнитные запоминающие устройства, или любые другие носители, которые можно использовать для хранения желаемой информации и к которым может обратиться вычислительное устройство 700. Любой подобный компьютерный носитель данных может являться частью устройства 700. Вычислительное устройство 700 также может иметь устройство(а) 712 ввода, такие как клавиатура, мышь, перо, устройство голосового ввода, устройство сенсорного ввода и так далее. Устройство(а) 714 вывода, такие как устройство отображения, колонки, принтер и так далее, также может входить в состав. Данные устройства хорошо известны в данной области техники и не требуют продолжительного описания в настоящем документе.

Вычислительное устройство 700 также может содержать коммуникационные соединения 716, позволяющие устройству обмениваться данными с другими вычислительными устройствами 718, например, посредством беспроводной сети передачи данных в распределенной вычислительной среде, например корпоративной сети или сети Интернет. Другие вычислительные устройства 718 могут включать в себя сервер(ы), исполняющие приложения, относящиеся к службе определения местонахождения или другим службам. Коммуникационное соединение 716 является единичным примером средств связи. Средства связи обычно можно осуществить посредством машиночитаемых команд, структур данных, программных модулей или других данных в модулированном сигнале передачи данных, таком как несущая волна или другой механизм переноса, и включают в себя любые средства доставки информации. Термин "модулированный сигнал передачи данных" обозначает сигнал, одна или несколько характеристик которого были установлены или изменены таким образом, чтобы закодировать информацию в данный сигнал. С целью примера, а не ограничения, средства связи включают в себя проводные среды передачи данных, такие как проводные сети или прямые проводные соединения, беспроводные среды передачи данных, такие как звуковые, радиочастотные, инфракрасные и другие беспроводные среды передачи данных. Для целей настоящего документа термин "машиночитаемый носитель" включает в себя как средства хранения данных, так и средства связи.

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

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

На Фиг.8 показана логическая схема для процесса 800 предоставления клиенту расширяемой службы с несколькими арендаторами. Процесс 800 можно реализовать как часть платформы деловых приложений программного обеспечения как службы.

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

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

В операции 806 определяется местоположение запрашиваемой службы организации. Обработка перемещается от операции 806 к операции 808, где местоположение данной службы организации предоставляется клиенту для доступа. Также вместе с информацией о местоположении может предоставляться дополнительная конфигурационная информация. После операции 808 обработка переходит к операции 810 выбора.

В операции 810 выбора совершается определение, изменялось ли местонахождение службы организации по причине расширения, балансировки нагрузки и так далее. Если определено изменение в местоположении, обработка переходит к операции 812. Иначе обработка переходит к процессу вызова для дальнейших действий.

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

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

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

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

название год авторы номер документа
Автоматизированная информационная система для размещения расширяемых служб с множеством арендаторов и субъектов (потребителей) 2019
  • Рубцова Анастасия Надеровна
RU2737601C2
МЕЖ-ОБЛАЧНОЕ УПРАВЛЕНИЕ И УСТРАНЕНИЕ НЕПОЛАДОК 2012
  • Айер Каннан К.
  • Уотсон Эрик Б.
RU2604519C2
СЕТЕВЫЕ КОММЕРЧЕСКИЕ ТРАНЗАКЦИИ 2006
  • Джонсон Брюс Э.
  • Вебстер-Лэм Чунг
RU2402814C2
Web-СЛУЖБА ДЛЯ ОБНАРУЖЕНИЯ УДАЛЕННЫХ ПРИЛОЖЕНИЙ 2004
  • Брокуэй Тэд Деннис
  • Лейтман Роберт К.
RU2359314C2
КОНТЕКСТ УСТОЙЧИВОЙ АВТОРИЗАЦИИ НА ОСНОВЕ ВНЕШНЕЙ АУТЕНТИФИКАЦИИ 2008
  • Мауэрс Дэвид Р.
  • Дубровкин Дэниэл
  • Лейбэн Рой
  • Шмидт Дональд И.
  • Висванатан Рэм
  • Брезак Джон И.
  • Уорд Ричард Б.
RU2390838C2
КЭШИРОВАНИЕ В ПАМЯТИ СОВМЕСТНО ИСПОЛЬЗУЕМЫХ НАСТРАИВАЕМЫХ ДАННЫХ МНОЖЕСТВА АРЕНДАТОРОВ 2008
  • Льюис Эллиот
  • Грюэл Джей
  • Смертин Андрей
  • Виджаярагхаван Махеш
  • Отт Майкл Джеймс
RU2458399C2
КОНТЕКСТ УСТОЙЧИВОЙ АВТОРИЗАЦИИ НА ОСНОВЕ ВНЕШНЕЙ АУТЕНТИФИКАЦИИ 2003
  • Мауэрс Дэвид Р.
  • Дубровкин Дэниэл
  • Лейбэн Рой
  • Шмидт Дональд И.
  • Висванатан Рэм
  • Брезак Джон И.
  • Уорд Ричард Б.
RU2337399C2
ИНТЕРФЕЙСЫ ДЛЯ ПРИКЛАДНОГО ПРОГРАММИРОВАНИЯ ДЛЯ КУРИРОВАНИЯ КОНТЕНТА 2014
  • Григорович Александр В.
  • Литтл Роберт А.
RU2666302C2
УПРАВЛЯЕМОЕ ПОЛИТИКАМИ ДЕЛЕГИРОВАНИЕ УЧЕТНЫХ ДАННЫХ ДЛЯ ЕДИНОЙ РЕГИСТРАЦИИ В СЕТИ И ЗАЩИЩЕННОГО ДОСТУПА К СЕТЕВЫМ РЕСУРСАМ 2007
  • Медвинский Геннадий
  • Илак Кристиан
  • Хагиу Костин
  • Парсонз Джон Э.
  • Фатхалла Мохамед Эмад Эль Дин
  • Лич Пол Дж.
  • Камель Тарек Бухаа Эль-Дин Махмуд
RU2439692C2
СИСТЕМА УПРАВЛЕНИЯ И ДИСПЕТЧЕРИЗАЦИИ КОНТЕЙНЕРОВ 2019
  • Синх, Дипак
  • Суарес, Энтони Джозеф
  • Серстон, Уильям Эндрю
  • Айтал, Анирудх Балачандра
  • Гердесмайер, Дэниэл Роберт
  • Кемп, Эуан Скайлер
  • Медури, Киран Кумар
  • Азад, Мухаммад Умер
RU2751576C2

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

Реферат патента 2012 года СТРУКТУРА РАСШИРЯЕМОЙ И ПРОГРАММИРУЕМОЙ СЛУЖБЫ С НЕСКОЛЬКИМИ АРЕНДАТОРАМИ

Изобретение относится к области платформ деловых приложений с несколькими арендаторами. Техническим результатом является предоставление расширяемой платформы деловых приложений с несколькими арендаторами, выполненной в виде программного обеспечения как службы, для размещения нескольких организаций. Службы организации предоставлены посредством виртуальных или физических серверов с выделенными хранилищами данных, собранными в масштабируемые группы. Распределенное взаимодействие между компонентами данных масштабируемых групп может способствовать расширяемости и надежности, кроме того, клиенту(ам) предоставляются изменения в местоположении служб организаций для непрерывного продолжения доступа клиента к данным службам. Также в данную платформу можно встроить настраиваемые пользователем и динамические API для доступа к каждым данным и приложениям организации изолированно от других и подключаемые службы идентификации, предоставленные третьей стороной. 3 н. и 17 з.п. ф-лы, 8 ил.

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

1. Способ, выполняемый, по меньшей мере, частично на вычислительном устройстве и предназначенный для предоставления расширяемой платформы служб с множеством арендаторов, содержащий этапы, на которых:
принимают запрос на доступ от клиента, причем каждый клиент среди множества клиентов ассоциирован с по меньшей мере одной службой организации, размещенной на данной платформе;
определяют местоположение службы организации, причем множество служб организации собраны в масштабируемые группы в упомянутой платформе;
предоставляют клиенту местоположение службы организации для обеспечения возможности доступа к службе организации;
в случае изменения местоположения службы организации во время доступа, предоставляют клиенту измененное местоположение для непрерывного доступа клиента к службе организации; и
автоматически генерируют множество динамических и выделенных интерфейсов прикладного программирования (API), сконфигурированных для предоставления доступа к упомянутому множеству служб организации, так чтобы данные и приложения, ассоциированные со службой организации, были изолированы от других служб организации, причем данное множество API выполнены с возможностью одного из добавления и удаления службы организации.

2. Способ по п.1, дополнительно содержащий этап, на котором выполняют аутентификацию клиента до предоставления местоположения службы организации, используя одно из интегрированной службы аутентификации и сторонней службы аутентификации.

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

4. Способ по п.2, дополнительно содержащий этап, на котором предоставляют множество режимов аутентификации, причем каждый режим аутентификации включает в себя выделенную конечную точку, так что клиент имеет возможность задать желаемый режим аутентификации.

5. Способ по п.1, дополнительно содержащий этап, на котором предоставляют клиенту конфигурационную информацию, относящуюся к доступу клиента к запрашиваемой службе организации.

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

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

8. Система для размещения расширяемых служб с множеством арендаторов, включающая в себя:
службу обнаружения, сконфигурированную:
принимать запрос на доступ от клиента, ассоциированного с по меньшей мере одной службой организации, размещенной в данной системе,
определять местоположение запрашиваемой по меньшей мере одной службы организации и
предоставлять клиенту местоположение этой по меньшей мере одной службы организации для обеспечения возможности доступа к данной по меньшей мере одной службе организации;
множество масштабируемых кластеров служб, сконфигурированных предоставлять упомянутую по меньшей мере одну службу организации;
хранилище конфигураций, ассоциированное со службой обнаружения и выполненное с возможностью хранить информацию о конфигурации и местоположении, относящуюся к упомянутому множеству кластеров служб, так что изменение в местоположении упомянутой по меньшей мере одной службы организации во время доступа клиента к этой по меньшей мере одной службе организации предоставляется клиенту для непрерывного доступа клиента к данной по меньшей мере одной службе организации; и
множество динамических и выделенных интерфейсов прикладного программирования (API), сконфигурированных для предоставления доступа к упомянутой по меньшей мере одной службе организации, так чтобы данные и приложения, ассоциированные с этой по меньшей мере одной службой организации, были изолированы от других служб организации, причем это множество API являются автоматически генерируемыми и выделенными, так что данное множество API выполнены с возможностью одного из добавления и удаления службы организации.

9. Система по п.8, в которой служба обнаружения и кластеры служб предоставляются в виде web-служб.

10. Система по п.8, в которой служба обнаружения дополнительно сконфигурирована для аутентификации клиента, применяя множество режимов аутентификации посредством подключаемой службы аутентификации.

11. Система по п.8, в которой упомянутые API являются индивидуализированно настраиваемыми, так что пользователю с допуском разрешено добавлять в выбранную службу организации по меньшей мере одно из индивидуализированного объекта и индивидуализированной операции.

12. Система по п.8, в которой упомянутые API сконфигурированы обеспечивать пользователям с допуском возможность выполнять действия, включающие в себя:
изменение данных, ассоциированных со службой организации,
определение одного из процесса и логики, ассоциированных со службой организации;
вызов одного из процесса и логики, ассоциированных со службой организации; и
изменение одного из процесса и логики, ассоциированных со службой организации.

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

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

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

16. Машиночитаемое устройство хранения информации, в котором сохранены машиноисполняемые команды, которыми при их исполнении компьютером осуществляется способ предоставления расширяемой платформы служб с множеством арендаторов, содержащий этапы, на которых:
принимают запрос на доступ от клиента, ассоциированного с по меньшей мере одной службой организации, размещенной на данной платформе, причем этот запрос включает в себя учетные данные клиента;
определяют список служб организации, доступных клиенту, на основе учетных данных клиента;
предоставляют клиенту список служб организации;
принимают запрос на доступ к по меньшей мере одной службе организации из данного списка;
определяют местоположение этой по меньшей мере одной запрашиваемой службы организации, причем службы организации в списке служб организации предоставляются посредством масштабируемых кластеров служб, размещенных на упомянутой платформе;
предоставляют клиенту местоположение упомянутой по меньшей мере одной службы организации для обеспечения возможности доступа к данной службе организации; и
в случае изменения местоположения упомянутой по меньшей мере одной службы организации во время доступа, предоставляют клиенту измененное местоположение для непрерывного доступа клиента к этой по меньшей мере одной службе организации; и
автоматически генерируют множество динамических и выделенных интерфейсов прикладного программирования (API), причем эти API сконфигурированы для предоставления доступа к упомянутой по меньшей мере одной службе организации, причем данное множество API выполнены с возможностью одного из добавления и удаления службы организации.

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

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

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

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

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

Способ обработки целлюлозных материалов, с целью тонкого измельчения или переведения в коллоидальный раствор 1923
  • Петров Г.С.
SU2005A1
Способ приготовления мыла 1923
  • Петров Г.С.
  • Таланцев З.М.
SU2004A1
Пломбировальные щипцы 1923
  • Громов И.С.
SU2006A1
СЕРВЕР И СПОСОБ (ВАРИАНТЫ) ОПРЕДЕЛЕНИЯ ПРОГРАММНОГО ОКРУЖЕНИЯ КЛИЕНТСКОГО УЗЛА В СЕТИ С АРХИТЕКТУРОЙ КЛИЕНТ/СЕРВЕР 1999
  • Дуурсма Мартин
  • Панасюк Анатолий
  • Унгерман Энтони
  • Педерсен Брэдли Джей
  • Дэвис Том С. Iii
  • Блумфилд Марк А.
  • Сиралдо Роберт
RU2237275C2

RU 2 463 652 C2

Авторы

Джанедиттакарн Акезит

Дос Сантос Роберто Адлич

Ганаи-Сикани Араш

Отт Майкл Джеймс

Даты

2012-10-10Публикация

2008-04-01Подача