成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

拆分不同的東西(Y軸原則)

2022-01-05    分類: 網(wǎng)站建設

有時該原則被稱為通過服務或資源進行擴展,重點是擴展數(shù)據(jù)集合、事務和程序員小組。非常大的數(shù)據(jù)集合,數(shù)據(jù)間關系并不重要口大型的復雜系統(tǒng),需要特別擴展編程資源。
用動詞拆分操作,用名詞拆分資源,或者兼而有之口根據(jù)動詞/名詞方法的定義,拆分服務和數(shù)據(jù)。不僅能有效地擴展事務,還能有效地擴展與事務相關的大型數(shù)據(jù)集合。Y軸拆分,或者說面向數(shù)據(jù)服務的拆分,能夠有效地擴展事務、大型數(shù)據(jù)集合,并且有助于故障隔離。
拋開關于面向服務的架構(SOA)和面向資源的架構(ROA)這兩個概念的爭論,深入了解它們的基本前提就會發(fā)現(xiàn),它們至少有一點是相同的,即都要求架構師和程序員考慮架構中的職責拆分。大體上就是采用動詞(服務)和名詞(資源)的概念來實現(xiàn)拆分。即擴展立方上的第二個軸,采用的就是這種方法。簡而言之,是通過拆分站點中的各種功能和數(shù)據(jù),從而實現(xiàn)擴展。采用簡單方法就是把產(chǎn)品拆分為名詞和動詞,或者兩者的組合。

首先,我們看看怎么用動詞拆分站點。如果我們的站點是相對簡單的電子商務站點,那么可以用動詞把它拆分為注冊、登錄、搜索、瀏覽、查看、加入購物車、購買。在這些事務中,每一個事務所需要執(zhí)行的數(shù)據(jù)可能都與其他事務需要的大不相同。例如,可能有人會說,注冊和登錄需要的數(shù)據(jù)是相同的,但其實它們都需要一些特有的數(shù)據(jù)。例如,注冊可能需要檢查該用戶選擇的ID是不是已經(jīng)被別人選用了,而登錄時則無需了解其他用戶的ID。注冊時可能需要把大量的數(shù)據(jù)寫入持久數(shù)據(jù)存儲中,而登錄則是一種驗證用戶身份的只讀應用。注冊可能需要用戶存儲許多識別個人身份的信息,包括信用卡號等,而在用戶只是想建立登錄連接時則無需訪問這些信息。
在研究搜索和登錄這兩種截然不同功能時,依據(jù)動詞拆分的擴展方法的不同之處以及帶來的好處就更加明顯了。在登錄時,我們關心的通常是驗證用戶身份,可能會建立某些會話(這里我們采用術語會話,而不是采用狀態(tài))。登錄功能關心的是用戶,因此需要緩存用戶數(shù)據(jù)并與之進行交互操作。另一方面,搜索關心的是查找數(shù)據(jù)項,而最重要的是用戶的意圖(通常是用戶在搜索框內(nèi)輸入的搜索字符串、查詢或搜索項)以及我們存儲在目錄中的目錄項。拆分這些數(shù)據(jù)集,可以使我們在系統(tǒng)有限的內(nèi)存中緩存更多的數(shù)據(jù),而且,由此產(chǎn)生的高緩存命中率也會加快事務的處理。在后端的持久性系統(tǒng)(如數(shù)據(jù)庫)中標分數(shù)據(jù),就能夠在這些系統(tǒng)中分配更多的專用內(nèi)存,加速對客戶(應用服務器)請求的響應。由于更好地利用了系統(tǒng)資源,這兩個系統(tǒng)都會相應地更快。顯然,這是拓展這些系統(tǒng)最容易的方法,受內(nèi)存限制地更少。此外,通過采用X軸擴展)相同的方法拆分事務,Y軸的事務擴展能力也增加了。
稍等!如果我們想把用戶和產(chǎn)品信息合并在一起,例如向客戶推薦產(chǎn)品,又該怎么辦呢?注意,這里用了新的動詞一一推薦。這是另一種需要拆分數(shù)據(jù)和事務的情況。我們可能會加入一種推薦服務,根據(jù)用戶過去的購買行為,與具有相似購買行為的用戶進行異步評估。這樣可能會把數(shù)據(jù)移植到登錄功能或搜索功能(當用戶與系統(tǒng)交互時就會向他顯示)?;蛘咭部赡苁怯脩魹g覽器發(fā)出的一個單獨的同步調(diào)用,顯示在專門分配給這個推薦調(diào)用的區(qū)域。
現(xiàn)在可以考慮如何用名詞來拆分項了。還是拿電子商務的例子來說,我們可以標識一些最終會對其進行操作的資源(而不是表示要執(zhí)行的操作的動詞)。我們可以認為電子商務站點是由產(chǎn)品目錄、產(chǎn)品庫存清單、用戶賬戶信息、市場營銷信息等構成的。采用名詞拆分的方法,可以根據(jù)這些分類拆分數(shù)據(jù),然后定義一套高級的原函數(shù),如創(chuàng)建、讀、更新和刪除等,對這些原數(shù)據(jù)進行操作。
Y軸拆分不僅適用于擴展數(shù)據(jù)集合,還適用于擴展代碼庫。由于服務和資源都被拆分了,那么執(zhí)行的操作和執(zhí)行它們所必需的代碼也會被拆分。這就意味著可以把開發(fā)復雜系統(tǒng)的大型編程小組拆分成各個子系統(tǒng)的專家組,程序員不用再擔心自己必須是網(wǎng)站建設系統(tǒng)每一部分的全能專家了。當然,由于可以拆分服務,所以擴展事務也就相當容易了。

新聞名稱:拆分不同的東西(Y軸原則)
鏈接分享:http://jinyejixie.com/news26/142626.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、Google、App設計、云服務器網(wǎng)站維護、網(wǎng)站設計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

搜索引擎優(yōu)化
丰顺县| 宁南县| 泽普县| 温宿县| 揭阳市| 永和县| 庆安县| 三河市| 花莲县| 铜川市| 孝昌县| 横峰县| 任丘市| 仁布县| 霞浦县| 高碑店市| 新兴县| 清流县| 沙河市| 黄龙县| 荔波县| 颍上县| 剑阁县| 邢台市| 南乐县| 体育| 巨野县| 曲松县| 富锦市| 昭平县| 托里县| 卢氏县| 思南县| 高邑县| 河北省| 阿拉善左旗| 尼木县| 商南县| 江门市| 中方县| 禹城市|