Slide 23
Slide 23 text
Kafka
イベントルーティング方式のメリット
イベントを受信し、在庫情報を更新する
@app.route("/", methods=["POST"])
def receive_cloudevents():
①イベントを受信する
event = json.loads( request.data )
②処理ロジック
foo = bar(...)
③HTTPレスポンスのヘッダをCloudEvents形式とすると、
Knative Eventingがイベントの発生と判断してくれる
…
response = make_response( json.dumps(value).encode('utf-8') )
response.headers["Ce-Id"] = str(uuid.uuid4())
response.headers["Ce-Source"] = "dev.knative.serving#stock"
…
return response, status_code
①受信
②Logic
Stock
③返信
Delivery
Event Source固有の実装を隠蔽
イベント送信先をYAMLで定義する宣
言型プログラミング
23
ソースコードからイベントソース固有の実装を省け、シンプルかつ再利用可能なアプリケーションを実装しやすくなります。
Knative
Eventing