SlideShare ist ein Scribd-Unternehmen logo
1 von 31
Downloaden Sie, um offline zu lesen
August 26, 2021
Event-driven APIs &
Apache Kafka
Hugo Guerrero
APIs & Messaging Developer Advocate
Red Hat
Hugo Guerrero
Mexican @ MA, USA
APIs & Event-Driven
Specialist | Open Source
Advocate | History, Travel &
Food Enthusiast
@hguerreroo
apidays
Hong
Kong
Agenda
Event-driven APIs
Event-driven development
Kafkaesque Challenges
Contract-First
The REST of the World
AsyncAPI Spec
Event Schemas
Schemas as Contracts
Registry for Schemas
Event-driven APIs &
Modern Applications
apidays
Hong
Kong
What is the situation?
EVENT-DRIVEN APIS & APACHE KAFKA
4
@hguerreroo
Distributed Decoupled Highly Connected
apidays
Hong
Kong
What is the situation?
EVENT-DRIVEN APIS & APACHE KAFKA
5
@hguerreroo
Distributed Decoupled Highly Connected
Microservices
Request /
Response
Events
apidays
Hong
Kong
What is the situation?
EVENT-DRIVEN APIS & APACHE KAFKA
6
@hguerreroo
Distributed Decoupled Highly Connected
Microservices
Request /
Response
Events
apidays
Hong
Kong
Events
The Traditional Workflow
EVENT-DRIVEN APIS & APACHE KAFKA
7
Project Planning
The business experts spend time writing up a
project plan for a series of services and
potentially a user interface
Send to Developers
The various development teams attempt to
interpret the project plan and implement their
code so that they are compatible
Iterate and Integrate
The developer teams iteratively try to resolve
integration issues and spend loads of time
ensuring compatibility
apidays
Hong
Kong
Kafkaesque
EVENT-DRIVEN APIS & APACHE KAFKA
8
Photo credit: dbeck03 on VisualHunt
ENDPOINT DOCUMENTATION ?
DATA FORMAT AND
VALIDATION ?
MIS-UNDERSTANDING
Kafkaesque
EVENT-DRIVEN APIS & APACHE KAFKA
9
Photo credit: dbeck03 on VisualHunt
INFRASTRUCTURE ACCESS ?
PUBLISHERS & CONSUMERS
COMPLIANCE ?
EVENTS AVAILABILITY ?
SLOW TIME TO MARKET,
POOR QUALITY
Event-Driven APIs and
Contract-First Workflows
apidays
Hong
Kong
EVENT-DRIVEN APIS & APACHE KAFKA
11
Why Contract-First?
@hguerreroo
▸ Because you want to allow people to work independently
▸ Because you want to ensure consistency
▸ Because you need strong guarantees about service contracts
▸ Because you, your team, your customers, and your partners can collaborate
▸ Because you can save time by using code generators and testing tooling
apidays
Hong
Kong
How does it work on REST APIs?
EVENT-DRIVEN APIS & APACHE KAFKA
12
Source:
https://swagger.io/docs/specification/about/
https://www.apicur.io/
https://openapi-generator.tech/
https://microcks.io/
Build an API Specification
Using a tool like OpenAPI,
write an API specification FIRST
Publish the API Specification
Using a tool like Swagger or Apicur.io,
publish the API specification where others
have access and can collaborate
Generate Code, Mocks and Testing
Using a tool like OpenAPI Generator to create
the API stubs for both client and server
applications. You can also generate “mock”
services with Microcks.
apidays
Hong
Kong
Event-driven Secret Weapon
EVENT-DRIVEN APIS & APACHE KAFKA
13
An open source initiative that seeks to improve
the current state of Event-Driven Architectures.
Created to describe Event-driven APIs using
MQTT, AMQP, Apache Kafka, ...
“Sister” specification to OpenAPI: same base
syntax, use JSON Schema underhood.
Allows definition of examples
AsyncAPI
https://www.asyncapi.com/
apidays
Hong
Kong
AsyncAPI
EVENT-DRIVEN APIS & APACHE KAFKA
14
asyncapi.org
apidays
Hong
Kong
Protocol agnostic:
▸ AMQP
▸ MQTT
▸ NATS
▸ HTTP
▸ WebSockets
▸ Kafka
▸ STOMP
▸ JMS
Open Source Tooling:
▸ Online playground
(playground.asyncapi.org)
▸ Code generators
▸ Documentation generators
▸ Editors
▸ Mocking
▸ Testing
Unified API contracts
EVENT-DRIVEN APIS & APACHE KAFKA
15
@hguerreroo
POST /register
{
"fullName":"John Doe",
"email":"john@example.io",
"age":36
}
TOPIC user-registration
{
"id":"38102178-dbe5-4e81-aa65-8f6df1be4d44",
"fullName":"John Doe",
"email":"john@example.io",
"age":36,
"sendAt":"1603786974956",
}
OpenAPI 3
Contract
AsyncAPI 2
Contract
apidays
Hong
Kong
AsyncAPI Anatomy
EVENT-DRIVEN APIS & APACHE KAFKA
16
https://www.asyncapi.com/docs/getting-started/coming-from-openapi
Info: metadata and documentation for this asynchronous API: version, title,
description, contact and licensing terms
Servers: list of brokers with binding details (URLs and security protocols)
Channel Item: destination that will be used by the API to publish or
consume events. Destination may be mapped to a topic, queue, address
name depending on the protocol binding.
Operation: whether the application using the AsyncAPI should subscribe
or produce messages. Holds its own descriptive metadata
Message: the content-type and structure of message headers and
payload. May reference schemas of different types (AsyncAPI, JSON,
Avro). May contain examples!
Components: Common definitions (schemas, traits, messages) like in
OpenAPI v3
apidays
Hong
Kong
AsyncAPI Anatomy
EVENT-DRIVEN APIS & APACHE KAFKA
17
https://www.asyncapi.com/docs/getting-started/coming-from-openapi
Info: metadata and documentation for this asynchronous API: version, title,
description, contact and licensing terms
Servers: list of brokers with binding details (URLs and security protocols)
Channel Item: destination that will be used by the API to publish or
consume events. Destination may be mapped to a topic, queue, address
name depending on the protocol binding.
Operation: whether the application using the AsyncAPI should subscribe
or produce messages. Holds its own descriptive metadata
Message: the content-type and structure of message headers and
payload. May reference schemas of different types (AsyncAPI, JSON,
Avro). May include examples!
Components: Common definitions (schemas, traits, messages) like in
OpenAPI v3
apidays
Hong
Kong
Schemas as Event
Contracts
apidays
Hong
Kong
EVENT-DRIVEN APIS & APACHE KAFKA
19
Why is it important to use API contracts in Apache Kafka?
Producer
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Send
Data
Retrieve
Data
Consumer
apidays
Hong
Kong
@hguerreroo
Contract-First API Development
EVENT-DRIVEN APIS & APACHE KAFKA
Contract-First API Development
20
Why is it important to use API contracts in Apache Kafka?
Producer
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Send
Data
Retrieve
Data
Consumer
Consumer
Consumer
apidays
Hong
Kong
@hguerreroo
EVENT-DRIVEN APIS & APACHE KAFKA
Contract-First API Development
21
Why is it important to use API contracts in Apache Kafka?
Producer
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Send
Data
Retrieve
Data
Consumer
Consumer
Consumer
v2
v2
v2
v1
apidays
Hong
Kong
@hguerreroo
EVENT-DRIVEN APIS & APACHE KAFKA
Contract-First API Development
22
Why is it important to use API contracts in Apache Kafka?
Producer
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Send
Data
Retrieve
Data
Consumer
Consumer
Consumer
v2
v2
v2
v1
apidays
Hong
Kong
@hguerreroo
EVENT-DRIVEN APIS & APACHE KAFKA
Contract-First API Development
23
Why is it important to use API contracts in Apache Kafka?
Producer
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Send
Data
Retrieve
Data
Consumer
Consumer
Consumer
v2
v2
v2
v1
apidays
Hong
Kong
@hguerreroo
What issues needs to be addressed in a Kafka
world?
▸ Kafka is not aware of data types or schema
formats.
▸ API schemas are subject to change.
▸ Central registry where the data schemas are
stored and accessible.
EVENT-DRIVEN APIS & APACHE KAFKA
24
Photo credit: Harald Groven on VisualHunt
A Registry for Event
Schemas
apidays
Hong
Kong
Using the Registry for Schema Management
EVENT-DRIVEN APIS & APACHE KAFKA
26
Producer Consumer
Deserializer
Serializer
Registry
| | | | | | |  
| | | | | | |   |
| | | | | |
Apache Kafka
Get or
Register
Schema
by Id
Retrieve
Schema
by Id
Topic B
(JSON
)
Topic C
(Protobuf)
Topic A
(Avro)
Send
Serialized
Data
Retrieve
Serialized
Data
apidays
Hong
Kong
@hguerreroo
EVENT-DRIVEN APIS & APACHE KAFKA
What are the required
capabilities of the registry?
27
The registry needs to address the
following 3 pillars for a successful
management
@hguerreroo
You need to be able to manage all the different types
of artifacts, be able to browse, download and
document in single place.
Artifact Management
Support for different types of data structures, like
Apache Avro, Google Protocol Buffers, or JSON
Schemas.
Data Formats
Artifacts follow content evolution and are controlled
by enabling content rules, including Validity and
Compatibility.
Versioning
apidays
Hong
Kong
EVENT-DRIVEN APIS & APACHE KAFKA
Registry
28
Use Cases
Source:
https://github.com/Apicurio/apicurio-registry
API specification registry for
API consumers
Shared Data Types
API Designs
Shared data types (schemas)
across
API and event driven architectures
Schema Registry
Schema registry for Kafka
serializers/deserializers
apidays
Hong
Kong
▸ Implementation preview of the CNCF
Schema Registry API.
▸ Part of the CloudEvents Working Group
efforts for standardization and
interoperability.
EVENT-DRIVEN APIS & APACHE KAFKA
CNCF’s Schema Registry API
29
CNCF Schema Registry API support
Source:
https://github.com/cloudevents/spec/blob/master/schemaregistry/schemaregistry.md
apidays
Hong
Kong
▸ Getting Started
● https://developers.redhat.com/blog/2019/12/16/getting-started-with-red-hat-integration-service-registry
● https://developers.redhat.com/blog/2020/12/09/new-features-and-storage-options-in-red-hat-integration-service-registry-1
-1-ga
▸ Install and configure Service Registry for AMQ Streams
● Installing Service Registry from the OpenShift OperatorHub
● Configuring Service Registry with AMQ Streams storage on OpenShift
▸ Validating Schemas using Kafka Client Serializer/Deserializer
● Validating schemas using Kafka client serializers/deserializers
● Strategies to look up a schema
▸ Service Registry Java Client
● Managing Service Registry content using the Java client
EVENT-DRIVEN APIS & APACHE KAFKA
Useful Bookmarks
30
apidays
Hong
Kong
@hguerreroo
linkedin.com/company/red-hat
youtube.com/user/RedHatVideos
facebook.com/redhatinc
twitter.com/RedHat
Hugo Guerrero
Twitter: @hguerreroo
https://www.youtube.com/user/hguerreroo
https://developers.redhat.com/author/hugo-guerrero
Thank You

Weitere ähnliche Inhalte

Was ist angesagt?

API Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceAPI Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceCapgemini
 
APIs for... Your Mom
APIs for... Your MomAPIs for... Your Mom
APIs for... Your MomCarlo Longino
 
How Apigee Api Management Platform Helps with Digital Excellence
How Apigee Api Management Platform Helps with Digital ExcellenceHow Apigee Api Management Platform Helps with Digital Excellence
How Apigee Api Management Platform Helps with Digital ExcellenceRam Kumar
 
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...apidays
 
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...apidays
 
Executing on API Developer Experience
Executing on API Developer Experience Executing on API Developer Experience
Executing on API Developer Experience SmartBear
 
Building an API Security Strategy
Building an API Security StrategyBuilding an API Security Strategy
Building an API Security StrategySmartBear
 
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...apidays
 
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays
 
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays
 
Contract {Collaboration} Driven Development - APIdays Interface 2020
Contract {Collaboration} Driven Development - APIdays Interface 2020Contract {Collaboration} Driven Development - APIdays Interface 2020
Contract {Collaboration} Driven Development - APIdays Interface 2020Alianna Inzana
 
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...apidays
 
Mobile - Your API Security Blindspot by David Stewart, Approov
 Mobile - Your API Security Blindspot by David Stewart, Approov Mobile - Your API Security Blindspot by David Stewart, Approov
Mobile - Your API Security Blindspot by David Stewart, Approovapidays
 
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulik
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulikapidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulik
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulikapidays
 
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...Apigee | Google Cloud
 
INTERFACE, by apidays - Playing with FHIR: Hacking FHIR and mHealth APIs by ...
INTERFACE, by apidays  - Playing with FHIR: Hacking FHIR and mHealth APIs by ...INTERFACE, by apidays  - Playing with FHIR: Hacking FHIR and mHealth APIs by ...
INTERFACE, by apidays - Playing with FHIR: Hacking FHIR and mHealth APIs by ...apidays
 
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...apidays
 

Was ist angesagt? (20)

API Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation ExperienceAPI Management - Practical Enterprise Implementation Experience
API Management - Practical Enterprise Implementation Experience
 
Deep-Dive: Secure API Management
Deep-Dive: Secure API ManagementDeep-Dive: Secure API Management
Deep-Dive: Secure API Management
 
APIs for... Your Mom
APIs for... Your MomAPIs for... Your Mom
APIs for... Your Mom
 
How Apigee Api Management Platform Helps with Digital Excellence
How Apigee Api Management Platform Helps with Digital ExcellenceHow Apigee Api Management Platform Helps with Digital Excellence
How Apigee Api Management Platform Helps with Digital Excellence
 
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...
apidays LIVE Paris 2021 - Synchronous Communication Patterns by Sébastien Ber...
 
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...
apidays LIVE New York 2021 - APIOps: automating API operations for speed and ...
 
Executing on API Developer Experience
Executing on API Developer Experience Executing on API Developer Experience
Executing on API Developer Experience
 
Building an API Security Strategy
Building an API Security StrategyBuilding an API Security Strategy
Building an API Security Strategy
 
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...
apidays LIVE India - 10 steps to secure your API by Pabitra Kumar Sahoo, Qual...
 
Adapt or Die Sydney - API Security
Adapt or Die Sydney - API SecurityAdapt or Die Sydney - API Security
Adapt or Die Sydney - API Security
 
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
 
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiidaapidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
apidays LIVE Paris 2021 - Taming the beast by Markus Mueller, Apiida
 
Contract {Collaboration} Driven Development - APIdays Interface 2020
Contract {Collaboration} Driven Development - APIdays Interface 2020Contract {Collaboration} Driven Development - APIdays Interface 2020
Contract {Collaboration} Driven Development - APIdays Interface 2020
 
API Strategy in Cloud
API Strategy in CloudAPI Strategy in Cloud
API Strategy in Cloud
 
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...
apidays LIVE Paris 2021 - Low-Code API DevOps approach to API Lifecycle Manag...
 
Mobile - Your API Security Blindspot by David Stewart, Approov
 Mobile - Your API Security Blindspot by David Stewart, Approov Mobile - Your API Security Blindspot by David Stewart, Approov
Mobile - Your API Security Blindspot by David Stewart, Approov
 
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulik
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulikapidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulik
apidays LIVE Paris - Avoid Building a Microservices Death Star by Przemek Kulik
 
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...
Apigee and Accenture Webcast - Accenture Technology Vision 2013 - An API Cent...
 
INTERFACE, by apidays - Playing with FHIR: Hacking FHIR and mHealth APIs by ...
INTERFACE, by apidays  - Playing with FHIR: Hacking FHIR and mHealth APIs by ...INTERFACE, by apidays  - Playing with FHIR: Hacking FHIR and mHealth APIs by ...
INTERFACE, by apidays - Playing with FHIR: Hacking FHIR and mHealth APIs by ...
 
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...
apidays LIVE New York 2021 - Top 10 API security threats every API team shoul...
 

Ähnlich wie apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apache Kafka by Hugo Guerrero, Red Hat

Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...HostedbyConfluent
 
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...apidays
 
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019Bill Doerrfeld
 
How to Define and Share your Event APIs using AsyncAPI and Event API Products...
How to Define and Share your Event APIs using AsyncAPI and Event API Products...How to Define and Share your Event APIs using AsyncAPI and Event API Products...
How to Define and Share your Event APIs using AsyncAPI and Event API Products...HostedbyConfluent
 
Introduction to Apache Kafka and why it matters - Madrid
Introduction to Apache Kafka and why it matters - MadridIntroduction to Apache Kafka and why it matters - Madrid
Introduction to Apache Kafka and why it matters - MadridPaolo Castagna
 
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...HostedbyConfluent
 
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?Kai Wähner
 
Unified, Efficient, and Portable Data Processing with Apache Beam
Unified, Efficient, and Portable Data Processing with Apache BeamUnified, Efficient, and Portable Data Processing with Apache Beam
Unified, Efficient, and Portable Data Processing with Apache BeamDataWorks Summit/Hadoop Summit
 
Portable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache BeamPortable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache Beamconfluent
 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Red Hat Developers
 
Ultimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsUltimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsBill Doerrfeld
 
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...Amazon Web Services
 
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBMapidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBMapidays
 
Realizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamRealizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamJ On The Beach
 
Present and future of unified, portable, and efficient data processing with A...
Present and future of unified, portable, and efficient data processing with A...Present and future of unified, portable, and efficient data processing with A...
Present and future of unified, portable, and efficient data processing with A...DataWorks Summit
 
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...apidays
 
Microservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaMicroservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaKasun Indrasiri
 
Openshift Container Platform: First ItalyMeetup
Openshift Container Platform: First ItalyMeetupOpenshift Container Platform: First ItalyMeetup
Openshift Container Platform: First ItalyMeetupGiuseppe Bonocore
 
GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?LaunchAny
 

Ähnlich wie apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apache Kafka by Hugo Guerrero, Red Hat (20)

Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
Apicurio Registry: Event-driven APIs & Schema governance for Apache Kafka | F...
 
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...
apidays LIVE London 2021 - Getting started with Event-Driven APIs by Hugo Gue...
 
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
apidays LIVE Paris 2021 - Getting started with Event-Driven APis by Hugo Guer...
 
A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019A Snapshot of API Design Trends In 2019
A Snapshot of API Design Trends In 2019
 
How to Define and Share your Event APIs using AsyncAPI and Event API Products...
How to Define and Share your Event APIs using AsyncAPI and Event API Products...How to Define and Share your Event APIs using AsyncAPI and Event API Products...
How to Define and Share your Event APIs using AsyncAPI and Event API Products...
 
Introduction to Apache Kafka and why it matters - Madrid
Introduction to Apache Kafka and why it matters - MadridIntroduction to Apache Kafka and why it matters - Madrid
Introduction to Apache Kafka and why it matters - Madrid
 
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies...
 
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?
Apache Kafka and API Management / API Gateway – Friends, Enemies or Frenemies?
 
Unified, Efficient, and Portable Data Processing with Apache Beam
Unified, Efficient, and Portable Data Processing with Apache BeamUnified, Efficient, and Portable Data Processing with Apache Beam
Unified, Efficient, and Portable Data Processing with Apache Beam
 
Portable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache BeamPortable Streaming Pipelines with Apache Beam
Portable Streaming Pipelines with Apache Beam
 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
 
Ultimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation SolutionsUltimate Guide to 30+ API Documentation Solutions
Ultimate Guide to 30+ API Documentation Solutions
 
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
AWS re:Invent 2016: Open Source at AWS—Contributions, Support, and Engagement...
 
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBMapidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
 
Realizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache BeamRealizing the promise of portability with Apache Beam
Realizing the promise of portability with Apache Beam
 
Present and future of unified, portable, and efficient data processing with A...
Present and future of unified, portable, and efficient data processing with A...Present and future of unified, portable, and efficient data processing with A...
Present and future of unified, portable, and efficient data processing with A...
 
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...
APIdays Barcelona 2019 - How a Cloud native Architecture helps to drive Busin...
 
Microservices Integration Patterns with Kafka
Microservices Integration Patterns with KafkaMicroservices Integration Patterns with Kafka
Microservices Integration Patterns with Kafka
 
Openshift Container Platform: First ItalyMeetup
Openshift Container Platform: First ItalyMeetupOpenshift Container Platform: First ItalyMeetup
Openshift Container Platform: First ItalyMeetup
 
GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?GlueCon 2018: Are REST APIs Still Relevant Today?
GlueCon 2018: Are REST APIs Still Relevant Today?
 

Mehr von apidays

apidays Australia 2023 - A programmatic approach to API success including Ope...
apidays Australia 2023 - A programmatic approach to API success including Ope...apidays Australia 2023 - A programmatic approach to API success including Ope...
apidays Australia 2023 - A programmatic approach to API success including Ope...apidays
 
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile API
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile APIapidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile API
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile APIapidays
 
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wise
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wiseapidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wise
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wiseapidays
 
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Ventures
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Venturesapidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Ventures
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Venturesapidays
 
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...apidays Singapore 2023 - Digitalising agreements with data, design & technolo...
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...apidays
 
apidays Singapore 2023 - Building a digital-first investment management model...
apidays Singapore 2023 - Building a digital-first investment management model...apidays Singapore 2023 - Building a digital-first investment management model...
apidays Singapore 2023 - Building a digital-first investment management model...apidays
 
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...apidays Singapore 2023 - Changing the culture of building software, Aman Dham...
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...apidays
 
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...apidays
 
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...apidays
 
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartner
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartnerapidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartner
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartnerapidays
 
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...apidays
 
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...apidays
 
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IO
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IOApidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IO
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IOapidays
 
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...apidays
 
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...apidays
 
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...apidays
 
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...apidays
 
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...apidays
 
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...apidays
 
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...apidays
 

Mehr von apidays (20)

apidays Australia 2023 - A programmatic approach to API success including Ope...
apidays Australia 2023 - A programmatic approach to API success including Ope...apidays Australia 2023 - A programmatic approach to API success including Ope...
apidays Australia 2023 - A programmatic approach to API success including Ope...
 
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile API
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile APIapidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile API
apidays Singapore 2023 - Addressing the Data Gap, Jerome Eger, Smile API
 
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wise
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wiseapidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wise
apidays Singapore 2023 - Iterate Faster with Dynamic Flows, Yee Hui Poh, Wise
 
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Ventures
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Venturesapidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Ventures
apidays Singapore 2023 - Banking the Ecosystem, Apurv Suri, SC Ventures
 
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...apidays Singapore 2023 - Digitalising agreements with data, design & technolo...
apidays Singapore 2023 - Digitalising agreements with data, design & technolo...
 
apidays Singapore 2023 - Building a digital-first investment management model...
apidays Singapore 2023 - Building a digital-first investment management model...apidays Singapore 2023 - Building a digital-first investment management model...
apidays Singapore 2023 - Building a digital-first investment management model...
 
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...apidays Singapore 2023 - Changing the culture of building software, Aman Dham...
apidays Singapore 2023 - Changing the culture of building software, Aman Dham...
 
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...
apidays Singapore 2023 - Connecting the trade ecosystem, CHOO Wai Yee, Singap...
 
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...
apidays Singapore 2023 - Securing and protecting our digital way of life, Ver...
 
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartner
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartnerapidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartner
apidays Singapore 2023 - State of the API Industry, Manjunath Bhat, Gartner
 
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...
apidays Australia 2023 - Curb your Enthusiasm:Sustainable Scaling of APIs, Sa...
 
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
Apidays Paris 2023 - API Security Challenges for Cloud-native Software Archit...
 
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IO
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IOApidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IO
Apidays Paris 2023 - State of Tech Sustainability 2023, Gaël Duez, Green IO
 
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...
Apidays Paris 2023 - 7 Mistakes When Putting In Place An API Program, Francoi...
 
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...
Apidays Paris 2023 - Building APIs That Developers Love: Feedback Collection ...
 
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...
Apidays Paris 2023 - Product Managers and API Documentation, Gareth Faull, Lo...
 
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...
Apidays Paris 2023 - How to use NoCode as a Microservice, Benjamin Buléon and...
 
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...
Apidays Paris 2023 - Boosting Event-Driven Development with AsyncAPI and Micr...
 
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...
Apidays Paris 2023 - API Observability: Improving Governance, Security and Op...
 
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...
Apidays Paris 2023 - Elevating Event-Driven World: A Deep Dive into AsyncAPI ...
 

Kürzlich hochgeladen

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 

Kürzlich hochgeladen (20)

New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 

apidays LIVE Hong Kong 2021 - Event-driven APIs & Schema governance for Apache Kafka by Hugo Guerrero, Red Hat

  • 1. August 26, 2021 Event-driven APIs & Apache Kafka Hugo Guerrero APIs & Messaging Developer Advocate Red Hat
  • 2. Hugo Guerrero Mexican @ MA, USA APIs & Event-Driven Specialist | Open Source Advocate | History, Travel & Food Enthusiast @hguerreroo apidays Hong Kong Agenda Event-driven APIs Event-driven development Kafkaesque Challenges Contract-First The REST of the World AsyncAPI Spec Event Schemas Schemas as Contracts Registry for Schemas
  • 3. Event-driven APIs & Modern Applications apidays Hong Kong
  • 4. What is the situation? EVENT-DRIVEN APIS & APACHE KAFKA 4 @hguerreroo Distributed Decoupled Highly Connected apidays Hong Kong
  • 5. What is the situation? EVENT-DRIVEN APIS & APACHE KAFKA 5 @hguerreroo Distributed Decoupled Highly Connected Microservices Request / Response Events apidays Hong Kong
  • 6. What is the situation? EVENT-DRIVEN APIS & APACHE KAFKA 6 @hguerreroo Distributed Decoupled Highly Connected Microservices Request / Response Events apidays Hong Kong Events
  • 7. The Traditional Workflow EVENT-DRIVEN APIS & APACHE KAFKA 7 Project Planning The business experts spend time writing up a project plan for a series of services and potentially a user interface Send to Developers The various development teams attempt to interpret the project plan and implement their code so that they are compatible Iterate and Integrate The developer teams iteratively try to resolve integration issues and spend loads of time ensuring compatibility apidays Hong Kong
  • 8. Kafkaesque EVENT-DRIVEN APIS & APACHE KAFKA 8 Photo credit: dbeck03 on VisualHunt ENDPOINT DOCUMENTATION ? DATA FORMAT AND VALIDATION ? MIS-UNDERSTANDING
  • 9. Kafkaesque EVENT-DRIVEN APIS & APACHE KAFKA 9 Photo credit: dbeck03 on VisualHunt INFRASTRUCTURE ACCESS ? PUBLISHERS & CONSUMERS COMPLIANCE ? EVENTS AVAILABILITY ? SLOW TIME TO MARKET, POOR QUALITY
  • 10. Event-Driven APIs and Contract-First Workflows apidays Hong Kong
  • 11. EVENT-DRIVEN APIS & APACHE KAFKA 11 Why Contract-First? @hguerreroo ▸ Because you want to allow people to work independently ▸ Because you want to ensure consistency ▸ Because you need strong guarantees about service contracts ▸ Because you, your team, your customers, and your partners can collaborate ▸ Because you can save time by using code generators and testing tooling apidays Hong Kong
  • 12. How does it work on REST APIs? EVENT-DRIVEN APIS & APACHE KAFKA 12 Source: https://swagger.io/docs/specification/about/ https://www.apicur.io/ https://openapi-generator.tech/ https://microcks.io/ Build an API Specification Using a tool like OpenAPI, write an API specification FIRST Publish the API Specification Using a tool like Swagger or Apicur.io, publish the API specification where others have access and can collaborate Generate Code, Mocks and Testing Using a tool like OpenAPI Generator to create the API stubs for both client and server applications. You can also generate “mock” services with Microcks. apidays Hong Kong
  • 13. Event-driven Secret Weapon EVENT-DRIVEN APIS & APACHE KAFKA 13 An open source initiative that seeks to improve the current state of Event-Driven Architectures. Created to describe Event-driven APIs using MQTT, AMQP, Apache Kafka, ... “Sister” specification to OpenAPI: same base syntax, use JSON Schema underhood. Allows definition of examples AsyncAPI https://www.asyncapi.com/ apidays Hong Kong
  • 14. AsyncAPI EVENT-DRIVEN APIS & APACHE KAFKA 14 asyncapi.org apidays Hong Kong Protocol agnostic: ▸ AMQP ▸ MQTT ▸ NATS ▸ HTTP ▸ WebSockets ▸ Kafka ▸ STOMP ▸ JMS Open Source Tooling: ▸ Online playground (playground.asyncapi.org) ▸ Code generators ▸ Documentation generators ▸ Editors ▸ Mocking ▸ Testing
  • 15. Unified API contracts EVENT-DRIVEN APIS & APACHE KAFKA 15 @hguerreroo POST /register { "fullName":"John Doe", "email":"john@example.io", "age":36 } TOPIC user-registration { "id":"38102178-dbe5-4e81-aa65-8f6df1be4d44", "fullName":"John Doe", "email":"john@example.io", "age":36, "sendAt":"1603786974956", } OpenAPI 3 Contract AsyncAPI 2 Contract apidays Hong Kong
  • 16. AsyncAPI Anatomy EVENT-DRIVEN APIS & APACHE KAFKA 16 https://www.asyncapi.com/docs/getting-started/coming-from-openapi Info: metadata and documentation for this asynchronous API: version, title, description, contact and licensing terms Servers: list of brokers with binding details (URLs and security protocols) Channel Item: destination that will be used by the API to publish or consume events. Destination may be mapped to a topic, queue, address name depending on the protocol binding. Operation: whether the application using the AsyncAPI should subscribe or produce messages. Holds its own descriptive metadata Message: the content-type and structure of message headers and payload. May reference schemas of different types (AsyncAPI, JSON, Avro). May contain examples! Components: Common definitions (schemas, traits, messages) like in OpenAPI v3 apidays Hong Kong
  • 17. AsyncAPI Anatomy EVENT-DRIVEN APIS & APACHE KAFKA 17 https://www.asyncapi.com/docs/getting-started/coming-from-openapi Info: metadata and documentation for this asynchronous API: version, title, description, contact and licensing terms Servers: list of brokers with binding details (URLs and security protocols) Channel Item: destination that will be used by the API to publish or consume events. Destination may be mapped to a topic, queue, address name depending on the protocol binding. Operation: whether the application using the AsyncAPI should subscribe or produce messages. Holds its own descriptive metadata Message: the content-type and structure of message headers and payload. May reference schemas of different types (AsyncAPI, JSON, Avro). May include examples! Components: Common definitions (schemas, traits, messages) like in OpenAPI v3 apidays Hong Kong
  • 19. EVENT-DRIVEN APIS & APACHE KAFKA 19 Why is it important to use API contracts in Apache Kafka? Producer | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Send Data Retrieve Data Consumer apidays Hong Kong @hguerreroo Contract-First API Development
  • 20. EVENT-DRIVEN APIS & APACHE KAFKA Contract-First API Development 20 Why is it important to use API contracts in Apache Kafka? Producer | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Send Data Retrieve Data Consumer Consumer Consumer apidays Hong Kong @hguerreroo
  • 21. EVENT-DRIVEN APIS & APACHE KAFKA Contract-First API Development 21 Why is it important to use API contracts in Apache Kafka? Producer | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Send Data Retrieve Data Consumer Consumer Consumer v2 v2 v2 v1 apidays Hong Kong @hguerreroo
  • 22. EVENT-DRIVEN APIS & APACHE KAFKA Contract-First API Development 22 Why is it important to use API contracts in Apache Kafka? Producer | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Send Data Retrieve Data Consumer Consumer Consumer v2 v2 v2 v1 apidays Hong Kong @hguerreroo
  • 23. EVENT-DRIVEN APIS & APACHE KAFKA Contract-First API Development 23 Why is it important to use API contracts in Apache Kafka? Producer | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Send Data Retrieve Data Consumer Consumer Consumer v2 v2 v2 v1 apidays Hong Kong @hguerreroo
  • 24. What issues needs to be addressed in a Kafka world? ▸ Kafka is not aware of data types or schema formats. ▸ API schemas are subject to change. ▸ Central registry where the data schemas are stored and accessible. EVENT-DRIVEN APIS & APACHE KAFKA 24 Photo credit: Harald Groven on VisualHunt
  • 25. A Registry for Event Schemas apidays Hong Kong
  • 26. Using the Registry for Schema Management EVENT-DRIVEN APIS & APACHE KAFKA 26 Producer Consumer Deserializer Serializer Registry | | | | | | |   | | | | | | |   | | | | | | | Apache Kafka Get or Register Schema by Id Retrieve Schema by Id Topic B (JSON ) Topic C (Protobuf) Topic A (Avro) Send Serialized Data Retrieve Serialized Data apidays Hong Kong @hguerreroo
  • 27. EVENT-DRIVEN APIS & APACHE KAFKA What are the required capabilities of the registry? 27 The registry needs to address the following 3 pillars for a successful management @hguerreroo You need to be able to manage all the different types of artifacts, be able to browse, download and document in single place. Artifact Management Support for different types of data structures, like Apache Avro, Google Protocol Buffers, or JSON Schemas. Data Formats Artifacts follow content evolution and are controlled by enabling content rules, including Validity and Compatibility. Versioning apidays Hong Kong
  • 28. EVENT-DRIVEN APIS & APACHE KAFKA Registry 28 Use Cases Source: https://github.com/Apicurio/apicurio-registry API specification registry for API consumers Shared Data Types API Designs Shared data types (schemas) across API and event driven architectures Schema Registry Schema registry for Kafka serializers/deserializers apidays Hong Kong
  • 29. ▸ Implementation preview of the CNCF Schema Registry API. ▸ Part of the CloudEvents Working Group efforts for standardization and interoperability. EVENT-DRIVEN APIS & APACHE KAFKA CNCF’s Schema Registry API 29 CNCF Schema Registry API support Source: https://github.com/cloudevents/spec/blob/master/schemaregistry/schemaregistry.md apidays Hong Kong
  • 30. ▸ Getting Started ● https://developers.redhat.com/blog/2019/12/16/getting-started-with-red-hat-integration-service-registry ● https://developers.redhat.com/blog/2020/12/09/new-features-and-storage-options-in-red-hat-integration-service-registry-1 -1-ga ▸ Install and configure Service Registry for AMQ Streams ● Installing Service Registry from the OpenShift OperatorHub ● Configuring Service Registry with AMQ Streams storage on OpenShift ▸ Validating Schemas using Kafka Client Serializer/Deserializer ● Validating schemas using Kafka client serializers/deserializers ● Strategies to look up a schema ▸ Service Registry Java Client ● Managing Service Registry content using the Java client EVENT-DRIVEN APIS & APACHE KAFKA Useful Bookmarks 30 apidays Hong Kong @hguerreroo