[ 收藏 ] [ 简体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

GraphQL實戰 寫給全棧工程師們
該商品所屬分類:圖書 -> 數據庫
【市場價】
452-656
【優惠價】
283-410
【作者】 王北南 
【出版社】機械工業出版社 
【ISBN】9787111630937
【折扣說明】一次購物滿999元台幣免運費+贈品
一次購物滿2000元台幣95折+免運費+贈品
一次購物滿3000元台幣92折+免運費+贈品
一次購物滿4000元台幣88折+免運費+贈品
【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
版本正版全新電子版PDF檔
您已选择: 正版全新
溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
*. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
*. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
*. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
內容介紹



出版社:機械工業出版社
ISBN:9787111630937
商品編碼:53902811302

品牌:文軒
出版時間:2019-07-01
代碼:59

作者:王北南

    
    
"



作  者:王北南 著
/
定  價:59
/
出 版 社:機械工業出版社
/
出版日期:2019年07月01日
/
頁  數:184
/
裝  幀:平裝
/
ISBN:9787111630937
/
目錄
●前言
導讀——本書為快速學習設計
第1章 GraphQL API設計和全棧開發1
1.1 什麼是GraphQL2
1.2 分布式繫統2
1.2.1 擴展性3
1.2.2 可靠性3
1.2.3 遠程資源共享4
1.2.4 更強的處理能力4
1.3 C/S架構與API4
1.3.1 C/S架構4
1.3.2 前端與後端5
1.3.3 全棧程序員5
1.3.4 應用程序接口6
1.4 RESTful API的起源與特點7
1.4.1 倉庫保管員的窘境7
1.4.2 REST無狀態的好處8
1.4.3 RESTful API是否真的無狀態8
1.4.4 RESTful API是否是數據傳輸協議9
1.4.5 RESTful API的好處是什麼9
1.5 RESTful API的主要問題10
1.5.1 數據定制的問題10
1.5.2 多次請求的問題10
1.5.3 異常處理的問題10
1.5.4 返回數據格式未知的問題11
1.5.5 請求Endpoint和方式過多的問題11
1.6 GraphQL如何解決RESTful API的問題11
1.6.1 GraphQL可以自由定制數據11
1.6.2 GraphQL可以把多次請求合並為一個12
1.6.3 GraphQL錯誤以及異常信息明確12
1.6.4 GraphQL返回數據的形式和查詢請求同構13
1.6.5 GraphQL使用單一的Endpoint14
1.6.6 GraphQL替代了什麼14
1.7 GraphQL引發的疑慮15
1.7.1 GraphQL是否還是RESTful15
1.7.2 GraphQL增大了後端繫統設計的難度15
1.7.3 GraphQL是否會帶來後端性能問題15
1.7.4 遷移到GraphQL的代價16
1.7.5 GraphQL是該前端驅動還是後端驅動16
1.8 GraphQL全棧框架的選用16
1.8.1 Relay17
1.8.2 Apollo17
第2章 GraphQL初體驗——電商API設計18
2.1 基本開發環境的搭建19
2.2 和GraphQL互動20
2.2.1 實時交互界面GraphiQL的使用20
2.2.2 通過curl發送請求21
2.2.3 使用第三方客戶端21
2.3 Schema與定義數據類型22
2.3.1 強類型的查詢語言22
2.3.2 服務器端的Schema23
2.3.3 標量類型24
2.3.4 自定義復雜類型25
2.3.5 枚舉26
2.3.6 列表以及對像的列表27
2.4 定義操作28
2.4.1 隻讀查詢操作28
2.4.2 可寫修改操作30
2.4.3 訂閱操作31
2.4.4 傳遞輸入類型31
2.4.5 操作也是字段33
2.5 精煉數據模型與操作33
2.5.1 接口和繼承33
2.5.2 聯合35
2.6 精煉查詢36
2.6.1 使用變量36
2.6.2 使用別名37
2.6.3 使用片段38
2.6.4 類型條件39
2.6.5 使用Directive40
2.6.6 後端工程師的福音41
2.7 簡單數據驗證41
2.7.1 必填值的驗證42
2.7.2 標量值的驗證42
第3章 電商網站前端開發44
3.1 GraphQL前端開發要點45
3.1.1 前端開發的主要任務45
3.1.2 前端開發的難點46
3.1.3 前端技術的選型46
3.2 前端React項目初始化47
3.2.1 React特點簡介47
3.2.2 React 整合GraphQL前端繫統設計48
3.2.3 創建React前端工程49
3.2.4 安裝Apollo客戶端49
3.2.5 初始化GraphQL客戶端50
3.2.6 手動發送查詢51
3.3 隻讀數據的React UI組件51
3.3.1 構建GraphQL Query查詢51
3.3.2 定素組件52
3.3.3 定義列表組件52
3.3.4 綁定靜態查詢和UI組件53
3.3.5 使用Query組件54
3.3.6 從Query組件中接收一個參數55
3.3.7 數據的接收以及出錯處理56
3.3.8 手動刷新57
3.4 修改數據的React UI組件57
3.4.1 定義一個帶有變量的 tation操作58
3.4.2 使用 tation UI組件58
3.5 支持訂閱59
3.5.1 什麼時候使用訂閱59
3.5.2 訂閱是如何實現的60
3.6 本地數據60
第4章 基於Node.js的GraphQL後端61
4.1 GraphQL後端架構思想62
4.1.1 “薄”層設計62
4.1.2 “門戶”設計64
4.1.3 面向業務設計64
4.2 GraphQL層的職責與實現65
4.2.1 GraphQL層的職責65
4.2.2 GraphQL層的實現65
4.2.3 Resolver函數與分治策略67
4.3 Apollo GraphQL後端框架68
4.3.1 依賴庫的安裝68
4.3.2 定義和解析Schema69
4.3.3 綁定處理查詢操作函數69
4.4 詳解Resolver函數72
4.4.1 Resolver的各種返回類型72
4.4.2 Resolve一個類型72
4.4.3 Resolve一個復雜類型字段73
4.4.4 Resolve一個標量字段75
4.4.5 Resolve一個自定義標量字段77
4.4.6 Resolve一個列表80
4.5 GraphQL後端驗證以及錯誤處理81
4.5.1 簡單方式81
4.5.2 使用自定義標量類型進行驗證82
4.6 異步IO84
4.6.1 基於異步非阻塞IO的JavaScript實現84
4.6.2 同步還是異步85
4.6.3 異步Resolver85
4.7 使用JavaScript開發後端服務的問題86
第5章 基於Go語言協程的GraphQL服務88
5.1 使用協程和上下文89
5.1.1 使用協程的原因89
5.1.2 協程和GraphQL服務90
5.1.3 上下文和作用域90
5.1.4 派生上下文91
5.2 Go語言的Web服務和中間件92
5.2.1 構建Web服務92
5.2.2 Web服務中間件93
5.2.3 基於中間件的後端架構94
5.2.4 數據收集中間件95
5.2.5 數據庫會話中間件95
5.3 GraphQL Http請求的處理97
5.3.1 GraphQL請求的解析97
5.3.2 執行GraphQL查詢和準備結果98
5.3.3 合理使用Http請求上下文100
5.5 使用Go語言的GraphQL後端是否會有性能問題100
第6章 實體數據持久化建模與實現102
6.1 基於ID的數據庫訪問層設計103
6.1.1 繫統和API設計103
6.1.2 實現數據讀取104
6.1.3 實現數據寫入105
6.2 使用ID訪問數據的好處105
6.2.1 利於數據庫查詢性能優化105
6.2.2 利於分片106
6.2.3 利於和緩存結合106
6.2.4 防止重復讀取同一資源106
6.2.5 利於Resolver函數實現106
6.3 建立基於ID的抽像Schema數據類型107
6.3.1 Relay的Schema設計方案107
6.3.2 Relay的GraphQL查詢設計107
6.4 分布式ID生成算法108
6.4.1 Snowflake ID108
6.4.2 Fast ID的安裝和代碼示例108
6.4.3 推薦設置109
6.5 GraphQL連接數據庫訪問層109
6.5.1 用戶數據DAO實例110
6.5.2 DAO在GraphQL後端架構中存在的意義111
6.6 簡單分頁設計111
6.6.1 簡單分頁設計112
6.6.2 Cursor分頁方式113
6.6.3 客戶端分頁顯示114
6.6.4 服務器端Resolve分頁114
6.7 一對多關繫115
6.7.1 Schema和Resolver函數定義116
6.7.2 外鍵方式116
6.7.3 聚合方式117
第7章 “關繫”的設計和持久化118
7.1 用戶關繫建模119
7.1.1 如何表達“圖”119
7.1.2 基本設計思路120
7.2 邊的集合與遊標分頁120
7.2.1 邊的簡單表達120
7.2.2 邊的簡單分頁121
7.2.3 邊的遊標分頁122
7.3 借鋻Relay的邊設計方案123
7.4 “關繫”數據的數據訪問層設計124
第8章 全棧API優化125
8.1 前後端數據的一致性126
8.1.1 數據的存在形式126
8.1.2 Query與 tation126
8.2 客戶端緩存更新機制128
8.2.1 客戶端使用 tation更新緩存128
8.2.2 定制更新緩存129
8.3 出錯、超時與重試130
8.3.1 錯誤信息的定義130
8.3.2 服務器端如何返回出錯信息131
8.3.3 客戶端如何處理出錯132
8.4 使用高階函數來優化GraphQL組件132
8.4.1 高階函數133
8.4.2 使用函數式的聲明方式133
8.4.3 使用Recompose134
8.5 通盤考慮API設計135
8.5.1 面向真實數據關繫建模135
8.5.2 遺留數據建模136
8.6 自省和文檔136
8.6.1 命名比文檔重要136
8.6.2 自省137
8.6.3 文檔139
8.6.4 API的升級與兼容性140
第9章 認證與授權141
9.1 基於Http協議的用戶認證142
9.1.1 使用Cookie的認證方式142
9.1.2 使用訪問令牌Token的認證方式142
9.2 基於訪問令牌Token的用戶認證143
9.2.1 訪問令牌的生成143
9.2.2 GraphQL整合Token要點144
9.2.3 服務器端拿到Token以後做什麼144
9.3 查詢操作層面的權限控制145
9.3.1 設計GraphQL的授權服務146
9.3.2 JWT Token中數據的定義146
9.3.3 JWT Token的生成147
9.3.4 驗證Token中間件148
9.3.5 解析和驗證Token148
9.3.6 通過上下文傳遞授權信息149
9.3.7 數據細粒度的權限控制150
第10章 高並發後端優化151
10.1 處理N+1問題152
10.1.1 什麼是N+1問題152
10.1.2 N+1問題為什麼會危害性能152
10.1.3 解決N+1問題的思路153
10.1.4 GraphQL如何批處理查詢153
10.2 使用DataLoader154
10.2.1 DataLoader的工作模式154
10.2.2 批處理函數156
10.2.3 DataLoader與下遊服務157
10.2.4 批處理函數對於error的處理157
10.2.5 為每個Http請求創建DataLoader157
10.3 使用Cache159
10.3.1 GraphQL與RESTful API對緩存的不同設計159
10.3.2 Memcached的查詢與優化160
10.3.3 Redis的查詢與優化161
10.4 NoSQL與下遊服務的數據庫查詢與優化161
10.4.1 使用內嵌對像存儲數據161
10.4.2 使用對像引用存儲數據162
10.4.3 基於列Column存儲的數據建模162
10.4.4 下遊服務數據源的優化163
10.5 SQL數據庫的數據查詢合並與優化163
10.5.1 基於Key-Value設計的SQL數據庫優化163
10.5.2 基於傳統數據庫查詢的數據庫優化164
10.5.3 高並發下的SQL數據查詢瓶頸164
10.6 GraphQL與大數據和機器學習166
10.6.1 使用GraphQL獲取實時數據166
10.6.2 獲取大批次對像團的問題167
10.6.3 高頻訪問GraphQL服務的問題167
10.6.4 GraphQL應用的數據采集168
第11章 測試與部署170
11.測試171
11.1.1 在Resolver函數中使用依賴注入171
11.1.2 創建Mock對像172
11.1.3 測試代碼173
11.2 集成測試174
11.2.1 準備環境174
11.2.2 準備客戶端174
11.2.3 編寫測試用例並驗證結果175
11.2.4 持續集成175
11.3 壓力測試與Profiling176
11.3.1 簡單壓力測試177
11.3.2 Fork生產環境流量177
11.3.3 使用訪問日志進行壓力測試178
11.3.4 Diffy測試178
11.4 開發環境部署179
11.4.1 配置下遊服務179
11.4.2 負載均衡的部署180
11.5 生產環境彈性部署181
11.5.1 服務注冊與發現 182
11.5.2 高可用性繫統183
後記184
內容簡介
《GraphQL實戰——寫給全棧工程師們》以當下流行的移動互聯網應用開發為切入點,結合作者多年的前後端實際架構經驗,針對目前互聯網上程序員們對GraphQL的疑問和誤解,並輔以業界真實案例,對前後端設計中的難點要點分別加以介紹。在前端,本書重點講述了如何提升用戶體驗和響應速度;在後端,主要講解了在高並發海量數據環境下的設計與優化;最後,還介紹了如何讓GraphQL與大數據平臺整合來訓練機器學習模型。《GraphQL實戰——寫給全棧工程師們》內容涵蓋前端、後端和大數據平臺開發,非常適合全棧程序員閱讀,也可作為前端程序員、後端程序員、大數據工程師、算法工程師和技術型產品經理提升知識儲備的參考書。



"
 
網友評論  我們期待著您對此商品發表評論
 
相關商品
【同作者商品】
王北南
  本網站暫時沒有該作者的其它商品。
有該作者的商品通知您嗎?
請選擇作者:
王北南
您的Email地址
在線留言 商品價格為新臺幣
關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
返回頂部