跳至內容

概念

本節中的文件說明了常用的 Knative 概念和抽象,並有助於您更好地了解 Knative 的運作方式。

什麼是 Knative?

Knative 是一個與平台無關的解決方案,用於執行無伺服器部署。

Knative Serving

Knative Serving 定義了一組物件作為 Kubernetes 自訂資源定義 (CRD)。這些資源用於定義和控制您的無伺服器工作負載在叢集上的行為方式。

Diagram that displays how the Serving resources coordinate with each other.

主要的 Knative Serving 資源是 Services、Routes、Configurations 和 Revisions

  • Servicesservice.serving.knative.dev 資源會自動管理您工作負載的整個生命週期。它會控制其他物件的建立,以確保您的應用程式具有路由、組態以及每次服務更新的新修訂版本。可以定義服務,使其始終將流量路由到最新的修訂版本或釘選的修訂版本。

  • Routesroute.serving.knative.dev 資源將網路端點對應到一或多個修訂版本。您可以透過多種方式管理流量,包括部分流量和已命名路由。

  • Configurationsconfiguration.serving.knative.dev 資源會維護您部署的所需狀態。它提供程式碼和組態之間的明確分隔,並遵循十二要素應用程式方法。修改組態會建立新的修訂版本。

  • Revisionsrevision.serving.knative.dev 資源是每次對工作負載進行修改的程式碼和組態的即時快照。修訂版本是不可變的物件,可以保留任意長的時間。Knative Serving 修訂版本可以根據傳入的流量自動向上和向下調整。

如需有關資源及其互動的詳細資訊,請參閱 serving Github 儲存庫中的資源類型概述

Knative Eventing - Kubernetes 的事件驅動應用程式平台

Knative Eventing 是一組 API,可讓您在應用程式中使用事件驅動架構。您可以使用這些 API 來建立元件,將事件從事件產生器 (稱為來源) 路由到接收事件的事件取用者 (稱為接收器)。也可以設定接收器,透過傳送回應事件來回應 HTTP 請求。

Knative Eventing 是一個獨立的平台,提供對各種工作負載的支援,包括標準 Kubernetes 服務和 Knative Serving 服務。

Knative Eventing 使用標準 HTTP POST 請求在事件產生器和接收器之間傳送和接收事件。這些事件符合CloudEvents 規格,這使得可以使用任何程式設計語言建立、剖析、傳送和接收事件。

Knative Eventing 元件是鬆散耦合的,可以獨立於彼此開發和部署。任何產生器都可以在有正在接聽這些事件的活動事件取用者之前產生事件。任何事件取用者都可以在有產生這些事件的產生器之前,表達對一類事件的興趣。

我們使用分析和 Cookie 來了解網站流量。您使用我們網站的相關資訊會與 Google 分享以達到該目的。 瞭解更多。