TWI473029B - 可延伸及可程式化之多租戶服務結構 - Google Patents

可延伸及可程式化之多租戶服務結構 Download PDF

Info

Publication number
TWI473029B
TWI473029B TW097112680A TW97112680A TWI473029B TW I473029 B TWI473029 B TW I473029B TW 097112680 A TW097112680 A TW 097112680A TW 97112680 A TW97112680 A TW 97112680A TW I473029 B TWI473029 B TW I473029B
Authority
TW
Taiwan
Prior art keywords
service
organization
client
access
platform
Prior art date
Application number
TW097112680A
Other languages
English (en)
Other versions
TW200847055A (en
Inventor
傑尼第塔卡仁阿奇夏
簡安伊西肯尼阿瑞許
歐特麥可詹姆士
多士善東斯羅伯多亞地里許
Original Assignee
微軟公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 微軟公司 filed Critical 微軟公司
Publication of TW200847055A publication Critical patent/TW200847055A/zh
Application granted granted Critical
Publication of TWI473029B publication Critical patent/TWI473029B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/563Data redirection of data network streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Description

可延伸及可程式化之多租戶服務結構
本發明係關於可延伸及可程式化之多租戶服務結構。
為快速回應顧客需求、更快地將產品投放市場、增加整體獲利能力,及持續地在競爭中勝出,人們做出了許多商務努力。靈活性(即因應此等共有的市場挑戰之能力)依靠穩固的商務應用程式技術平臺。為實現商務靈活性,需要一多方面、智慧型軟體基礎結構,其設計用於應用程式整合。
商務應用程式平臺通常為單租戶,表示其僅可為單個組織主控應用程式,且所有平臺資源僅專用於該組織。此等平臺通常係藉由顧客主控且在其公司辦公場所內安裝及部署。部著及維護此平臺之成本可能很高,且投資回報率未最佳化。
另一方面,設計及管理多租戶系統自身面臨挑戰。在一實際多租戶系統中,每一客戶端可具有一不同結構描述以用於連接至其組織。此外,每一客戶端可連接至多個組織,致使此等系統之管理於安全性、訊務管理、可靠性、及擴充性態樣變成一非常複雜之任務。
本「發明內容」以一簡化形式介紹一組選定概念,在下文之「實施方式」中將進一步對其進行描述。本「發明內容」無意用於識別所主張標的之關鍵特徵或基本特徵, 亦非意欲作為判定所主張標的範圍之一輔助。
具體實施例旨在為服務來自單個平臺的多個組織,提供一可延伸、多租戶軟體即服務模型。根據具體實施例之一平臺可包含一搜尋服務,其用於向客戶端提供與藉由該平臺主控之組織服務之一位置及組態相關聯之資訊。然後,讓該客戶端能夠存取該等組織服務,其可主控於可調整叢集中。可將位置變更提供給該(等)客戶端,以便該客戶端不中斷地存取該(等)所請求服務。
藉由閱讀以下實施方式及檢視該等關聯圖式,將可明白此等及其他特徵及優點。應瞭解,上述一般說明及以下「實施方式」均僅係說明性的,而非作為所主張態樣之限制。
如以上所簡要描述,可提供一可延伸多租戶商務應用程式平臺,其使用一搜尋服務及可調整伺服器叢集。在以下實施方式中,將引用形成其一部分之隨附該等圖式,圖中藉由圖解說明之方式顯示特定具體實施例或實例。在不背離本揭示案之精神或範疇的情況下,此等態樣可加以組合,亦可使用其他態樣,且可進行結構變更。因此,以下實施方式不應從限制性意義之角度來理解,且本發明之範疇係藉由該等隨附申請專利範圍及其等效項界定。
儘管以下將在結合一應用程式執行之程式模組之一般上下文中描述該等具體實施例(該應用程式運行於一個人電腦上之一作業系統中),但熟知該項技藝者將認識到亦可 結合其他程式模組實施這些態樣。
大體上,程式模組包含常式、程式、組件、資料結構,及執行特定任務或實施特定抽象資料類型之其他類型的結構。此外,熟知該項技藝者將瞭解可使用其他電腦系統組態實踐具體實施例,其他電腦系統組態包含手持式裝置、多處理器系統、基於微處理器的或可編程消費型電子產品、迷你電腦、大型電腦、等等。具體實施例亦可實踐於分散式計算環境中,其中任務係藉由透過一通信網路連結之遠端處理裝置執行。在一分散式計算環境中,程式模組可位於區域及遠端記憶體儲存裝置中。
具體實施例可作為一電腦過程(方法)、一計算系統而實現,或作為一製造物件,諸如一電腦程式產品或電腦可讀媒體而實現。該電腦程式產品可為一電腦系統可讀之電腦儲存媒體,並對一電腦程式指令編碼以便執行一電腦過程。該電腦程式產品亦可為一載體上之一計算系統可讀之傳播訊號,並對一電腦程式指令編碼以便執行一電腦過程。
請參照第1圖,其圖示一實例單租戶服務模型之圖表100。如上所述,典型商務應用程式平臺之可程式性架構係單租戶式,且適合於企業內部主控之應用程式。
在此類典型單租戶平臺中,客戶端102通過網路104存取與藉由網頁服務106主控之單一租戶相關聯之資料及商務應用程式。儘管網路104可為網際網路,但其通常為一企業內部網路類型之網路組合。由於單租戶是藉由該服務主控,驗證、安全性,及其他預先操作可藉由該服務本 身執行,而不使用一第三方服務。儘管冗餘及某些負載平衡操作可能涉及使用多個伺服器及/或伺服器叢集,但該等服務之位置通常不會變更。
因此,一單租戶系統中之操作相對而言較為簡單直接。然而,在當今之商務世界中,許多組織偏好將其商務應用程式平臺委外給可提供有效、低成本,且可靠的服務之實體。為了精簡其商務模型及有效地利用其資源,此等實體可能偏好為多個組織主控服務。此外,某些客戶端可與多個組織相關聯,在此情況下客戶端通過單個聯絡點存取所有組織將變得有意義。
第2圖說明一實例多租戶服務模型200。在一多租戶服務中,一商務應用程式平臺為多個組織主控服務。任意數量之客戶端202可通過網路204調入網頁服務206,在此情況下,網路204更可能為網際網路或各種網路之一組合,以存取與一或多個組織相關聯之資料及應用程式。
網頁服務206可執行管理服務,並將客戶端導向至組織特定之網頁服務208。此外,網頁服務206可執行驗證、安全性檢查,及類似預先服務,並視需要可使用第三方服務。組織特定之網頁服務208可包含可調整叢集,其中個別組織的操作可因負載平衡及其他原因而移動。網頁服務206可監視此等變更,並因此重新導向該呼叫客戶端,以便該變更對該客戶端透明。
客戶端可為簡單型客戶端或複雜型客戶端,在簡單型客戶端之情況下可視需要藉由第三方應用程式提供其他服 務。不同客戶端可使用不同結構描述存取不同服務。某些服務亦可共用該等結構描述。
在第2圖中之架構(第1圖中者亦然)係圖解說明軟體即服務平臺之一概述。為了簡化,僅圖解說明了基本組件。在具體實施中,此等系統包含許多具有特定任務及通信方法之組件。以下提供根據具體實施例之此一平臺之更詳細討論。
第3圖說明根據具體實施例之一可延伸多租戶服務結構300。根據具體實施例之一軟體即服務商務應用程式平臺320可實施於不同站點中,且能夠在每一站點中主控多個組織的資料及應用程式。該平臺320之每一站點安裝係高度可調整,以促成服務之高效能及可用性。該站點可主控於網際網路上或於內部網路上。
根據某些具體實施例,該服務可使用一可選受信任第三方驗證服務,以用於驗證每一組織(例如票據服務312)之使用者(客戶端302)。獨立插入式驗證服務亦可用於網際網路或企業內部網路模式。根據其他具體實施例,可基於安全性角色和特權及組織成員身份,限制對每一組織的資料及操作之存取。
根據某些具體實施例,每一組織的資料及應用程式可與其他資料及應用程式隔離,並可通過一組專用API來存取。該等API可使開發人員能夠從遠端通過網際網路存取及修改商務資料,以及定義/調用/修改商務處理及邏輯。該等API可自動產生及動態產生,以便無論何時,只要一 新組織被添加至或移除自該平臺,該等API即可自動調整。該等API亦可為可自訂,以允許獨立於其他組織單獨將自訂物件及操作添加至每一組織。
搜尋服務322提供驗證及組織搜尋服務,以使一客戶端302能夠登入該平臺320,並搜尋他/她係其一成員之所有組織。搜尋服務322可提供有關每一組織之詳細組態資料,包含其在該平臺內之位置(以便直接存取),及其他組態資訊。該組態資訊可被儲存於及擷取自組態儲存器324中。一使用者(客戶端)可以是主控於一站點中之一或多個組織之一成員。該搜尋服務322可以多種驗證模式操作。每一驗證模式可具有其自己的專用端點,以使該客戶端能夠指定應使用何種驗證。
根據又一種具體實施例,每一API端點可服務多個組織。對該等API之每一呼叫可識別意欲到達之目標組織。該搜尋服務322可使用組態儲存器324來擷取組織的組態資料。一管理者可被啟用以存取及維護該組態儲存器324。
組織資料及操作可放置於在該平臺320之一服務叢集330內可用之複數個可調整組中(服務位置1、2等)。一組織的位置可因負載平衡目的而變更及在該等可調整組之間移動。該可延伸多租戶服務模型在某種意義上係動態的,其意義在於可定位該目標組織,甚至在一移動之後亦可定位。每一服務位置(332、334…)可包含一或多個虛擬或實體伺服器,以提供該等服務。
第4圖說明一多租戶服務之一組織服務部分之若干實 例組件。如上所述,可調整伺服器叢集430位於一可延伸多租戶軟體即服務平臺之核心位置。根據某些具體實施例,伺服器叢集430可包含一組虛擬或實體網路伺服器431,該等網路伺服器接收該客戶端請求、處理同步請求,並管理對組織資料庫433之存取。可藉由隨機選擇、根據一預定義演算法(例如一負載平衡演算法),諸如此類,將網路伺服器431中之一特定伺服器指派給該客戶端。組織資料庫433可包含針對藉由該平臺所服務的每一組織(或租戶)之實體或虛擬資料儲存。舉例而言,一財務服務系統可包含針對每一參與的金融組織(銀行等)之單獨資料庫,資料庫中儲存帳戶資訊、帳戶存取資訊等等。有關該等個別資料庫、其組態、任何冗餘諸如此類之資訊可被儲存於第3圖之組態儲存器324中。
根據其他具體實施例,一定位器服務(未顯示)可提供有關哪一(些)資料庫可藉由該等網路伺服器使用之資訊。網路伺服器433亦可將不同步服務請求放置於一佇列中,該佇列將藉由不同步伺服器435結合組織資料庫433進行處理。當一客戶端請求顯示在該佇列時中,可聯絡該等不同步伺服器435之一者以便處理該請求。在該等不同步伺服器與該等個別組織資料庫之間之一關係可為一分散式關係,其中每一伺服器可處理該等資料庫之任一者。在該等不同步伺服器與該等組織資料庫之間之此分散式互動可提供以下能力:當一伺服器發生故障時,藉由允許該等資料庫連接至另一可用伺服器,來自動從在該等不同步處 理機器中之故障恢復。
由於同步及不同步工作之獨立分散及在該等伺服器與該等資料庫之間之互動,該等伺服器叢集430之任何部分均可調整。因此,可提供該等伺服器(及/或資料庫)之多個實施例,以解決增加之工作量、其他組織、資料容量等等。
第5圖係一動作圖表,其圖解說明在操作期間一客戶端與一多租戶服務之組件之間之互動。在動作圖表500中之該等互動圖解說明一具有特定步驟之實例操作。根據具體實施例之一多租戶平臺中之互動可包含具有較少的或其他步驟,以及具有一不同互動順序之不同交換。
根據該實例操作,客戶端504藉由自搜尋服務506請求一站點策略來啟動一呼叫。搜尋服務506使用該站點策略進行回應,該站點策略可識別一可選票據服務502(例如以便驗證)。如果使用該可選第三方票據服務502,客戶端504可將一票據請求發送至該票據服務502,且如果該客戶端的憑證被確認可存取一所請求組織(租戶),則接收該服務票據。
然後客戶端504將一站點票據請求連同來自票據服務502之該服務票據提交至搜尋服務506。搜尋服務506使用該站點票據進行回應。然後,客戶端504可提交一所請求組織清單,對此搜尋服務506使用該等所請求組織之位置之清單及其他組態資訊(結構描述等)進行回應。隨後,客戶端504可使用藉由該搜尋服務506提供之該位置及組 態資訊,通過組織服務508存取該目標組織。如上所示,組織服務之位置可能由於縮放、負載平衡等等原因而變更。搜尋服務506可使用該變更之位置資訊更新該客戶端,以便該客戶端對該組織服務的存取可以無縫方式繼續。
第3圖至第5圖中說明之該等可調整多租戶系統及操作係例示性的,以用於說明之目的。一用於可延伸多租戶服務系統可實施為具有其他或較少的組件及操作,其使用本文所述該等原理。
第6圖係一實例網路環境,可於其中實施具體實施例。可以一分散式方式在若干實體及虛擬客戶端及伺服器上實施可延伸多租戶服務系統。其亦可使用跨越一或多個網路(例如網路610)通信之若干節點,實施於非叢集系統或叢集系統中。
此類系統可包括伺服器、客戶端、網際網路服務提供者,及通信媒體之任何拓樸。同時,該系統可具有一靜態或動態拓樸。該術語"客戶端"可指一客戶端應用程式,或一客戶端裝置。儘管一實施可延伸多租戶服務之網路系統可更涉及許多組件,但結合此圖形僅討論其中之相關者。
存取請求可來自在一網路多租戶系統中使用個別客戶端裝置602至606或應用程式伺服器608之租戶。此類系統亦可實施於一或多個伺服器(例如伺服器612、614)中,並由該等客戶端裝置(或應用程式)存取。諸如網路伺服器612之一或多個網路伺服器(實體或虛擬)可接收該等請求,並將其導向至該適當資源。該資源可包含具有同步 及不同步伺服器、組織資料庫,及其他組件之可調整伺服器叢集。
組織資料庫可具體實施於單個資料儲存中,諸如資料儲存618或分散至若干資料儲存。專用資料庫伺服器(例如資料庫伺服器616)可用於協調在一或多個此類資料儲存中之資料擷取及儲存。
網路610可包含一安全網路(諸如一企業網路)、一非安全網路(諸如一無線開放式網路),或網際網路。網路610提供本文所述該等節點之間之通信。藉由實例之方式,且不限於此,網路610可包含有線媒體(諸如一有線網路或直接連線的連接),及無線媒體(諸如聲頻、射頻、紅外及其他無線媒體)。
許多其他組態之計算裝置、應用程式、資料來源、資料分散系統可用於實施一可延伸多租戶服務平臺。此外,第6圖中討論之該等網路環境僅係出於說明目的。具體實施例並不限於該等實例應用程式、模組或過程。
第7圖及其關聯討論係意欲提供對一其中可實施具體實施例之適當計算環境之一簡單、一般說明。參考第7圖,圖解說明了一實例計算操作環境(諸如計算裝置700)之方塊圖。在一基本組態中,該計算裝置700可為一伺服器,其提供與一可延伸多租戶服務相關聯之管理服務,且通常包含至少一處理單元702及系統記憶體704。計算裝置700亦可包含在執行程式中協力之複數個處理單元。根據計算裝置之精確組態及類型,該系統記憶體704可為揮發性(諸 如隨機存取記憶體)、非揮發性(諸如唯讀記憶體、快閃記憶體等)或此二者之某些組合。系統記憶體704通常包含一作業系統705,其適合於控制一網路個人電腦之操作,諸如來自華盛頓州雷蒙德市微軟公司之WINDOWS操作系統。該系統記憶體704亦可包含一或多個軟體應用程式,諸如程式模組706、網頁服務722、網頁服務722內之一搜尋服務724,及一可選的定位器服務726。
網頁服務722可為一單獨應用程式,或一主控之多租戶服務平臺之一整合模組,其向與計算裝置700相關聯之客戶端應用程式提供資料及處理服務。搜尋服務724可將與個別組織(租戶)服務相關聯之位置及組態資訊,提供給一請求存取此等資訊之客戶端。可選定位器服務726可提供與判定該服務之目的及哪些資料庫用於網路伺服器以及不同步處理伺服器相關聯之服務,如前所述。在第7圖中,藉由虛線708內之彼等組件圖解說明此基本組態。
該計算裝置700可具有其他特徵或功能。舉例而言,該計算裝置700亦可包含其他資料儲存裝置(可移除及或不可移除),舉例而言,諸如磁碟、光碟或磁帶。第7圖中,藉由可移除儲存器709及不可移除儲存器710圖解說明此類其他儲存器。電腦儲存媒體可包含以任何方法或技術實施以用於儲存資訊之揮發性及非揮發性、可移除及不可移除媒體,該等資訊諸如電腦可讀指令、資料結構、程式模組,或其他資料。系統記憶體704、可移除儲存器709及不可移除儲存器710均係電腦儲存媒體之實例。電 腦儲存媒體包含,但並不限於,隨機存取記憶體、唯讀記憶體、電子可抹除唯讀記憶體、快閃記憶體或其他記憶體技術、唯讀光碟機、通用數位光碟(DVD)或其他光儲存器、磁帶盒、磁帶、磁碟儲存器或其他磁儲存裝置,或可用於儲存所需資訊並可藉由計算裝置700存取之任何其他媒體。任何此類電腦儲存媒體可係裝置700之一部分。計算裝置700亦可具有輸入裝置712,諸如鍵盤、滑鼠、筆、語音輸入裝置、觸摸輸入裝置等等。亦可包含諸如一顯示器、揚聲器、印表機等等之輸出裝置714。此等裝置在此項技術中已為吾人所熟知,且無須在此詳細討論。
該計算裝置700亦可含有通信連接716,其允許該裝置諸如通過一分散式計算環境中之一無線網路(舉例而言,一企業內部網路或網際網路)與其他計算裝置718通信。其他計算裝置718可包含執行與一位置服務或其他服務相關聯之應用程式的(若干)伺服器。通信連接716係通信媒體之一實例。通信媒體通常可藉由電腦可讀指令、資料結構、程式模組、或一調變資料訊號(諸如一載波或其他傳輸機制)中之其他資料具體實施,且包含任何資訊提供媒體。該術語"調變資料訊號"表示一訊號,其以一方式設定或變更其一或多個特性,以便在該訊號中編碼資訊。藉由實例之方式,且不限於此,通信媒體包含有線媒體(諸如一有線網路或直接連線的連接),及無線媒體(諸如聲頻、射頻、紅外及其他無線媒體)。如在此所使用之該術語"電腦可讀媒體"同時包含儲存媒體及通信媒體。
本文所主張之標的亦包含方法。該等方法可以任意數量之方式(包含本文件中說明之該等結構)實現。一此類方式係藉由在本文件中所說明類型裝置之機器操作。
另一可選方式係一或多個該等方法之該個別操作,其將結合一或多個操作員執行某些操作而執行。此等操作員無須相互搭配,但每一者可僅針對一執行該程式之一部分之機器。
第8圖說明過程800之邏輯流程圖,該過程800將可延伸多租戶服務提供給一客戶端。過程800可作為一軟體即服務商務應用程式平臺之一部分而實現。
過程800以操作802開始,其中自一客戶端與該等客戶端憑證一起接收一存取一或多個組織之請求。如上所述,一多租戶主控服務之客戶端通常係與若干組織或租戶相關聯,其中每一者具有一服務,該服務包含該系統內之一專用資料庫。在接收該請求之前,該客戶端可視需要使用一第三方驗證服務。處理自操作802前進至判定操作804。
在判定橾作804處,判定該客戶端是否通過驗證。該判定亦可包含檢查該(等)所請求組織是否藉由該多租戶服務平臺主控。如果該客戶端通過驗證,該過程前進至操作806。否則,處理移至一呼叫過程以執行進一步動作。
在操作806處,判定該所請求組織服務之一位置。處理自操作806移動至操作808,其中將該組織服務之該位置提供給該客戶端以便存取。亦可與該位置資訊一起提供 其他組態資訊。操作808之後,處理移至判定操作810。
在判定操作810處,判定該組織服務之該位置是否由於縮放、負載平衡等等原因而變更。如果判定該位置發生變更,則處理移至操作812。否則,處理移至一呼叫過程以執行進一步動作。
在操作812處,將該組織服務之該位置變更提供給該客戶端,以便該客戶端對該服務的存取可以無縫方式繼續。操作812之後,處理移至一呼叫過程以便進一步動作。
包含於過程800中之該等操作係出於說明目的。將可延伸多租戶服務提供給一客戶端可藉由具有較少或其他步驟以及以不同操作順序之類似過程實施,其使用本文中所所述之該等原理。
以上說明、示例及資料為該等具體實施例組合之製造及使用提供了一完整說明。儘管已經以特定於結構特徵及/或方法行為之語言描述了該標的,但應瞭解在隨附申請專利範圍中界定之該標的不必限於上述該等特定特徵或步驟。相反地,上述特定特徵及步驟之揭示僅作為實施該等申請專利範圍及具體實施例之示例。
100‧‧‧實例單租戶服務圖表
102‧‧‧客戶端
104‧‧‧網路
106‧‧‧網頁服務
200‧‧‧實例多租戶服務模型
202‧‧‧客戶端
204‧‧‧網路
206‧‧‧網頁服務
208‧‧‧用於多個租戶之組織
特定的網頁服務
300‧‧‧可延伸多租戶服務結構
302‧‧‧客戶端
312‧‧‧票據服務
320‧‧‧商務應用程式平臺
322‧‧‧搜尋服務
324‧‧‧組態儲存器
330‧‧‧伺服器叢集
332‧‧‧服務位置1
334‧‧‧服務位置3
430‧‧‧伺服器叢集
431‧‧‧網頁服務
433‧‧‧組織資料庫
435‧‧‧不同步服務
500‧‧‧動作圖表
502‧‧‧票據服務
504‧‧‧客戶端
506‧‧‧搜尋服務
508‧‧‧組織服務
602‧‧‧客戶端裝置
604‧‧‧客戶端裝置
606‧‧‧客戶端裝置
608‧‧‧應用程式伺服器
610‧‧‧網路
612‧‧‧伺服器
614‧‧‧伺服器
616‧‧‧資料庫伺服器
618‧‧‧資料儲存
700‧‧‧計算裝置
702‧‧‧處理單元
704‧‧‧系統記憶體
705‧‧‧作業系統
706‧‧‧程式模組
708‧‧‧組件
709‧‧‧可移除儲存器
710‧‧‧不可移除儲存器
712‧‧‧輸入裝置
714‧‧‧輸出裝置
716‧‧‧通信連接
718‧‧‧其他計算裝置
722‧‧‧網頁服務
724‧‧‧搜尋服務
726‧‧‧定位器服務
第1圖說明一實例單租戶服務模型;第2圖說明一實例多租戶服務模型;第3圖說明根據具體實施例之一可延伸多租戶服務結構;第4圖說明一多租戶服務之一組織服務部分之實例組 件;第5圖係一動作圖表,其圖解說明在操作期間一客戶端與一多租戶服務之組件之間之互動;第6圖係一實例網路環境,其中可實施具體實施例;第7圖係一可於其中實施具體實施例之實例計算操作環境之方塊圖;及第8圖說明一將可延伸多租戶服務提供給一客戶端之過程之邏輯流程圖。
100‧‧‧實例單租戶服務圖表
102‧‧‧客戶端
104‧‧‧網路
106‧‧‧網頁服務

Claims (20)

  1. 一種將至少部分地在一計算裝置中執行以提供一可延伸多租戶服務平臺之方法,該方法包括下列步驟:自一客戶端接收一存取請求(request for access),其中在複數個客戶端中的每一客戶端與由該平臺所主控之至少一個組織服務相關聯;判定一組織服務之一位置,其中複數個組織服務被組織成該平臺內之可調整組(scalable groups);將該組織服務之該位置提供給該客戶端,以允許對該組織服務之存取;如果該組織服務之該位置在該存取期間發生變更,則將該變更位置提供給該客戶端作為對該組織服務之該客戶端的繼續存取;及自動地產生複數個動態與專用(dynamic and dedicated)應用程式編程介面(APIs),該等複數個動態與專用應用程式編程介面經配置以提供對該等複數個組織服務之存取,以便將關聯於該組織服務的資料和應用程式與在該等複數個組織服務中的其他組織服務相隔離,其中該等複數個API適合於一組織服務之一增加及一移除中之一者。
  2. 如申請專利範圍第1項所述之方法,更包括:在提供該組織服務之該位置之前,使用一整合驗證服務及一第三方驗證服務之一者來驗證該客戶端。
  3. 如申請專利範圍第2項所述之方法,其中該客戶端對所請求組織服務之存取係基於以下一組方式之至少一者 而被限制:客戶端連接之一安全性狀態、一客戶端憑證、及一組織成員身份。
  4. 如申請專利範圍第2項所述之方法,更包括:提供複數個驗證模式,其中每一驗證模式包含一專用端點(endpoint),以便該客戶端能夠指定一所需驗證模式。
  5. 如申請專利範圍第1項所述之方法,更包括:向與對該所請求組織服務的該客戶端的存取相關聯之該客戶端提供配置資訊。
  6. 如申請專利範圍第1項所述之方法,其中該等可調整組係經配置,以允許與由該平臺所主控之組織服務相關聯的應用程式之一垂直及一水平可擴充性。
  7. 如申請專利範圍第1項所述之方法,其中該平臺被佈置以針對由該平臺所主控之組織服務來提供中繼資料存取。
  8. 一種用於主控可延伸多租戶服務之系統,該系統包括:一搜尋服務,其經配置以:自與由該系統所主控之至少一個組織服務相關聯之一客戶端來接收一存取請求;判定該至少一個所請求組織服務之一位置;及將該至少一個組織服務之該位置提供給該客戶端,以允許對該至少一個組織服務之存取;複數個可調整服務叢集(clusters),其經配置以提供該至少一個組織服務; 與該搜尋服務相關聯之一配置儲存(configuration store),該配置儲存被佈置以儲存與該等複數個服務叢集相關聯之配置及位置資訊,以便將在對該至少一個組織服務之該客戶端的存取期間發生的該至少一個組織服務之該位置之一變更提供給該客戶端作為對該至少一個組織服務之該客戶端的繼續存取;及複數個專用應用程式編程介面(APIs),該等複數個專用應用程式編程介面經配置以提供對該至少一個組織服務之存取,以便將關聯於該至少一個組織服務的資料和應用程式與其他組織服務相隔離,其中該等複數個專用API是自動地產生且動態的,以便該等複數個API適合於一組織服務之一增加及一移除中之一者。
  9. 如申請專利範圍第8項所述之系統,其中該搜尋服務及該等服務叢集係作為網頁服務而被提供。
  10. 如申請專利範圍第8項所述之系統,其中該搜尋服務更經組態以通過一可插入(pluggable)驗證服務使用複數個驗證模式來驗證該客戶端。
  11. 如申請專利範圍第8項所述之系統,其中該等API係為可自定的,以便讓具有權限之一使用者能夠將一自定物件及一自定操作中之至少一者增加至一選定組織服務。
  12. 如申請專利範圍第8項所述之系統,其中該等API係經配置以允許具有權限之使用者執行動作,該等動作包含以下項目:修改與一組織服務相關聯之資料; 定義與該組織服務相關聯之一過程及一邏輯中之一者;調用與該組織服務相關聯之一過程及一邏輯中之一者;及修改與該組織服務相關聯之一過程及一邏輯中之一者。
  13. 如申請專利範圍第8項所述之系統,其中該等服務叢集包含複數個網路伺服器、組織資料庫與非同步處理伺服器,其經配置以用一分散式方式來進行互動。
  14. 如申請專利範圍第13項所述之系統,其中該等複數個網路伺服器、組織資料庫、及非同步處理伺服器之至少一部分係虛擬的。
  15. 如申請專利範圍第13項所述之系統,其中提供該等複數個網路伺服器、組織資料庫、及非同步處理伺服器之多個實例(instances),以允許可調整性、負載平衡、及故障恢復。
  16. 一種於其上儲存電腦可執行指令之電腦可讀取儲存裝置,當由一電腦執行該等指令時,實施用於提供一可延伸多租戶服務平臺的一方法,該方法包括下列步驟:自一客戶端接收一存取請求,該客戶端與由該平臺所主控之至少一個組織服務相關聯,其中該請求包含該客戶端之一憑證;基於該客戶端的憑證來判定對該客戶端為可用之組織服務之一清單; 將該組織服務清單提供給該客戶端;接收對來自該清單的該至少一個組織服務之一存取請求;判定該至少一個所請求組織服務之一位置,其中在該組織服務清單中的組織服務係由該平臺所主控之可調整服務叢集所提供;將該至少一個組織服務之該位置提供給該客戶端,以允許對該組織服務之存取;及如果該至少一個組織服務之該位置在該存取期間發生變更,則將該變更位置提供給該客戶端作為對該至少一個組織服務之該客戶端的繼續存取;及自動地產生複數個動態與專用應用程式編程介面(APIs),該等複數個API經配置以提供對該至少一個組織服務之存取,該等複數個API適合於一組織服務之一增加及一移除中之一者。
  17. 如申請專利範圍第16項所述之電腦可讀取儲存裝置,其中該方法更包括以下步驟:針對由該客戶端所請求之每一組織服務,使用至少一個驗證模式來對該客戶端進行驗證。
  18. 如申請專利範圍第16項所述之電腦可讀取儲存裝置,其中該方法更包括以下步驟:向與對該所請求組織服務的該客戶端的存取相關聯之該客戶端提供配置資訊。
  19. 如申請專利範圍第16項所述之電腦可讀取儲存裝 置,其中該等可調整服務叢集係經配置,以允許與由該平臺所主控之至少一個組織服務相關聯的應用程式之一垂直及一水平可擴充性。
  20. 如申請專利範圍第16項所述之電腦可讀取儲存裝置,其中該平臺被佈置以針對由該平臺所主控之該至少一個組織服務來提供中繼資料存取。
TW097112680A 2007-04-13 2008-04-08 可延伸及可程式化之多租戶服務結構 TWI473029B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/787,134 US8019812B2 (en) 2007-04-13 2007-04-13 Extensible and programmable multi-tenant service architecture

Publications (2)

Publication Number Publication Date
TW200847055A TW200847055A (en) 2008-12-01
TWI473029B true TWI473029B (zh) 2015-02-11

Family

ID=39854989

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097112680A TWI473029B (zh) 2007-04-13 2008-04-08 可延伸及可程式化之多租戶服務結構

Country Status (10)

Country Link
US (4) US8019812B2 (zh)
EP (1) EP2156308B1 (zh)
JP (2) JP2010526358A (zh)
KR (1) KR101279740B1 (zh)
CN (1) CN101657804B (zh)
BR (1) BRPI0809083B1 (zh)
ES (1) ES2709436T3 (zh)
RU (1) RU2463652C2 (zh)
TW (1) TWI473029B (zh)
WO (1) WO2008127871A1 (zh)

Families Citing this family (83)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070050471A1 (en) * 2005-08-31 2007-03-01 Microsoft Corporation Portable Remoting Component With A Scaleable Feature Set
US8019812B2 (en) 2007-04-13 2011-09-13 Microsoft Corporation Extensible and programmable multi-tenant service architecture
WO2010024027A1 (ja) * 2008-08-28 2010-03-04 日本電気株式会社 仮想サーバシステム及び物理サーバ選択方法
US8255490B1 (en) * 2008-10-22 2012-08-28 Amazon Technologies, Inc. Dynamic service-oriented architecture using customization code
US20100262632A1 (en) * 2009-04-14 2010-10-14 Microsoft Corporation Data transfer from on-line to on-premise deployment
US20100286992A1 (en) * 2009-05-08 2010-11-11 Microsoft Corporation Integration of Third-Party Business Applications with Hosted Multi-Tenant Business Software System
US20100318609A1 (en) * 2009-06-15 2010-12-16 Microsoft Corporation Bridging enterprise networks into cloud
US20100325139A1 (en) * 2009-06-18 2010-12-23 Microsoft Corporation Service Provider Management Console
US8561055B2 (en) * 2009-10-15 2013-10-15 Blackberry Limited Method, system and apparatus for management of push content
EP2320376A1 (en) * 2009-11-06 2011-05-11 Research In Motion Limited Method, system and apparatus for management of push content when changing computing devices
US8505034B2 (en) 2009-12-17 2013-08-06 Amazon Technologies, Inc. Automated service interface optimization
US8645550B2 (en) 2010-02-18 2014-02-04 Microsoft Corporation Database virtualization
US9178947B2 (en) * 2010-03-03 2015-11-03 Blackberry Limited Method, system and apparatus for configuring a device for interaction with a server
EP2363998B1 (en) * 2010-03-03 2015-01-07 BlackBerry Limited Method, system and apparatus for managing push data transfers
US8489708B2 (en) 2010-04-06 2013-07-16 Microsoft Corporation Virtual application extension points
US8370905B2 (en) 2010-05-11 2013-02-05 Microsoft Corporation Domain access system
US20110302265A1 (en) * 2010-06-03 2011-12-08 Microsoft Corporation Leader arbitration for provisioning services
US8539078B2 (en) * 2010-07-08 2013-09-17 International Business Machines Corporation Isolating resources between tenants in a software-as-a-service system using the estimated costs of service requests
US8904511B1 (en) 2010-08-23 2014-12-02 Amazon Technologies, Inc. Virtual firewalls for multi-tenant distributed services
US8751656B2 (en) 2010-10-20 2014-06-10 Microsoft Corporation Machine manager for deploying and managing machines
US8417737B2 (en) 2010-10-20 2013-04-09 Microsoft Corporation Online database availability during upgrade
US8386501B2 (en) * 2010-10-20 2013-02-26 Microsoft Corporation Dynamically splitting multi-tenant databases
US8799453B2 (en) 2010-10-20 2014-08-05 Microsoft Corporation Managing networks and machines for an online service
US9304614B2 (en) * 2010-10-20 2016-04-05 Salesforce.Com, Inc. Framework for custom actions on an information feed
US9075661B2 (en) 2010-10-20 2015-07-07 Microsoft Technology Licensing, Llc Placing objects on hosts using hard and soft constraints
US20120109947A1 (en) * 2010-11-02 2012-05-03 BrightEdge Technologies Multi-tenant analytics processing
US8850550B2 (en) 2010-11-23 2014-09-30 Microsoft Corporation Using cached security tokens in an online service
KR20120062514A (ko) * 2010-12-06 2012-06-14 한국전자통신연구원 SaaS 환경에서의 권한 관리 장치 및 방법
CN102012989B (zh) * 2010-12-07 2013-11-27 江苏风云网络服务有限公司 软件即服务中基于门限与密钥的授权方法
US9721030B2 (en) 2010-12-09 2017-08-01 Microsoft Technology Licensing, Llc Codeless sharing of spreadsheet objects
US8762795B2 (en) 2010-12-17 2014-06-24 Microsoft Corporation Alerting recipients to errors occurring when accessing external services
US10019503B2 (en) 2010-12-22 2018-07-10 Microsoft Technology Licensing, Llc Database transfers using constraint free data
US20120174092A1 (en) * 2010-12-29 2012-07-05 Wolfgang Faisst Integrated commercial infrastructure and business application platform
CN102103637A (zh) * 2011-01-24 2011-06-22 上海银杏界信息科技有限公司 SaaS软件数据模型的实现方法
US8903884B2 (en) * 2011-02-21 2014-12-02 Microsoft Corporation Multi-tenant services gateway
US8667024B2 (en) * 2011-03-18 2014-03-04 International Business Machines Corporation Shared data management in software-as-a-service platform
US9652469B2 (en) 2011-06-04 2017-05-16 Microsoft Technology Licensing, Llc Clustered file service
US8627431B2 (en) 2011-06-04 2014-01-07 Microsoft Corporation Distributed network name
US9652790B2 (en) * 2011-06-17 2017-05-16 International Business Machines Corporation Open data marketplace for municipal services
US8671407B2 (en) 2011-07-06 2014-03-11 Microsoft Corporation Offering network performance guarantees in multi-tenant datacenters
US8856518B2 (en) 2011-09-07 2014-10-07 Microsoft Corporation Secure and efficient offloading of network policies to network interface cards
US8635152B2 (en) * 2011-09-14 2014-01-21 Microsoft Corporation Multi tenancy for single tenancy applications
US8589481B2 (en) 2011-09-14 2013-11-19 Microsoft Corporation Multi tenant access to applications
US8819801B2 (en) * 2011-10-31 2014-08-26 Microsoft Corporation Secure machine enrollment in multi-tenant subscription environment
US9110729B2 (en) * 2012-02-17 2015-08-18 International Business Machines Corporation Host system admission control
US9075687B1 (en) * 2012-04-19 2015-07-07 NetSuite Inc. System and methods for declaration-based extension management for multi-tenant environments
US9509571B1 (en) 2012-07-25 2016-11-29 NetSuite Inc. First-class component extensions for multi-tenant environments
TWI476614B (zh) * 2012-12-27 2015-03-11 Chunghwa Telecom Co Ltd Multi - tenant Cloud Warehouse Integrated Retrieval System and Its Method
US9195513B2 (en) 2013-02-22 2015-11-24 Sas Institute Inc. Systems and methods for multi-tenancy data processing
US9607166B2 (en) 2013-02-27 2017-03-28 Microsoft Technology Licensing, Llc Discretionary policy management in cloud-based environment
US20140278812A1 (en) * 2013-03-14 2014-09-18 Microsoft Corporation Diagnostics storage within a multi-tenant data center
US9515947B1 (en) * 2013-03-15 2016-12-06 EMC IP Holding Company LLC Method and system for providing a virtual network-aware storage array
US9043458B2 (en) 2013-03-19 2015-05-26 Cognizant Technology Solutions India Pvt. Ltd. Framework for facilitating implementation of multi-tenant SaaS architecture
JP6056607B2 (ja) 2013-03-28 2017-01-11 富士通株式会社 情報処理システム及び情報処理システムの制御方法
US9411973B2 (en) 2013-05-02 2016-08-09 International Business Machines Corporation Secure isolation of tenant resources in a multi-tenant storage system using a security gateway
US20150081400A1 (en) * 2013-09-19 2015-03-19 Infosys Limited Watching ARM
US9154492B2 (en) * 2013-09-27 2015-10-06 The University Of North Carolina At Charlotte Moving target defense against cross-site scripting
US9621673B2 (en) 2013-12-12 2017-04-11 Sap Se Customer initiated tenant operations in a multitenant cloud environment
WO2015163924A1 (en) 2014-04-25 2015-10-29 Hewlett-Packard Development Company, L.P. Data management in a distributed computing environment
US10110501B2 (en) * 2014-07-07 2018-10-23 Microsoft Technology Licensing, Llc Tenant control in initiating atomic platform tasks
US20160028833A1 (en) * 2014-07-25 2016-01-28 Violeta Georgieva Tenant aware session manager
US9391972B2 (en) 2014-09-12 2016-07-12 Oracle International Corporation Multi-tenant application using hierarchical bean factory container
KR101770240B1 (ko) * 2014-09-29 2017-08-22 삼성전자주식회사 Ui 제공을 위한 디스플레이 장치, 시스템 및 그 제공 방법
JP6426489B2 (ja) * 2015-02-03 2018-11-21 東京エレクトロン株式会社 エッチング方法
US10942900B2 (en) 2015-06-02 2021-03-09 Oracle International Corporation Techniques for tenant controlled visualizations and management of files in cloud storage systems
US9996321B2 (en) * 2015-06-23 2018-06-12 Microsoft Technology Licensing, Llc Multi-tenant, tenant-specific applications
US10748070B2 (en) * 2015-07-31 2020-08-18 Microsoft Technology Licensing, Llc Identification and presentation of changelogs relevant to a tenant of a multi-tenant cloud service
US9667725B1 (en) 2015-08-06 2017-05-30 EMC IP Holding Company LLC Provisioning isolated storage resource portions for respective containers in multi-tenant environments
US10146936B1 (en) 2015-11-12 2018-12-04 EMC IP Holding Company LLC Intrusion detection for storage resources provisioned to containers in multi-tenant environments
US9983909B1 (en) 2016-03-15 2018-05-29 EMC IP Holding Company LLC Converged infrastructure platform comprising middleware preconfigured to support containerized workloads
US10326744B1 (en) 2016-03-21 2019-06-18 EMC IP Holding Company LLC Security layer for containers in multi-tenant environments
US10754838B1 (en) * 2016-03-31 2020-08-25 EMC IP Holding Company LLC Registration framework for an analytics platform
US10013213B2 (en) 2016-04-22 2018-07-03 EMC IP Holding Company LLC Container migration utilizing state storage of partitioned storage volume
US10187395B2 (en) 2016-04-28 2019-01-22 Microsoft Technology Licensing, Llc Resource sharing and designation of permissions for other tenants and unregistered users of same tenant
US10284557B1 (en) 2016-11-17 2019-05-07 EMC IP Holding Company LLC Secure data proxy for cloud computing environments
US11128437B1 (en) 2017-03-30 2021-09-21 EMC IP Holding Company LLC Distributed ledger for peer-to-peer cloud resource sharing
RU2646306C1 (ru) * 2017-06-15 2018-03-02 Федеральное Государственное унитарное предприятие Государственный научно-исследовательский институт гражданской авиации (ФГУП ГосНИИ ГА) Система мониторинга ставок арендных платежей операторов аэродромов за пользование имуществом аэродромов
US11063745B1 (en) 2018-02-13 2021-07-13 EMC IP Holding Company LLC Distributed ledger for multi-cloud service automation
KR102544820B1 (ko) 2018-05-23 2023-06-16 삼성에스디에스 주식회사 마이크로 서비스 아키텍처 기반의 서비스 시스템 및 상기 시스템에서의 멀티 테넌트 설정 관리 방법
US10747600B2 (en) * 2018-06-12 2020-08-18 commercetools GmbH Extensibility for third party application programming interfaces
US10445223B1 (en) * 2018-10-25 2019-10-15 Capital One Services, Llc Service virtualization platform
RU2737601C2 (ru) * 2019-03-13 2020-12-01 Анастасия Надеровна Рубцова Автоматизированная информационная система для размещения расширяемых служб с множеством арендаторов и субъектов (потребителей)
EP4059162A1 (en) * 2020-08-17 2022-09-21 Google LLC System service sharing between endpoint devices for increased endpoint device capability

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064729A1 (en) * 2002-09-30 2004-04-01 International Business Machines Corporation Security system for replicated storage devices on computer networks
TW200515189A (en) * 2003-10-24 2005-05-01 Microsoft Corp System and method for preference application installation and execution
US20050223022A1 (en) * 2004-04-02 2005-10-06 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
TW200627226A (en) * 2004-08-17 2006-08-01 Ibm A system, method, service method, and program product for managing entitlement with identity and privacy applications for electronic commerce

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434619B1 (en) * 1998-04-29 2002-08-13 Alcatel Canada Inc. Internet-enabled service management system and method
US7162464B1 (en) * 1998-10-02 2007-01-09 Ncr Corporation Data mining assists in a relational database management system
RU2237275C2 (ru) * 1999-02-18 2004-09-27 Ситрикс Системз, Инк. Сервер и способ (варианты) определения программного окружения клиентского узла в сети с архитектурой клиент/сервер
US20020049841A1 (en) * 2000-03-03 2002-04-25 Johnson Scott C Systems and methods for providing differentiated service in information management environments
US20020120741A1 (en) * 2000-03-03 2002-08-29 Webb Theodore S. Systems and methods for using distributed interconnects in information management enviroments
US20020065864A1 (en) * 2000-03-03 2002-05-30 Hartsell Neal D. Systems and method for resource tracking in information management environments
US20050049937A1 (en) * 2000-08-16 2005-03-03 Aaron Sanders Business method and processing system
US20040024846A1 (en) * 2000-08-22 2004-02-05 Stephen Randall Method of enabling a wireless information device to access data services
US6643635B2 (en) * 2001-03-15 2003-11-04 Sagemetrics Corporation Methods for dynamically accessing, processing, and presenting data acquired from disparate data sources
JP2003281007A (ja) * 2002-03-20 2003-10-03 Fujitsu Ltd 動的構成制御装置および動的構成制御方法
US7636499B1 (en) * 2002-04-05 2009-12-22 Bank Of America Corporation Image processing system
US8255548B2 (en) * 2002-06-13 2012-08-28 Salesforce.Com, Inc. Offline web services API to mirror online web services API
JP2004151942A (ja) * 2002-10-30 2004-05-27 Ricoh Co Ltd ウェブサービス提供装置、ウェブサービス提供方法およびウェブサービス提供プログラム
US7076562B2 (en) * 2003-03-17 2006-07-11 July Systems, Inc. Application intermediation gateway
US7447212B2 (en) * 2003-09-03 2008-11-04 At&T Intellectual Property I, L.P. Method and system for automating membership discovery in a distributed computer network
JP2005157613A (ja) * 2003-11-25 2005-06-16 Canon Inc 情報管理装置
US20060184410A1 (en) * 2003-12-30 2006-08-17 Shankar Ramamurthy System and method for capture of user actions and use of capture data in business processes
JP4873852B2 (ja) * 2004-02-26 2012-02-08 株式会社リコー 第一の通信装置、情報処理装置、情報処理プログラム、記録媒体
US8533229B2 (en) * 2004-06-16 2013-09-10 Salesforce.Com, Inc. Soap-based web services in a multi-tenant database system
US20060015471A1 (en) * 2004-07-01 2006-01-19 Gmorpher Incorporated System, Method, and Computer Program Product of Building A Native XML Object Database
JP4748763B2 (ja) * 2004-09-06 2011-08-17 キヤノン株式会社 情報処理装置、情報処理装置の制御方法、ならびにプログラム、記憶媒体
JP4392343B2 (ja) * 2004-12-28 2009-12-24 株式会社日立製作所 メッセージ配布方法、待機系ノード装置およびプログラム
US20060235715A1 (en) * 2005-01-14 2006-10-19 Abrams Carl E Sharable multi-tenant reference data utility and methods of operation of same
US20060235831A1 (en) * 2005-01-14 2006-10-19 Adinolfi Ronald E Multi-source multi-tenant entitlement enforcing data repository and method of operation
US7593994B2 (en) * 2005-03-08 2009-09-22 Microsoft Corporation Generating a dynamic web service and dynamic service surrogate for legacy application components
JP4702835B2 (ja) * 2005-07-06 2011-06-15 株式会社日立ソリューションズ Webサービスカスタマイズシステム
US20070038697A1 (en) * 2005-08-03 2007-02-15 Eyal Zimran Multi-protocol namespace server
US8069153B2 (en) * 2005-12-02 2011-11-29 Salesforce.Com, Inc. Systems and methods for securing customer data in a multi-tenant environment
US20070162537A1 (en) * 2006-01-11 2007-07-12 Gearworks, Inc. Common application services framework
US7937711B2 (en) * 2006-06-30 2011-05-03 Dell Products L.P. Method and apparatus for providing a consolidated namespace to client applications in multi-tenant common information model (CIM) environments
US8190724B2 (en) * 2006-10-13 2012-05-29 Yahoo! Inc. Systems and methods for establishing or maintaining a personalized trusted social network
US20080114683A1 (en) * 2006-11-14 2008-05-15 Neveu Holdings, Llc Remote time and attendance system and method
WO2008072093A2 (en) * 2006-12-13 2008-06-19 Quickplay Media Inc. Mobile media platform
US8201231B2 (en) * 2007-02-21 2012-06-12 Microsoft Corporation Authenticated credential-based multi-tenant access to a service
US20080222148A1 (en) * 2007-03-09 2008-09-11 Ghost Inc. Lexicographical ordering of real numbers
US7680848B2 (en) * 2007-03-29 2010-03-16 Microsoft Corporation Reliable and scalable multi-tenant asynchronous processing
US8019812B2 (en) 2007-04-13 2011-09-13 Microsoft Corporation Extensible and programmable multi-tenant service architecture
US7840413B2 (en) * 2007-05-09 2010-11-23 Salesforce.Com, Inc. Method and system for integrating idea and on-demand services
US8516366B2 (en) * 2008-06-20 2013-08-20 Wetpaint.Com, Inc. Extensible content service for attributing user-generated content to authored content providers
US20100082737A1 (en) * 2008-09-26 2010-04-01 Carlson Marketing Worldwide, Inc. Dynamic service routing
US10057775B2 (en) * 2009-01-28 2018-08-21 Headwater Research Llc Virtualized policy and charging system
US8243949B2 (en) * 2009-04-14 2012-08-14 Plantronics, Inc. Network addressible loudspeaker and audio play
US9229793B2 (en) * 2010-04-22 2016-01-05 Salesforce.Com, Inc. System, method and computer program product for routing messages to a server

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040064729A1 (en) * 2002-09-30 2004-04-01 International Business Machines Corporation Security system for replicated storage devices on computer networks
TW200515189A (en) * 2003-10-24 2005-05-01 Microsoft Corp System and method for preference application installation and execution
US20050223022A1 (en) * 2004-04-02 2005-10-06 Salesforce.Com, Inc. Custom entities and fields in a multi-tenant database system
TW200627226A (en) * 2004-08-17 2006-08-01 Ibm A system, method, service method, and program product for managing entitlement with identity and privacy applications for electronic commerce

Also Published As

Publication number Publication date
WO2008127871A1 (en) 2008-10-23
JP2010526358A (ja) 2010-07-29
US8195743B2 (en) 2012-06-05
US20080256607A1 (en) 2008-10-16
RU2463652C2 (ru) 2012-10-10
US20110252089A1 (en) 2011-10-13
CN101657804B (zh) 2015-07-08
JP2014132462A (ja) 2014-07-17
EP2156308A1 (en) 2010-02-24
ES2709436T3 (es) 2019-04-16
EP2156308A4 (en) 2014-06-04
BRPI0809083A2 (pt) 2014-09-09
US8019812B2 (en) 2011-09-13
RU2009137767A (ru) 2011-04-20
EP2156308B1 (en) 2018-11-07
KR101279740B1 (ko) 2013-06-28
CN101657804A (zh) 2010-02-24
US8533261B2 (en) 2013-09-10
KR20100015398A (ko) 2010-02-12
US20120210390A1 (en) 2012-08-16
BRPI0809083B1 (pt) 2019-05-07
US20140012900A1 (en) 2014-01-09
BRPI0809083A8 (pt) 2016-12-20
TW200847055A (en) 2008-12-01

Similar Documents

Publication Publication Date Title
TWI473029B (zh) 可延伸及可程式化之多租戶服務結構
US8782748B2 (en) Online service access controls using scale out directory features
EP2715971B1 (en) Automating cloud service reconnections
US9985949B2 (en) Secure assertion attribute for a federated log in
US11140147B2 (en) SAML SSO UX improvements
KR20130114575A (ko) 프로비저닝 서비스를 위한 리더 중재
CN104410604A (zh) 实现大规模用户同时登录的SaaS服务系统及其方法
US10176059B2 (en) Managing server processes with proxy files
JP2012137995A (ja) リソース提供システム、アクセス制御プログラム及びアクセス制御方法
US11093477B1 (en) Multiple source database system consolidation
US10171561B2 (en) Construct data management between loosely coupled racks
JP2013190971A (ja) 統合アクセス制御システム
US11588801B1 (en) Application-centric validation for electronic resources

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees