freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

淘寶技術(shù)及webx3框架分析第一版-wenkub

2022-11-04 08:54:50 本頁面
 

【正文】 ......................................................... 1 修改記錄 ................................................................................................................................................ 1 目錄 ....................................................................................................................................................... 1 1. 淘寶技術(shù) .................................................................................................................................. 1 . 淘寶總述 ........................................................................................................................... 1 . 高性能可伸縮 .................................................................................................................... 4 . 應(yīng)用無狀態(tài) ................................................................................................................ 4 . 有效使用緩存 ............................................................................................................. 5 . 應(yīng)用拆分 .................................................................................................................... 5 . 數(shù)據(jù)庫拆分 ................................................................................................................ 7 . 異步通信 .................................................................................................................... 8 . 非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ) ...................................................................................................... 9 . 監(jiān)控、預(yù)警系統(tǒng) ......................................................................................................... 9 . 配置統(tǒng)一管理 ............................................................................................................10 . 數(shù)據(jù)擴(kuò)展性探討和總結(jié) .....................................................................................................10 . WebX.................................................................................................................................12 . 總述 ..........................................................................................................................12 . pipeline 與 valve.....................................................................................................18 . action 與 screen ......................................................................................................21 . 一個(gè)框架應(yīng)用 ............................................................................................................25 第 1 頁 1. 淘寶 技術(shù) . 淘寶總述 淘寶網(wǎng),是一個(gè)在線商品數(shù)量突破 一億,日均成交額超過兩億元人民幣,注冊用戶接近八千萬的大型電子商務(wù)網(wǎng)站,是亞洲最大的購物網(wǎng)站。對于像淘寶網(wǎng)這樣規(guī)模的網(wǎng)站而言,就是應(yīng)用也分成很多組。要先選擇操作系統(tǒng),然后才是操作系統(tǒng)基礎(chǔ)上的應(yīng)用軟件。如果不準(zhǔn)備采用微軟的一系列產(chǎn)品構(gòu)建應(yīng)用,并且有能力維護(hù) Linux 或者 FreeBSD,再加上成本的考慮,那么還是應(yīng)該在 Linux 和 FreeBSD之間進(jìn)行選擇。 應(yīng)用服務(wù)器 在確定了服務(wù)器的硬件、服務(wù)器的操作系統(tǒng)之后,下面我們來說說業(yè)務(wù)系統(tǒng)的構(gòu)建。我們的選擇是 JBoss Applcation Server。而商業(yè)軟件的選擇就是 IBM 的 WebSphere 和 BEA 的 WebLogic。這邊就 不在贅述。在今天來說, Lighty 也會(huì)是一個(gè)非常好的選擇。并且使用 IIS的話,基本上也就是選擇了 ISAPI、 ASP 或者 進(jìn)行 Web 應(yīng)用的開發(fā)了。 Oracle 是一款優(yōu)秀的、廣泛采用的商業(yè)數(shù)據(jù)庫管理軟件??梢赃@么說,在關(guān)系數(shù)據(jù)庫管理系統(tǒng)的選擇上,可以考慮應(yīng)用本身的情況來決定。但是,考慮到淘寶網(wǎng)自己的需求和大并發(fā)量的壓力,這些系統(tǒng)都選擇了自主開發(fā)框架。其實(shí)淘寶網(wǎng)的 Web 展現(xiàn)層的框架用的不是 struts,不是 webwork,不是 spring mvc 等等。這些開源軟件的采用為我們構(gòu)建應(yīng)用系統(tǒng)提供了很大的幫助。這對于應(yīng)用設(shè)計(jì)、開發(fā)、查錯(cuò)、優(yōu)化都是非常有幫助的。這和商業(yè)軟件是一樣的。 在今后的發(fā)展中,我們還是會(huì)一如既往的關(guān)注開源軟件的發(fā)展,也還會(huì)根據(jù)需要采用不同的開源軟件 。 對于企業(yè)級系統(tǒng)、互聯(lián)網(wǎng)應(yīng)用來說,采用開源軟件不僅可以降低成本,更重要的是能夠真正了解軟件的內(nèi)部工作機(jī)制。 . 高性能可伸縮 . 應(yīng)用無狀態(tài) 一個(gè)系統(tǒng)的伸縮性的好壞取決于應(yīng)用的狀態(tài)如何管理。公司的 session 框架采用的是 client cookie實(shí)現(xiàn),主要將狀態(tài)保存到了 cookie 里面,這樣就使得應(yīng)用節(jié)點(diǎn)本身不需要保存任何狀態(tài)信息 , 這樣在系統(tǒng)用戶變多的時(shí)候,就可以通過增加更多的應(yīng)用節(jié)點(diǎn)來達(dá)到水平擴(kuò)展的目的 。 第 5 頁 . 有效使用緩存 做互聯(lián)網(wǎng)應(yīng)用的兄弟應(yīng)該都清楚,緩存對于一個(gè)互聯(lián)網(wǎng)應(yīng)用是多么的重要,從瀏覽器緩存,反向 代理緩存,頁面緩存,局部頁面緩存,對象緩存等等都是緩存應(yīng)用的場景。 對于一些讀寫比不高,同時(shí)對數(shù)據(jù)安全性需求不高的數(shù)據(jù),我們可以將其緩存起來從而減少對底層 數(shù)據(jù)庫的訪問 , 比如統(tǒng)計(jì)商品的訪問次數(shù) , 統(tǒng)計(jì) API 的調(diào)用量等等 , 可以采用先寫內(nèi)存緩存然后延遲持久化到數(shù)據(jù)庫,這樣可以大大減少對數(shù)據(jù)庫的寫壓力。 系統(tǒng)剛上線初期,用戶數(shù)并不多,所有的邏輯也許都是放在一個(gè)系統(tǒng)中的,所有邏輯跑到一個(gè)進(jìn)程或者一個(gè)應(yīng)用當(dāng)中,這個(gè)時(shí)候因?yàn)楸容^用戶少,系統(tǒng)訪問量低,因此將全部的邏輯都放在一個(gè)應(yīng)用未嘗不可。但是拆分也給系統(tǒng)帶來了問題,就是子系統(tǒng)之間如何通信的問題,而具體的通信方式有哪些呢?一般有同步通信和異步通信,這里我們首先來說下同步通信,下面的主題 “ 消息系統(tǒng) ” 會(huì)說到異步通信。 在這個(gè)演變的過程中,我們所說的拆分就出現(xiàn) 和 之間。 第 7 頁 . 數(shù)據(jù)庫拆分 在前面 “ 應(yīng)用拆分 ” 主題中,我們提到了一個(gè)大型互聯(lián)網(wǎng)應(yīng)用需要進(jìn)行良好的拆分,而那里我們 僅僅說了 “ 應(yīng)用級別 ” 的拆分,其實(shí)我們的互聯(lián)網(wǎng)應(yīng)用除了應(yīng)用級別的拆分以外,還有另外一個(gè)很重要的層面就是存儲(chǔ)如何拆分的。此時(shí),咱們搞技術(shù)的哥們,就去看看究竟是啥原因,我們查了查以后,發(fā)現(xiàn)原來是數(shù)據(jù)庫讀取壓力太大了,此時(shí)咱們都清楚是到了讀寫分離的時(shí)候,這個(gè)時(shí)候我們會(huì)配置一個(gè) server 為 master節(jié)點(diǎn),然后配幾個(gè) salve 節(jié)點(diǎn),這樣以來通過讀寫分離,使得讀取數(shù)據(jù)的壓力分?jǐn)偟搅瞬煌?salve 節(jié)點(diǎn)上面,系統(tǒng)終于又恢復(fù)了正常,開始正常運(yùn)行了。 拿公司目前的情況來說,公司目前也正在從昂貴的高端存儲(chǔ)(小型機(jī) +ORACLE)切換到 MYSQL, 切換到 MYSQL 以后,勢必會(huì)遇到垂直分區(qū)(分庫)以及水平分區(qū)( Sharding)的問題,因此目前公司根據(jù)自己的業(yè)務(wù)特點(diǎn)也開發(fā)了自己的 TDDL 框架,此框架主要解決了分庫分表對應(yīng)用的透明化以及 異構(gòu)數(shù)據(jù)庫之間的數(shù)據(jù)復(fù)制。 那么下一步我們說說異步能給系統(tǒng)帶來什么樣子的好處。 第 9 頁 . 非結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ) 在一個(gè)大型的互聯(lián)網(wǎng)應(yīng)用當(dāng)中,我們會(huì)發(fā)現(xiàn)并不是所有的數(shù)據(jù)都是結(jié)構(gòu)化的,比如一些配置文件,一個(gè)用戶對應(yīng)的動(dòng)態(tài),以及一次交易的快照等信息,這些信息一般不適合保存到RDBMS 中,它們更符合一種 Keyvalue 的結(jié)構(gòu),另外還有一類數(shù)據(jù),數(shù)據(jù)量非常的大,但是實(shí)時(shí)性要求不高,此時(shí)這些數(shù)據(jù)也需要通過另外的一種存儲(chǔ)方式進(jìn)行存儲(chǔ),另外一些靜態(tài)文件,比如各個(gè)商品的圖片,商品描述等信息,這些信息因?yàn)楸容^大,放入 RDBMS 會(huì)引起讀取性能問題,從而影響到其它的數(shù)據(jù)讀取性 能,因此這些信息也需要和其它信息分開存儲(chǔ),而一般的互聯(lián)網(wǎng)應(yīng)用系統(tǒng)都會(huì)選擇把這些信息保存到分布式文件系統(tǒng)中,因此公司目前也開發(fā)了自己的分布式文件系統(tǒng) TFS, TFS 目前限制了文件大小為 2M,適合于一些小于 2M 數(shù)據(jù)的存放。 . 監(jiān)控、預(yù)警系統(tǒng) 對于大型的系統(tǒng)來說,唯一可靠的就是系統(tǒng)的各個(gè)部分是不可靠。 . 配置統(tǒng)一管理 一個(gè)大型的分布式應(yīng)用,一般都是有很多節(jié)點(diǎn)構(gòu)成的,如果每次一個(gè)新的節(jié)點(diǎn)加入都要更改其它節(jié)點(diǎn)的配置,或者每次刪除一個(gè)節(jié)點(diǎn)也要更改配置的話,這樣不僅不利于系統(tǒng)的維護(hù)和管理,同時(shí)也更加容易引入錯(cuò)誤。 09 年一年,大部分時(shí)間都在數(shù)據(jù)的擴(kuò)展性上努力。最大的問題在于數(shù)據(jù)分割的規(guī)則,無規(guī)則的水平分割肯定會(huì)帶來數(shù)據(jù)合并的開銷,而按照業(yè)務(wù)規(guī)則拆分,會(huì)因?yàn)橘I家和賣家的查詢需求不同而導(dǎo)致數(shù)據(jù)不能分割,唯一可行的火花是把訂單雙份保存,買家賣家各自一份,只是成本比較高,而且對數(shù)據(jù)同步的要求非常高。 另外一個(gè)有意思的案例是商品的數(shù)據(jù)擴(kuò)容,商品的水平分割非 常容易,按照賣家進(jìn)行拆分即可。說到底,回歸本源。曾經(jīng)一次 DBA 發(fā)現(xiàn)數(shù)據(jù)庫上一個(gè)查詢耗費(fèi)太多資源,把優(yōu)化后的 SQL 給開發(fā)人員改進(jìn),開發(fā)人員好幾天沒找到具體是哪個(gè)查詢。軟件或服務(wù)的可測試性是對測試人員的關(guān)注、可維護(hù)性和可管理性是對運(yùn)維人員的關(guān)注,而一個(gè)框架的易用性是對所有使用人員的關(guān)注。),否則還是要多關(guān)注系統(tǒng)和人的交互。 2020 年,很多 可以做的事情,面向服務(wù)系統(tǒng)的隔離和降級、系統(tǒng)可維護(hù)性的提高、協(xié)程和異步模式在 web 應(yīng)用的全面使用…… 免責(zé)聲明:我很現(xiàn)實(shí),為解決問題和完成工作不擇手段,并且不懂架構(gòu)是什么意思,以上觀點(diǎn)如有雷同,純屬巧合!如有異議,歡迎拍磚! . WebX . 總述 . Webx 簡單概括 WebX 是阿里巴巴的內(nèi)部框架,“就是把頁面與 Service 層之間的一些 Servlet 等公共的東西抽象出來,提供相應(yīng)的服務(wù)以提高開發(fā)效率(《接口測試之 Webx 簡介》 — 何曉峰 )”,可以看出, Webx 和傳統(tǒng)的 servletaction 模式的 HettpServlet 為基礎(chǔ),對其中的公用的抽象 第 13 頁 整理后,得到一個(gè)輕量級的 web 開發(fā)框架。有興趣的 同學(xué)可以去研究下,官方網(wǎng)站: 淘寶內(nèi)部 Web 應(yīng)用的層次是這樣的,如下圖 大家可以看出本質(zhì)是一樣的, Webx 框架其實(shí)就是把頁面與 Service 層之間的一些 Servlet 等公共的東西抽象出來,提供相應(yīng)的服務(wù)以提高開發(fā)效率,所以我們就必須有針對 Webx框架的一套自己的測試解決方案, itest 就誕生了。
點(diǎn)擊復(fù)制文檔內(nèi)容
高考資料相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1