幫助中心 | 我的帳號 | 關於我們

Serverless學習手冊

  • 作者:(美)傑森·卡茨|責編:劉熾|譯者:孫立超
  • 出版社:中國電力
  • ISBN:9787519876982
  • 出版日期:2023/04/01
  • 裝幀:平裝
  • 頁數:234
人民幣:RMB 78 元      售價:
放入購物車
加入收藏夾

內容大鋼
    無論你的公司是在考慮Serverless計算,還是已經決定採用這個模型,這本實用的書對你都是非常合適。本書作者向處於職業初中期的開發人員展示了使用這個模型構建和發布可維護和可擴展的服務所需要的知識。有了這本書,你將學習如何通過Serverless計算的視野,在雲計算中構建一個現代的生產系統。你將發現Serverless如何將你從生產中設置和維護系統的繁瑣任務中解脫出來。你還將探索新的方法來提升你的職業生涯,並充滿自信地進行設計、開發和部署。
    這本書分為三個部分,包括:
    生產路徑。檢查分散式系統、微服務、介面和Serverless體系結構和模式的進出情況。
    工具。深入研究監控、可監控性和警報、日誌記錄、流水線、自動化和部署。
    概念。學習如何設計安全性和隱私性,如何通過測試和模擬系統來管理質量,以及如何為失敗做計劃。

作者介紹
(美)傑森·卡茨|責編:劉熾|譯者:孫立超
    傑森·卡茨是CloudPro.app的創造者。這是一個為雲計算創造生產力的工具。他也提供serverless架構設計和更經濟使用雲系統的顧問服務。在Capital One收購Paribus后,他擔任Capital One的軟體工程部門總監,並曾經擔任Blink健康公司的工程部門總監。Jason是一個連續的企業家和天使投資人,他創立並參與了許多新的企業。

目錄
第0章  Serverless介紹
    0.1.2  雲服務提供商概況
    0.1.3  可靠性,可用性,災難恢復
  0.2  Serverless的優勢
    0.2.1  增加的可伸縮性、安全性和可靠性
    0.2.2  只支付你使用的東西
    0.2.3  節省管理伺服器的時間和金錢
    0.2.4  提高開發人員的生產力
    0.2.5  降低管理職責
    0.2.6  集成的便利
  0.3  Serverless的弱點
    0.3.1  冷(啟動)戰
    0.3.2  計算時間
    0.3.3  VPC/網路問題
    0.3.4  應用程序的大小
    0.3.5  可能會更貴
    0.3.6  廠商鎖定
    0.3.7  複雜的調試
  0.4  什麼時候使用Serverless有意義?
  0.5  Serverless 的電腦什麼時候不適合你?
  0.6  讓我們開始
第一部分  生產之路
第1章  分散式系統
  1.1  什麼是分散式系統?
  1.2  為什麼我們需要一個分散式系統?
  1.3  分散式系統的嚴酷現實
    1.3.1  物理世界
    1.3.2  失蹤的消息
    1.3.3  不可靠的時鐘
    1.3.4  級聯故障
    1.3.5  更新產生的意外
    1.3.6  冪等性
  1.4  我負責什麼?
  1.5  在設計分散式系統時,你需要考慮哪些?
    1.5.1  松耦合(或解耦)
    1.5.2  容錯
    1.5.3  生成唯一的(主)鍵
    1.5.4  規劃冪等性
    1.5.5  兩階段的更新
  1.6  延伸閱讀
  1.7  結論
第2章  微服務
  2.1  為什麼要使用微服務?
    2.1.1  提高開發速度
    2.1.2  增加開發人員的自由
  2.2  微服務的問題
    2.2.1  增加了複雜性
    2.2.2  需要適當的DevOps實踐和資源
    2.2.3  本地開發和測試的挑戰
  2.3  如何有效地使用微服務?

    2.3.1  一致的介面
    2.3.2  鬆散耦合
  2.4  微服務有多微小?
  2.5  選擇單體應用還是微服務
    2.5.1  什麼時候應該使用單體應用?
    2.5.2  什麼時候需要使用微服務?
  2.6  結論
第3章  Serverless 架構和模式
  3.1  架構師的角色
  3.2  要成為一名架構師,你需要知道哪些?
  3.3  決策
    3.3.1  什麼樣的決策?
    3.3.2  記錄你的決策
    3.3.3  我們如何做決策?
    3.3.4  我們什麼時候做決策?
  3.4  雲服務提供商組件
    3.4.1  流
    3.4.2  隊列
    3.4.3  桶
    3.4.4  計算
    3.4.5  數據存儲
    3.4.6  身份認證服務
    3.4.7  API 網關
    3.4.8  GraphQL
    3.4.9  網路
    3.4.10  狀態機
    3.4.11  日誌記錄
    3.4.12  監測和報警
  3.5  來自雲服務提供商的事件
  3.6  模式
    3.6.1  示例1:Serverless單體應用
    3.6.2  示例2:傳入Webhook
    3.6.3  示例3:使用雲服務提供商進行用戶身份驗證
    3.6.4  示例4:通用的後台任務模式
    3.6.5  示例5:流提取、轉換、載入
    3.6.6  示例6:創建自己的輪詢集成
    3.6.7  示例7:處理文件和圖像
    3.6.8  示例8:遷移服務模式
    3.6.9  示例9:散開
  3.7  結論
第4章  介面
  4.1  介面:需要一些組裝
    4.1.1  消息
    4.1.2  協議
    4.1.3  約定
  4.2  Serverless 介面
    4.2.1  自動重試和死信隊列
    4.2.2  有限與無限規模
  4.3  設計介面
    4.3.1  消息/載荷

    4.3.2  會話和用戶/身份驗證
    4.3.3  避免無約束的請求
    4.3.4  介面與實現
    4.3.5  帶邏輯的線
  4.4  設計不愉快的路徑
    4.4.1  驗證輸入
    4.4.2  失敗
  4.5  與其他服務集成的策略
    4.5.1  超時
    4.5.2  重試
    4.5.3  指數補償
    4.5.4  網路鉤子
    4.5.5  評估外部服務
    4.5.6  速度限制
  4.6  結論
第二部分  工具
第5章  Serverless 框架
  5.1  為什麼使用Serverless框架?
  5.2  什麼時候Serverless框架不適合你
    5.2.1  AWS 是唯一的一等公民
    5.2.2  AWS 的雲服務模板也並不完美
    5.2.3  你的基礎設施依賴陌生人
  5.3  開始之前你需要知道些什麼
    5.3.1  YAML
    5.3.2  Node.js
    5.3.3  雲資源和許可權
    5.3.4  基礎架構模板
    5.3.5  生產的機密
    5.3.6  .gitignore文件
  5.4  serverless.yml文件的組成
    5.4.1  提供者
    5.4.2  環境
    5.4.3  函數
    5.4.4  資源
    5.4.5  包
    5.4.6  插件
    5.4.7  自定義
    5.4.8  用於健全和安全的命名空間
  5.5  使用Serverless 命令
    5.5.1  安裝Serverless
    5.5.2  使用憑證設置Serverless
    5.5.3  使用Serverless install拉入模板
    5.5.4  檢查示例項目的包(裡面有什麼)
    5.5.5  部署
    5.5.6  調用函數,並查看日誌
    5.5.7  回滾
    5.5.8  銷毀服務
    5.5.9  部署軟體包
  5.6  現實世界serverless.yml
    5.6.1  設置環境變數

    5.6.2  修改許可權
  5.7  結論
第6章  監控、可觀察性和警報
  6.1  監控是什麼?
    6.1.1  我們為什麼需要監控?
    6.1.2  監控與Serverless有什麼關係?
    6.1.3  自動化的入口
  6.2  我有什麼選擇?
    6.2.1  托管SaaS 產品
    6.2.2  自托管和開放源碼
  6.3  監控的組成部分
    6.3.1  監控指標
    6.3.2  圖表和圖形
    6.3.3  儀錶板
    6.3.4  警報/警告
  6.4  選擇先進的實踐
    6.4.1  心跳
    6.4.2  冒煙測試和/或金絲雀
    6.4.3  世界上最重要的度量標準
    6.4.4  避免廠商鎖定
    6.4.5  隨著時間的推移清除度量和警報
  6.5  結論
第7章  日誌
  7.1  日誌是什麼?
  7.2  為什麼需要日誌?
  7.3  何時依賴日誌而不是監控指標
  7.4  應該記錄什麼?
  7.5  你不應該記錄什麼?
  7.6  日誌是如何工作的?
    7.6.1  確保你的日誌可伸縮
    7.6.2  結構化的日誌
    7.6.3  更有效的日誌調試
    7.6.4  搜索日誌
    7.6.5  異常日誌(Sentry)
  7.7  收集其他日誌
  7.8  合規
  7.9  分散式跟蹤
  7.10  加密日誌以保證隱私和遵從性
  7.11  那麼你應該怎麼做呢?
    7.11.1  只加密敏感欄位的值
    7.11.2  加密整個日誌語句
  7.12  結論
第8章  變更、自動化和部署流水線
  8.1  應對變化
  8.2  自動化的作用
  8.3  使你的代碼為部署到生產系統做好準備
  8.4  基礎設施即代碼
  8.5  資料庫更改(遷移)
  8.6  配置管理
  8.7  什麼是流水線?

  8.8  關於流水線的決策
  8.9  金絲雀和藍/綠部署
  8.10  為什麼需要流水線?
  8.11  部署流水線的關鍵階段
    8.11.1  步驟1:執行標準
    8.11.2  步驟2:構建和打包
    8.11.3  步驟3:測試
    8.11.4  步驟4:發布Artifact
    8.11.5  步驟5:部署到目標環境
    8.11.6  步驟6:驗證部署
    8.11.7  步驟7:必要時(可能)回滾
  8.12  流水線故障處理
  8.13  結論
第三部分  概念
第9章  安全性、許可權和隱私
  9.1  每個人都有責任,但你尤其有責任
  9.2  做好被黑的準備
    9.2.1  了解你的威脅和攻擊者
    9.2.2  設計的安全
  9.3  限制,跟蹤和審查所有秘密和訪問
  9.4  準備更新
    9.4.1  深度防禦
    9.4.2  限制爆炸半徑
    9.4.3  信任,但要核查
  9.5  驗證所有用戶輸入並對設置重複檢查
    9.5.1  監控系統中的異常情況
    9.5.2  測試你的安全
    9.5.3  仔細選擇依賴項並保持軟體的最新
    9.5.4  優先保護你的數據和客戶數據的隱私
    9.5.5  不要干擾生產
  9.6  確保你的電腦安全
  9.7  繼續學習
  9.8  結論
第10章  質量、測試和模擬
  10.1  代碼質量的作用
    10.1.1  代碼風格
    10.1.2  代碼校驗
  10.2  測試
    10.2.1  測試什麼,不測試什麼
    10.2.2  測試類型
    10.2.3  代碼覆蓋率
    10.2.4  加強你的測試
  10.3  模擬
  10.4  結論
第11章  為失敗做計劃
  11.1  簡介:理解它,即使你不能管理它
  11.2  識別風險
  11.3  做好準備
  11.4  做一個運行手冊
  11.5  計劃宕機

  11.6  監控你的雲服務提供商
  11.7  了解你的(服務)限制
  11.8  結論
第12 章  總結
  12.1  在供應商之間做取捨
  12.2  社區
  12.3  尋求其他人的建議
  12.4  陷入困境時該如何做
  12.5  邁出職業生涯的下一步

  • 商品搜索:
  • | 高級搜索
首頁新手上路客服中心關於我們聯絡我們Top↑
Copyrightc 1999~2008 美商天龍國際圖書股份有限公司 臺灣分公司. All rights reserved.
營業地址:臺北市中正區重慶南路一段103號1F 105號1F-2F
讀者服務部電話:02-2381-2033 02-2381-1863 時間:週一-週五 10:00-17:00
 服務信箱:bookuu@69book.com 客戶、意見信箱:cs@69book.com
ICP證:浙B2-20060032