多目標(biāo)服務(wù)器布局確定的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明的實(shí)施例涉及連網(wǎng)領(lǐng)域,并且更具體來(lái)說(shuō),涉及基于現(xiàn)有網(wǎng)絡(luò)的特性來(lái)確 定推薦地理服務(wù)器位置。
【背景技術(shù)】
[0002] 社交網(wǎng)絡(luò)是通過(guò)例如朋友、共同工作或信息交換關(guān)系的一組社交關(guān)系所連接的一 組人(或者組織或其他社交實(shí)體)。存在在線社交網(wǎng)絡(luò)(OSN)的使用的空前增加以擴(kuò)大我 們的社交生活,例如查找共同興趣的其他人、在論壇討論和共享信息以及交換照片和個(gè)人 新聞。OSN已成為向數(shù)億用戶提供服務(wù)并且以極高速率來(lái)傳遞消息的大規(guī)模分布式系統(tǒng)。
[0003] 除了操控傳統(tǒng)客戶端-服務(wù)器請(qǐng)求之外,OSN因其最終用戶之間的強(qiáng)社區(qū)結(jié)構(gòu)和 人際關(guān)系而還需要操控高度互連數(shù)據(jù),這常常引起用戶之間的復(fù)雜數(shù)據(jù)共享。給定龐大用 戶群體以及這些用戶進(jìn)行的頻繁數(shù)據(jù)訪問(wèn),有效資源規(guī)劃和供應(yīng)策略對(duì)OSN的性能和收益 極為重要。具體來(lái)說(shuō),選擇最適當(dāng)位置來(lái)部署服務(wù)器群是這樣的資源管理中的關(guān)鍵步驟之 〇
[0004] 用于包括服務(wù)器和帶寬的資源的布局策略的發(fā)展影響任何在線web服務(wù)的性能。 資源的適當(dāng)分配通過(guò)降低其客戶端的等待時(shí)間并且平衡帶寬消耗來(lái)使內(nèi)容提供商獲益。目 標(biāo)是以良好服務(wù)質(zhì)量(QoS)來(lái)對(duì)客戶端提供內(nèi)容分發(fā),同時(shí)保持基本網(wǎng)絡(luò)基礎(chǔ)設(shè)施的有效 和平衡資源消耗。因此,現(xiàn)有服務(wù)器布局提議主要集中于在給定傳統(tǒng)web服務(wù)中的客戶端 /服務(wù)器通信的性質(zhì)的情況下,使服務(wù)器與用戶之間的平均等待時(shí)間最小化。
[0005] 關(guān)于服務(wù)器布局問(wèn)題的許多提議依靠從web服務(wù)器上收集的歷史痕跡來(lái)提取客 戶端的請(qǐng)求,并且然后搜索在給定特定客戶端和負(fù)荷分布的情況下的最佳布局。雖然這些 提議在改進(jìn)現(xiàn)有OSN服務(wù)的性能方面可能是似乎合理的,但是這些提議對(duì)于重新開(kāi)始的新 OSN不太有幫助。因此,出現(xiàn)的問(wèn)題在于,難以使新生因特網(wǎng)應(yīng)用服務(wù)對(duì)部署其服務(wù)器的位 置進(jìn)行判定。
[0006] 此外,對(duì)服務(wù)器布局的許多現(xiàn)有工作造成作為整數(shù)線性規(guī)劃的問(wèn)題,其中二元判 定變量用來(lái)表示是否將用戶i指配給服務(wù)器j;以及所選服務(wù)器的總數(shù)應(yīng)當(dāng)是預(yù)定輸 入M。這個(gè)問(wèn)題的最著名的近似算法之一(由M.Charikar和S.Guha在Proceedingsof the40thAnnualSymposiumonFoundationsofComputerScience,1999 中的''Improved combinatorialalgorithmsforthefacilitylocationandk-medianproblems" 中提 供)實(shí)現(xiàn)〇((N+P)3)的極大時(shí)間復(fù)雜度,其中N是服務(wù)器的數(shù)量,以及P是用戶的數(shù)量。為 了使問(wèn)題實(shí)際上是更可管理的,提出了多種近似和試探,例如使用貪婪算法(由L.Qiu、V. N.Padmanabhan和G.M.Voelker在"OnthePlacementofWebServerReplicas"(Proc. ofIEEEINFOCOM2001,1587-1596)中提供)。但是,這些方法主要基于理論分析,并且僅 使用極小圖中的模擬來(lái)驗(yàn)證。此外,這類方法在縮放到N的大值方面具有基本問(wèn)題。相應(yīng) 地,需要對(duì)現(xiàn)有或新OSN以及N的任何值來(lái)有效和靈活確定布置服務(wù)器的位置的方法。
【發(fā)明內(nèi)容】
[0007] 按照本發(fā)明的一個(gè)實(shí)施例,描述一種計(jì)算機(jī)實(shí)現(xiàn)的方法,其通過(guò)嘗試使用戶-服 務(wù)器等待時(shí)間以及用戶間通信的等待時(shí)間最小化來(lái)確定多個(gè)推薦地理服務(wù)器位置。該方法 包括獲取一個(gè)或多個(gè)網(wǎng)絡(luò)的集合的多個(gè)用戶的地理信息。多個(gè)用戶中的每個(gè)用戶的地理信 息指示那個(gè)用戶的地理位置。該方法還包括獲取多個(gè)用戶中的至少一些用戶的關(guān)系信息。 關(guān)系信息指示多個(gè)用戶中在網(wǎng)絡(luò)集合中的網(wǎng)絡(luò)上連接的那些用戶。隨后,該方法包括將地 理信息和關(guān)系信息變換為圖,所述圖包括表示多個(gè)用戶的多個(gè)節(jié)點(diǎn)以及按照關(guān)系信息來(lái)連 接多個(gè)節(jié)點(diǎn)的多個(gè)邊。多個(gè)邊的每個(gè)邊包括邊權(quán)重。該方法還包括通過(guò)對(duì)圖執(zhí)行第一聚類 算法來(lái)生成第一多個(gè)聚類。第一多個(gè)聚類的各聚類包括質(zhì)心以及多個(gè)節(jié)點(diǎn)中的一個(gè)或多個(gè) 節(jié)點(diǎn)的集合。節(jié)點(diǎn)的集合中的每個(gè)節(jié)點(diǎn)僅包含在第一多個(gè)聚類的一個(gè)聚類中。該方法還包 括通過(guò)執(zhí)行第二聚類算法來(lái)生成第二多個(gè)聚類。第二聚類算法包括迭代檢查第一多個(gè)聚類 的聚類對(duì)。然后,對(duì)于每個(gè)檢查的聚類對(duì),第二聚類算法在以下情況下在聚類對(duì)之間重復(fù)交 換節(jié)點(diǎn)對(duì):當(dāng)節(jié)點(diǎn)對(duì)的交換將降低圖的總的割(cut)權(quán)重,以及當(dāng)交換到檢查的聚類對(duì)中 的另一聚類時(shí),在離另一聚類的質(zhì)心的所定義最大距離之內(nèi)定位節(jié)點(diǎn)對(duì)的各節(jié)點(diǎn)以便由此 限制用戶-服務(wù)器等待時(shí)間。總的割權(quán)重是連接不同聚類中的節(jié)點(diǎn)的邊的邊權(quán)重之和。該 方法還包括使描述第二多個(gè)聚類的質(zhì)心的地理位置的信息作為多個(gè)推薦地理服務(wù)器位置 被呈現(xiàn)給用戶。
[0008] 按照本發(fā)明的另一個(gè)實(shí)施例,描述一種計(jì)算機(jī)實(shí)現(xiàn)的方法,其通過(guò)嘗試使用基于 多個(gè)網(wǎng)絡(luò)的特性的聯(lián)合分析方法來(lái)使用戶-服務(wù)器等待時(shí)間以及用戶間通信的等待時(shí)間 最小化來(lái)確定多個(gè)推薦地理服務(wù)器位置。該方法包括獲取多個(gè)網(wǎng)絡(luò)的多個(gè)用戶的地理信 息。多個(gè)用戶中的用戶的地理信息指示該用戶的地理位置。該方法還包括獲取多個(gè)用戶中 的至少一些用戶的關(guān)系信息。關(guān)系信息指示多個(gè)用戶中在多個(gè)網(wǎng)絡(luò)的至少一個(gè)網(wǎng)絡(luò)上連接 的那些用戶。該方法還包括將地理信息和關(guān)系信息變換為多個(gè)圖。多個(gè)圖的各圖表示多個(gè) 網(wǎng)絡(luò)的一個(gè)網(wǎng)絡(luò)。多個(gè)圖的各圖包括:多個(gè)節(jié)點(diǎn),其表示多個(gè)用戶中屬于一個(gè)網(wǎng)絡(luò)的那些用 戶;以及多個(gè)邊,其按照關(guān)系信息來(lái)連接多個(gè)節(jié)點(diǎn)。多個(gè)邊的每個(gè)邊包括邊權(quán)重。該方法還 包括對(duì)于多個(gè)圖的各圖,通過(guò)執(zhí)行聚類算法來(lái)生成那個(gè)圖的多個(gè)聚類。多個(gè)聚類的每個(gè)聚 類包括質(zhì)心。該方法還包括通過(guò)按照質(zhì)心集合(其中質(zhì)心集合包括多個(gè)圖中的每個(gè)圖的多 個(gè)聚類的所有質(zhì)心)中的各質(zhì)心的出現(xiàn)頻率,并且將排序的質(zhì)心集合中具有最高出現(xiàn)率的 質(zhì)心識(shí)別為表示第一推薦地理服務(wù)器位置,來(lái)識(shí)別第一推薦地理服務(wù)器位置。
[0009] 在本發(fā)明的實(shí)施例中,描述一種服務(wù)器終端站,其配置成通過(guò)嘗試使用戶-服務(wù) 器等待時(shí)間以及用戶間通信的等待時(shí)間最小化來(lái)確定多個(gè)推薦地理服務(wù)器位置。服務(wù)器終 端站包括信息獲取模塊。信息獲取模塊配置成獲取一個(gè)或多個(gè)網(wǎng)絡(luò)的集合的多個(gè)用戶的地 理信息。多個(gè)用戶的各用戶的地理信息指示那個(gè)用戶的地理位置。信息獲取模塊還配置成 獲取多個(gè)用戶中的至少一些用戶的關(guān)系信息。關(guān)系信息指示多個(gè)用戶中在網(wǎng)絡(luò)集合的至少 一個(gè)網(wǎng)絡(luò)上連接的那些用戶。服務(wù)器終端站還包括變換模塊,其配置成將地理信息和關(guān)系 信息變換為圖,所述圖包括表示多個(gè)用戶的多個(gè)節(jié)點(diǎn)以及按照關(guān)系信息來(lái)連接多個(gè)節(jié)點(diǎn)的 多個(gè)邊。多個(gè)邊的每個(gè)邊包括邊權(quán)重。服務(wù)器終端站還包括服務(wù)器布局模塊。服務(wù)器布局 模塊配置成通過(guò)對(duì)圖執(zhí)行第一聚類算法來(lái)生成第一多個(gè)聚類。第一多個(gè)聚類的各聚類包括 質(zhì)心以及多個(gè)節(jié)點(diǎn)中的一個(gè)或多個(gè)節(jié)點(diǎn)的集合。節(jié)點(diǎn)的集合的各節(jié)點(diǎn)僅包含在第一多個(gè)聚 類的一個(gè)聚類中。服務(wù)器布局模塊還配置成通過(guò)執(zhí)行第二聚類算法,來(lái)生成第二多個(gè)聚類。 第二聚類算法包括迭代檢查第一多個(gè)聚類的聚類對(duì)。第二聚類算法還包括對(duì)于每個(gè)檢查的 聚類對(duì)在以下情況下在聚類對(duì)之間重復(fù)交換節(jié)點(diǎn)對(duì):當(dāng)節(jié)點(diǎn)對(duì)的交換將降低圖的總的割權(quán) 重(其中總的割權(quán)重是連接不同聚類中的節(jié)點(diǎn)的邊的邊權(quán)重之和),以及當(dāng)交換到檢查的 聚類對(duì)中的另一聚類時(shí),在離另一聚類的質(zhì)心的所定義最大距離之內(nèi)定位節(jié)點(diǎn)對(duì)的各節(jié)點(diǎn) 以便由此限制用戶-服務(wù)器等待時(shí)間。服務(wù)器終端站還包括呈現(xiàn)模塊,其配置成使描述第 二多個(gè)聚類的質(zhì)心的地理位置的信息作為多個(gè)推薦地理服務(wù)器位置呈現(xiàn)給用戶。
【附圖說(shuō)明】
[0010] 通過(guò)參照用來(lái)示出本發(fā)明的實(shí)施例的以下描述和附圖,可以最好地了解本發(fā)明。 附圖包括: 圖1示出按照本發(fā)明的一個(gè)實(shí)施例、使用多個(gè)目標(biāo)來(lái)確定多個(gè)推薦地理服務(wù)器位置的 系統(tǒng); 圖2示出按照本發(fā)明的一個(gè)實(shí)施例、用于使用來(lái)自多個(gè)網(wǎng)絡(luò)的聚合用戶圖來(lái)確定多個(gè) 推薦地理服務(wù)器位置的"之前聯(lián)合(jointbefore)"方法; 圖3示出按照本發(fā)明的一個(gè)實(shí)施例、用于使用來(lái)自不同網(wǎng)絡(luò)圖的聚類中的質(zhì)心來(lái)確定 多個(gè)推薦地理服務(wù)器位置的"之后聯(lián)合(jointafter)"方法的部分; 圖4示出按照本發(fā)明的一個(gè)實(shí)施例的圖3所示"之后聯(lián)合"方法的附加部分; 圖5示出按照本發(fā)明的一個(gè)實(shí)施例、用于確定多個(gè)推薦服務(wù)器位置的方法的高級(jí)視 圖; 圖6示出按照本發(fā)明的一個(gè)實(shí)施例、在特定聚類算法中有用的兩個(gè)可能的成本函數(shù); 圖7示出按照本發(fā)明的一個(gè)實(shí)施例的三種服務(wù)器布局算法; 圖8示出按照本發(fā)明的一個(gè)實(shí)施例、用于通過(guò)嘗試使用戶-服務(wù)器等待時(shí)間和用戶間 通信的等待時(shí)間最小化來(lái)確定多個(gè)推薦地理服務(wù)器位置的流程;以及 圖9示出按照本發(fā)明的一個(gè)實(shí)施例、通過(guò)嘗試使用戶-服務(wù)器等待時(shí)間和用戶間通信 的等待時(shí)間最小化、使用基于多個(gè)網(wǎng)絡(luò)的特性的聯(lián)合分析方法來(lái)確定多個(gè)推薦地理服務(wù)器 位置。
【具體實(shí)施方式】
[0011] 在以下描述中提出許多具體細(xì)節(jié)。但是要理解,可以在沒(méi)有這些具體細(xì)節(jié)的情況 下實(shí)施本發(fā)明的實(shí)施例。在其他情況下,沒(méi)有詳細(xì)示出眾所周知的電路、結(jié)構(gòu)和技術(shù),以免 模糊對(duì)本描述的了解。
[0012] 說(shuō)明書(shū)中提到" 一個(gè)實(shí)施例"、"實(shí)施例"、"示例實(shí)施例"等表示所述的實(shí)施例可包 括特定特征、結(jié)構(gòu)或特性,但可能不一定每一個(gè)實(shí)施例都包括該特定特征、結(jié)構(gòu)或特性。此 外,這類詞語(yǔ)不一定指相同的實(shí)施例。此外,在結(jié)合實(shí)施例來(lái)描述特定特征、結(jié)構(gòu)或特性時(shí), 認(rèn)為結(jié)合無(wú)論是否明確描述的其他實(shí)施例來(lái)實(shí)現(xiàn)這種特征、結(jié)構(gòu)或特性是在本領(lǐng)域的技術(shù) 人員的知識(shí)范圍之內(nèi)的。
[0013] 在以下描述和權(quán)利要求書(shū)中,可使用術(shù)語(yǔ)"耦合"和"連接"及其派生。應(yīng)當(dāng)理解, 這些術(shù)語(yǔ)并不是要作為彼此的同義詞。"耦合"用來(lái)表示彼此可以或者可以不直接物理或電 接觸的兩個(gè)或更多元件相互合作或交互。"連接"用來(lái)表示相互耦合的兩個(gè)或更多元件之間 的通信的建立。
[0014] 電子裝置(例如終端站、網(wǎng)絡(luò)元件、計(jì)算機(jī)/計(jì)算系統(tǒng)/計(jì)算裝置)使用諸如非 暫時(shí)有形計(jì)算機(jī)可讀介質(zhì)(例如,計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),如磁盤(pán)、光盤(pán)、只讀存儲(chǔ)器、閃速存 儲(chǔ)器裝置)和暫時(shí)計(jì)算機(jī)可讀傳輸介質(zhì)(例如電、光、聲或其他形式的傳播信號(hào)一一例如載 波、紅外信號(hào))的計(jì)算機(jī)可讀介質(zhì)來(lái)存儲(chǔ)和傳送(內(nèi)部地和/或通過(guò)網(wǎng)絡(luò)與其他電子裝置) 代碼(由軟件指令組成)和數(shù)據(jù)。另外,這類電子裝置通常包括一個(gè)或多個(gè)處理器的集合, 其耦合到一個(gè)或多個(gè)其他組件,例如一個(gè)或多個(gè)非暫時(shí)機(jī)器可讀介質(zhì)(以存儲(chǔ)代碼和/或 數(shù)據(jù))、用戶輸入/輸出裝置(