注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)操作系統(tǒng)分布式系統(tǒng)常用技術(shù)及案例分析

分布式系統(tǒng)常用技術(shù)及案例分析

分布式系統(tǒng)常用技術(shù)及案例分析

定 價(jià):¥99.00

作 者: 柳偉衛(wèi)
出版社: 電子工業(yè)出版社
叢編項(xiàng):
標(biāo) 簽: 操作系統(tǒng)/系統(tǒng)開(kāi)發(fā) 計(jì)算機(jī)/網(wǎng)絡(luò) 系統(tǒng)開(kāi)發(fā)

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787121307713 出版時(shí)間: 2017-01-01 包裝: 平塑勒
開(kāi)本: 頁(yè)數(shù): 700 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  本書(shū)分為三大部分,即分布式系統(tǒng)基礎(chǔ)理論、分布式系統(tǒng)常用技術(shù)以及經(jīng)典的分布式系統(tǒng)案例分析。*部分主要介紹分布式系統(tǒng)基礎(chǔ)理論知識(shí),總結(jié)一些在設(shè)計(jì)分布式系統(tǒng)時(shí)需要考慮的范式、知識(shí)點(diǎn)以及可能會(huì)面臨的問(wèn)題,其中包括線(xiàn)程、通信、一致性、容錯(cuò)性、CAP 理論、安全性和并發(fā)等相關(guān)內(nèi)容;同時(shí)講述分布式系統(tǒng)的常見(jiàn)架構(gòu)體系,其中也包括*近比較火的RESTful 風(fēng)格架構(gòu)、微服務(wù)、容器技術(shù)等。第二部分主要列舉了在分布式系統(tǒng)應(yīng)用中經(jīng)常用到的一些主流技術(shù),并介紹這些技術(shù)的作用和用法;這些技術(shù)涵蓋了分布式消息服務(wù)、分布式計(jì)算、分布式存儲(chǔ)、分布式監(jiān)控系統(tǒng)、分布式版本控制、RESTful、微服務(wù)、容器等領(lǐng)域的內(nèi)容。第三部分選舉了以淘寶網(wǎng)和 Twitter 為代表的國(guó)內(nèi)外知名互聯(lián)網(wǎng)企業(yè)的大型分布式系統(tǒng)案例,分析其架構(gòu)設(shè)計(jì)以及演變過(guò)程;這部分相當(dāng)于是對(duì)第二部分零散的技術(shù)點(diǎn)做一個(gè)“串燒”,讓讀者可以結(jié)合技術(shù)的理論,看到實(shí)戰(zhàn)的效果。

作者簡(jiǎn)介

  多年軟件開(kāi)發(fā)管理及系統(tǒng)架構(gòu)經(jīng)驗(yàn)。負(fù)責(zé)過(guò)多個(gè)省、國(guó)家級(jí)大型分布式系統(tǒng)的設(shè)計(jì)與研發(fā),也負(fù)責(zé)過(guò)多個(gè)大型項(xiàng)目的微服務(wù)架構(gòu)的技術(shù)改造,在實(shí)際工作中,積累了大量的微服務(wù)架構(gòu)經(jīng)驗(yàn)。

圖書(shū)目錄

目  錄
第1章 分布式系統(tǒng)基礎(chǔ)知識(shí)1
1.1 概述2
1.1.1 什么是分布式系統(tǒng)2
1.1.2 集中式系統(tǒng)VS.分布式系統(tǒng)3
1.1.3 如何設(shè)計(jì)分布式系統(tǒng)4
1.1.4 分布式系統(tǒng)所面臨的挑戰(zhàn)5
1.2 線(xiàn)程6
1.2.1 什么是線(xiàn)程6
1.2.2 進(jìn)程和線(xiàn)程7
1.2.3 編程語(yǔ)言中的線(xiàn)程對(duì)象8
1.2.4 SimpleThreads示例11
1.3 通信14
1.3.1 網(wǎng)絡(luò)基礎(chǔ)知識(shí)14
1.3.2 網(wǎng)絡(luò)I/O模型的演進(jìn)19
1.3.3 遠(yuǎn)程過(guò)程調(diào)用(RPC)33
1.3.4 面向消息的通信41
1.4 一致性43
1.4.1 以數(shù)據(jù)為中心的一致性模型44
1.4.2 以客戶(hù)為中心的一致性45
1.5 容錯(cuò)性46
1.5.1 基本概念46
1.5.2 故障分類(lèi)47
1.5.3 使用冗余來(lái)掩蓋故障48
1.5.4 分布式提交48
1.6 CAP理論52
1.6.1 什么是CAP理論52
1.6.2 為什么說(shuō)CAP只能三選二53
1.6.3 CAP常見(jiàn)模型55
1.6.4 CAP的意義56
1.6.5 CAP最新發(fā)展56
1.7 安全性57
1.7.1 基本概念58
1.7.2 加密算法60
1.7.3 安全通道63
1.7.4 訪(fǎng)問(wèn)控制72
1.8 并發(fā)74
1.8.1 線(xiàn)程與并發(fā)75
1.8.2 并發(fā)與并行75
1.8.3 并發(fā)帶來(lái)的風(fēng)險(xiǎn)76
1.8.4 同步(Synchronization)78
1.8.5 原子訪(fǎng)問(wèn)(Atomic Access)83
第2章 分布式系統(tǒng)架構(gòu)體系85
2.1 基于對(duì)象的體系結(jié)構(gòu)86
2.1.1 分布式對(duì)象86
2.1.2 微軟DCOM(COM+)87
2.1.3 CORBA88
2.1.4 Java RMI90
2.2 面向服務(wù)的架構(gòu)(SOA)93
2.2.1 架構(gòu)VS.標(biāo)準(zhǔn)94
2.2.2 SOA的基本概念95
2.2.3 基于Web Services的SOA97
2.2.4 SOA的演變112
2.3 REST風(fēng)格的架構(gòu)112
2.3.1 什么是REST112
2.3.2 REST有哪些特征113
2.3.3 Java實(shí)現(xiàn)REST的例子115
2.3.4 REST API最佳實(shí)踐125
2.4 微服務(wù)架構(gòu)(MSA)128
2.4.1 什么是MSA128
2.4.2 MSA VS. SOA130
2.4.3 何時(shí)采用MSA134
2.4.4 如何構(gòu)建微服務(wù)135
2.5 容器技術(shù)139
2.5.1 虛擬化技術(shù)139
2.5.2 容器VS.虛擬機(jī)139
2.5.3 基于容器的持續(xù)部署142
2.6 Serverless架構(gòu)149
2.6.1 什么是Serverless架構(gòu)150
2.6.2 Serverless典型的應(yīng)用場(chǎng)景151
2.6.3 常見(jiàn)的Serverless框架153
2.6.4 Serverless架構(gòu)原則155
2.6.5 例子:使用Serverless實(shí)現(xiàn)游戲全球同服157
第3章 分布式消息服務(wù)164
3.1 Apache ActiveMQ165
3.1.1 Apache ActiveMQ簡(jiǎn)介165
3.1.2 Apache ActiveMQ安裝配置166
3.1.3 例子:producer-consumer173
3.1.4 例子:使用JMX來(lái)監(jiān)控ActiveMQ174
3.1.5 例子:使用Java實(shí)現(xiàn)producer-consumer176
3.2 RabbitMQ180
3.2.1 RabbitMQ簡(jiǎn)介180
3.2.2 RabbitMQ安裝配置181
3.2.3 例子:Work Queues185
3.2.4 例子:Publish/Subscribe191
3.2.5 例子:Routing195
3.2.6 例子:Topics200
3.2.7 例子:RPC204
3.3 RocketMQ210
3.3.1 RocketMQ簡(jiǎn)介210
3.3.2 RocketMQ安裝配置213
3.3.3 例子:使用Java實(shí)現(xiàn)producer-consumer214
3.3.4 RocketMQ最佳實(shí)踐219
3.4 Apache Kafka223
3.4.1 Apache Kafka簡(jiǎn)介224
3.4.2 Apache Kafka的核心概念225
3.4.3 Apache Kafka的使用場(chǎng)景228
3.4.4 Apache Kafka的安裝、配置、使用229
第4章 分布式計(jì)算236
4.1 MapReduce237
4.1.1 MapReduce簡(jiǎn)介237
4.1.2 MapReduce的編程模型238
4.1.3 MapReduce的實(shí)現(xiàn)243
4.1.4 MapReduce的使用技巧248
4.2 Apache Hadoop251
4.2.1 Apache Hadoop簡(jiǎn)介252
4.2.2 Apache Hadoop核心組件253
4.2.3 Apache Hadoop單節(jié)點(diǎn)上的安裝配置254
4.2.4 Apache Hadoop集群上的安裝配置258
4.2.5 例子:詞頻統(tǒng)計(jì)WordCount程序267
4.3 Apache Spark272
4.3.1 Apache Spark簡(jiǎn)介272
4.3.2 Apache Spark與Apache Hadoop的關(guān)系274
4.3.3 Apache Spark 2.0的新特性275
4.3.4 Apache Spark的安裝和使用279
4.3.5 Apache Spark集群模式280
4.4 Apache Mesos282
4.4.1 Apache Mesos簡(jiǎn)介283
4.4.2 Apache Mesos的安裝、使用285
4.4.3 設(shè)計(jì)高可用的Mesos framework289
第5章 分布式存儲(chǔ)296
5.1 Bigtable297
5.1.1 Bigtable簡(jiǎn)介297
5.1.2 Bigtable的數(shù)據(jù)模型298
5.1.3 Bigtable的實(shí)現(xiàn)300
5.1.4 Bigtable的性能優(yōu)化304
5.2 Apache HBase308
5.2.1 Apache HBase簡(jiǎn)介308
5.2.2 Apache HBase基本概念310
5.2.3 Apache HBase架構(gòu)318
5.2.4 Apache HBase的安裝、配置、使用332
5.2.5 本地偽分布式336
5.2.6 完全分布式338
5.3 Apache Cassandra342
5.3.1 Apache Cassandra簡(jiǎn)介342
5.3.2 Apache Cassandra的應(yīng)用場(chǎng)景345
5.3.3 Apache Cassandra的架構(gòu)、數(shù)據(jù)模型346
5.3.4 用于配置Apache Cassandra的核心組件347
5.3.5 Apache Cassandra的安裝、配置、使用349
5.4 Memcached352
5.4.1 Memcached簡(jiǎn)介352
5.4.2 Memcached的架構(gòu)353
5.4.3 Memcached的安裝、使用355
5.4.4 Memcached客戶(hù)端358
5.5 Redis370
5.5.1 Redis簡(jiǎn)介370
5.5.2 Redis的下載、安裝、使用372
5.5.3 Redis的數(shù)據(jù)類(lèi)型及抽象372
5.6 MongoDB392
5.6.1 MongoDB簡(jiǎn)介392
5.6.2 MongoDB的安裝、配置、運(yùn)行394
5.6.3 MongoDB核心概念401
5.6.4 MongoDB的數(shù)據(jù)模型406
5.6.5 示例:Java連接MongoDB420
第6章 分布式監(jiān)控422
6.1 Nagios423
6.1.1 Nagios簡(jiǎn)介423
6.1.2 Nagios的安裝、使用424
6.1.3 Nagios監(jiān)控428
6.1.4 Nagios插件446
6.2 Zabbix448
6.2.1 Zabbix簡(jiǎn)介449
6.2.2 安裝Zabbix451
6.2.3 Zabbix對(duì)于容器的支持460
6.2.4 Zabbix基本概念463
6.3 Consul474
6.3.1 Consul簡(jiǎn)介475
6.3.2 Consul架構(gòu)476
6.3.3 Consul的安裝和使用478
6.3.4 Consul agent492
6.4 ZooKeeper501
6.4.1 ZooKeeper簡(jiǎn)介501
6.4.2 ZooKeeper的安裝和使用505
6.4.3 ZooKeeper內(nèi)部工作原理509
6.4.4 例子:ZooKeeper實(shí)現(xiàn)barrier和producer-consumer queue514
第7章 分布式版本控制系統(tǒng)522
7.1 Bazaar523
7.1.1 Bazaar簡(jiǎn)介523
7.1.2 Bazaar的核心概念525
7.1.3 Bazaar的安裝526
7.1.4 Bazaar的使用528
7.2 Mercurial533
7.2.1 Mercurial簡(jiǎn)介533
7.2.2 Mercurial的核心概念533
7.2.3 Mercurial的安裝537
7.2.4 Mercurial的使用538
7.3 Git545
7.3.1 Git簡(jiǎn)介545
7.3.2 Git的安裝546
7.3.3 Git的基礎(chǔ)概念548
7.3.4 Git的使用551
第8章 RESTful API、微服務(wù)及容器技術(shù)578
8.1 Jersey579
8.1.1 Jersey簡(jiǎn)介579
8.1.2 Jersey的模塊和依賴(lài)580
8.1.3 JAX-RS核心概念583
8.1.4 例子:用SSE構(gòu)建實(shí)時(shí)Web應(yīng)用595
8.2 Spring Boot603
8.2.1 Spring Boot簡(jiǎn)介603
8.2.2 Spring Boot的安裝604
8.2.3 Spring Boot的使用610
8.2.4 Spring Boot的屬性與配置615
8.3 Docker620
8.3.1 Docker簡(jiǎn)介621
8.3.2 Docker的特性621
8.3.3 Docker的概念和原理622
8.3.4 Docker Engine的安裝628
8.3.5 Docker的使用633
第9章 淘寶網(wǎng):“雙11”神話(huà)的締造者636
9.1 從LAMP到Java平臺(tái)的轉(zhuǎn)變637
9.1.1 淘寶網(wǎng)的誕生與發(fā)展637
9.1.2 “平民英雄”LAMP架構(gòu)638
9.1.3 數(shù)據(jù)庫(kù)更改為Oracle639
9.1.4 向Java平臺(tái)轉(zhuǎn)變642
9.2 堅(jiān)定不移地走“去IOE”的道路643
9.2.1 使用小型機(jī)、EMC存儲(chǔ)644
9.2.2 考慮“去IOE”644
9.2.3 如何去“I”646
9.2.4 如何去“O”649
9.2.5 如何去“E”650
9.3 打造云計(jì)算,決戰(zhàn)“雙11”653
9.3.1 “大淘寶”戰(zhàn)略簡(jiǎn)介653
9.3.2 成立阿里云,專(zhuān)注云計(jì)算656
9.3.3 利用大數(shù)據(jù)優(yōu)化物流660
9.3.4 技術(shù)是決勝“雙11”的關(guān)鍵661
第10章 Twitter:實(shí)時(shí)信息傳遞的王者664
10.1 緩存,讓響應(yīng)更快665
10.1.1 Twitter的誕生665
10.1.2 RoR的蠻荒時(shí)代666
10.1.3 使用Memcached667
10.2 服務(wù)拆分與治理668
10.2.1 關(guān)系數(shù)據(jù)庫(kù)不是萬(wàn)靈藥668
10.2.2 系統(tǒng)拆分,平臺(tái)轉(zhuǎn)換670
10.2.3 Finagle670
10.3 抗擊流量的洪流672
10.3.1 業(yè)務(wù)的重新設(shè)計(jì)673
10.3.2 Storm處理實(shí)時(shí)的大數(shù)據(jù)675
10.3.3 從Storm到Heron676
參考文獻(xiàn)680

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)