未來五到十年主流的系統(tǒng)架構(gòu)設(shè)計(jì)思想
云計(jì)算在經(jīng)歷了多年的發(fā)展后已經(jīng)成為主流,F(xiàn)在,無論是企業(yè)建設(shè)新系統(tǒng),還是新的創(chuàng)業(yè)公司建設(shè)系統(tǒng),都會默認(rèn)選擇基于云來構(gòu)建。而且,越來越多的企業(yè)選擇將已有系統(tǒng)遷移至云上。在這樣的兩個場景中,都需要面對如何設(shè)計(jì)一個基于云的系統(tǒng)架構(gòu),充分發(fā)揮新一代架構(gòu)的優(yōu)勢,進(jìn)而帶來業(yè)務(wù)提升的問題。這個問題對企業(yè)的業(yè)務(wù)決策者及技術(shù)架構(gòu)團(tuán)隊(duì)都是不小的挑戰(zhàn),更顯而易見的是,基于云的新一代系統(tǒng)架構(gòu)將成為未來五到十年內(nèi)的主流架構(gòu)。
在系統(tǒng)架構(gòu)層面,云帶來的絕不僅僅是 IaaS 或者說機(jī)器資源層面的變化,云提供的服務(wù)越來越多,更好地直接基于這些云服務(wù)(例如存儲、數(shù)據(jù)庫等),而不是靠自研來設(shè)計(jì)相應(yīng)的業(yè)務(wù)系統(tǒng),將給企業(yè)業(yè)務(wù)的迭代效率帶來質(zhì)的提升。除此之外,互聯(lián)網(wǎng)公司本身基于云的實(shí)踐,也催生了諸如業(yè)務(wù)中臺、數(shù)據(jù)中臺等新的設(shè)計(jì)理念,這些創(chuàng)新會為業(yè)務(wù)業(yè)績帶來實(shí)際的提升。
在本書中,來自阿里云智能 - 全球技術(shù)服務(wù)團(tuán)隊(duì)的作者很好地回答了上面的問題,詳細(xì)闡述了如何基于云的設(shè)計(jì)理念來設(shè)計(jì)新一代的系統(tǒng),以及如何將關(guān)鍵的應(yīng)用、數(shù)據(jù)庫、大數(shù)據(jù)等改造、搬遷上云。由于作者都具有非常豐富的實(shí)踐經(jīng)驗(yàn),書中更給出了多個實(shí)際案例,并進(jìn)行了剖析,讀者能夠更好地掌握這套方法論。
強(qiáng)烈建議企業(yè)業(yè)務(wù)的決策者、業(yè)務(wù)系統(tǒng)的架構(gòu)師團(tuán)隊(duì)閱讀此書,以便掌握新一代基于云的設(shè)計(jì)理念,構(gòu)建基于新理念的業(yè)務(wù)系統(tǒng),從而為業(yè)務(wù)創(chuàng)造更大的價值。
本書的出版依賴于阿里云智能 - 全球技術(shù)服務(wù)事業(yè)部和數(shù)據(jù)庫產(chǎn)品事業(yè)部同學(xué)們的努力,感謝所有為本書出版付出努力的同學(xué)與工作者:
第 1、2 章:金建明(花名錚明)、譚虎(花名凈能)
第 3 章:何龍(花名周翰)
第 4 章:姜。ɑ凰{(lán))
第 5 章:彭義評(花名馬柯)、何強(qiáng)(花名回雁)
第 6 章:彭義評、何強(qiáng)
第 7 章:樊文凱(花名唐修)
第 8 ~ 9 章:彭義評
第 10 章:劉洪濤(花名弘銳)、羅海偉(花名一斅)、陳焰(花名傳學(xué))
第 11 章:曾遲(花名沙陌)、崔迪(花名飲冰)
全書內(nèi)容策劃與出版統(tǒng)籌:何強(qiáng)
鑒于技術(shù)的飛速發(fā)展,加之作者的學(xué)識有限,本書難免存在疏漏與欠缺,期待各位同行和讀者的批評與指正。
阿里云智能技術(shù)交付總經(jīng)理 畢玄
2019 年 8 月
序
前言
第 1 章 云計(jì)算時代的到來
1.1 云計(jì)算的起源
1.2 云計(jì)算的概念
1.3 云服務(wù)的發(fā)展現(xiàn)狀
1.3.1 DaaS
1.3.2 SaaS
1.3.3 PaaS
1.3.4 IaaS
1.4 云計(jì)算的未來
第 2 章 企業(yè)數(shù)字化轉(zhuǎn)型與企業(yè)遷云
2.1 企業(yè)數(shù)字化轉(zhuǎn)型之路
2.2 數(shù)字化轉(zhuǎn)型后 IT 管理的改變
2.3 企業(yè)數(shù)字化轉(zhuǎn)型的方法
2.4 數(shù)字化轉(zhuǎn)型的云端實(shí)踐
2.4.1 12306
2.4.2 天貓雙十一
2.4.3 視頻點(diǎn)播 / 直播類網(wǎng)站
第 3 章 云上通用架構(gòu)設(shè)計(jì)與改造
3.1 網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)
3.1.1 網(wǎng)絡(luò)產(chǎn)品簡介
3.1.2 網(wǎng)絡(luò)接入與規(guī)劃
3.1.3 混合云架構(gòu)實(shí)踐
3.2 云上運(yùn)維管理架構(gòu)設(shè)計(jì)
3.2.1 基于 RAM 實(shí)現(xiàn)賬號權(quán)限管理方案
3.2.2 云上開發(fā)、測試、生產(chǎn)環(huán)境管理方案
3.3 云上安全管理
3.3.1 云上應(yīng)用安全保障方案
3.3.2 云上安全管理實(shí)踐
3.4 應(yīng)用架構(gòu)設(shè)計(jì)
3.4.1 負(fù)載均衡
3.4.2 可擴(kuò)展性
3.4.3 微服務(wù)
3.4.4 異步化
3.4.5 高可用與容災(zāi)
3.4.6 云數(shù)據(jù)庫架構(gòu)實(shí)踐
3.4.7 大數(shù)據(jù)處理技術(shù)架構(gòu)
3.5 應(yīng)用改造實(shí)踐
3.5.1 應(yīng)用架構(gòu)改造
3.5.2 數(shù)據(jù)庫改造
3.5.3 文件存儲改造
3.5.4 大數(shù)據(jù)實(shí)時計(jì)算應(yīng)用改造
3.5.5 大數(shù)據(jù)離線分析應(yīng)用改造
第 4 章 業(yè)務(wù)中臺
4.1 什么是業(yè)務(wù)中臺
4.2 業(yè)務(wù)中臺的價值
4.2.1 煙囪式系統(tǒng)開發(fā)方法
4.2.2 基于業(yè)務(wù)中臺的系統(tǒng)開發(fā)
4.3 業(yè)務(wù)中臺的實(shí)踐過程
4.4 需求調(diào)研
4.4.1 需求調(diào)研前的準(zhǔn)備工作
4.4.2 開始調(diào)研
4.4.3 調(diào)研內(nèi)容
4.4.4 業(yè)務(wù)調(diào)研分析
4.5 企業(yè)業(yè)務(wù)中臺的演進(jìn)路線
4.6 業(yè)務(wù)中臺的設(shè)計(jì)方案和原則
4.6.1 業(yè)務(wù)中臺的核心共享服務(wù)中心
4.6.2 業(yè)務(wù)中臺的設(shè)計(jì)方法
4.7 業(yè)務(wù)中臺的實(shí)踐
4.7.1 業(yè)務(wù)中臺的最佳技術(shù)實(shí)踐方式微服務(wù)
4.7.2 微服務(wù)的業(yè)務(wù)拆分原則
4.7.3 微服務(wù)的架構(gòu)設(shè)計(jì)
4.7.4 微服務(wù)技術(shù)框架選型
4.7.5 EDAS 微服務(wù)技術(shù)框架剖析
4.8 阿里巴巴業(yè)務(wù)中臺能力輸出與案例
第 5 章 應(yīng)用系統(tǒng)遷云
5.1 應(yīng)用系統(tǒng)遷云的挑戰(zhàn)
5.2 系統(tǒng)遷云方法
5.2.1 遷云原則
5.2.2 遷云策略
5.2.3 遷云節(jié)奏
5.3 遷云評估
5.4 遷云的整體流程
5.4.1 系統(tǒng)調(diào)研 97
5.4.2 風(fēng)險評估
5.4.3 云上架構(gòu)設(shè)計(jì)
5.4.4 系統(tǒng)改造
5.4.5 數(shù)據(jù)遷移驗(yàn)證
5.4.6 功能 / 性能測試
5.4.7 系統(tǒng)割接交付
5.5 系統(tǒng)遷云技術(shù)選型
5.6 直接遷移上云
5.7 改造遷移上云
5.7.1 OLTP 類型
5.7.2 OLAP 類型
5.7.3 文件 / 內(nèi)容管理類型
5.7.4 大規(guī)模離線計(jì)算類型
5.8 云上安全保障
5.9 應(yīng)用鏡像服務(wù)遷云
5.9.1 鏡像遷移概述
5.9.2 鏡像遷移可行性評估
5.9.3 鏡像遷移和轉(zhuǎn)換工具
5.9.4 阿里遷云工具
5.9.5 通用鏡像遷移方案
5.9.6 阿里云上跨 VPC 和區(qū)域、賬號鏡像遷移實(shí)踐
第 6 章 數(shù)據(jù)庫服務(wù)遷云
6.1 RDS
6.2 DRDS
6.3 異構(gòu)數(shù)據(jù)庫改造上云實(shí)踐
6.3.1 Oracle 與 MySQL
6.3.2 MySQL 開發(fā)規(guī)范
6.3.3 MySQL 表設(shè)計(jì)
6.3.4 MySQL 分布式數(shù)據(jù)庫
6.3.5 關(guān)鍵功能改造
6.3.6 RDS 性能優(yōu)化
6.3.7 RDS 控制臺
6.4 數(shù)據(jù)傳輸服務(wù)
6.4.1 DTS 產(chǎn)品架構(gòu)
6.4.2 數(shù)據(jù)遷移
6.4.3 實(shí)時同步
6.4.4 數(shù)據(jù)訂閱
6.4.5 DTS 的應(yīng)用場景
第 7 章 數(shù)據(jù)庫遷云工具ADAM
7.1 數(shù)據(jù)庫遷云面臨的挑戰(zhàn)
7.1.1 傳統(tǒng)企業(yè)數(shù)據(jù)中心的現(xiàn)狀
7.1.2 傳統(tǒng)業(yè)務(wù)系統(tǒng)架構(gòu)的局限
7.1.3 數(shù)據(jù)庫架構(gòu)的選擇
7.2 ADAM 及數(shù)據(jù)庫遷云的流程
7.2.1 ADAM 概述
7.2.2 ADAM 遷云的流程
7.3 ADAM 數(shù)據(jù)庫采集工具
7.4 ADAM SaaS 分析平臺
7.5 ADAM SQL 在線翻譯工具
7.6 ADAM Studio
7.6.1 ADAM Studio 客戶端工具概述
7.6.2 ADAM Studio 的安裝
7.6.3 ADAM Studio 主體遷移操作
7.7 ADAM PL/SQL Java 自動轉(zhuǎn)換
7.7.1 P2J 工作原理
7.7.2 PL/SQL 轉(zhuǎn) Java 的背景
7.7.3 PL/SQL 轉(zhuǎn) Java 的難點(diǎn)
7.7.4 PL/SQL 轉(zhuǎn) Java 的功能特點(diǎn)
7.8 ADAM 一鍵遷移工具
7.9 ADAM 在項(xiàng)目中的實(shí)踐
第 8 章 文件存儲服務(wù)遷云
8.1 OSS 的適用場景
8.2 本地文件平滑遷移到OSS
8.2.1 遷移步驟
8.2.2 OSS 回源規(guī)則設(shè)置
8.2.3 遷移工具 OSSImport2
8.3 云上 OSS 應(yīng)用實(shí)踐
8.3.1 OSS 權(quán)限控制
8.3.2 OSS 防盜鏈
8.3.3 客戶端直傳 OSS 的實(shí)踐
8.3.4 數(shù)據(jù)傳輸完整性校驗(yàn)
第 9 章 云上應(yīng)用容量評估與優(yōu)化
9.1 應(yīng)用容量規(guī)劃概述
9.2 應(yīng)用容量壓測評估方法
9.3 應(yīng)用容量評估工具
9.4 應(yīng)用監(jiān)控與彈性伸縮
9.5 應(yīng)用性能容量評估及優(yōu)化案例
第 10 章 大數(shù)據(jù)上云 273
10.1 大數(shù)據(jù)上云概述
10.1.1 阿里云大數(shù)據(jù)架構(gòu)
10.1.2 阿里云大數(shù)據(jù)產(chǎn)品介紹
10.1.3 大數(shù)據(jù)上云工具
10.1.4 大數(shù)據(jù)上云的優(yōu)勢
10.1.5 大數(shù)據(jù)處理場景
10.1.6 常見的大數(shù)據(jù)上云方案
10.2 大數(shù)據(jù)上云工具
10.2.1 客戶調(diào)研
10.2.2 資源評估
10.2.3 數(shù)據(jù)上云
10.2.4 業(yè)務(wù)邏輯上云
10.3 大數(shù)據(jù)上云(E-MapReduce)
10.3.1 準(zhǔn)備工作
10.3.2 資源評估
10.3.3 數(shù)據(jù)遷移
10.3.4 Hive 遷移
10.3.5 作業(yè)部署
10.3.6 雙跑和校驗(yàn)
10.4 大數(shù)據(jù)上云案例
10.4.1 某氣象企業(yè)數(shù)據(jù)上云案例
10.4.2 某直播企業(yè)數(shù)據(jù)上云案例
10.4.3 某政務(wù)平臺數(shù)據(jù)上云案例
第 11 章 企業(yè)遷云綜合案例
11.1 交通管理行業(yè)案例
11.1.1 行業(yè)背景
11.1.2 OLTP 系統(tǒng)遷云
11.1.3 典型 OLTP 系統(tǒng)平滑遷云
11.1.4 大規(guī)模離線計(jì)算系統(tǒng)遷云
11.1.5 典型的大規(guī)模離線計(jì)算系統(tǒng)遷云
11.1.6 遷云后的變化
11.2 互聯(lián)網(wǎng)金融行業(yè)案例
11.2.1 遷云背景
11.2.2 遷云解決方案
11.2.3 遷云過程中的問題剖析
11.2.4 遷云后的變化