►
Description
APIdays Helsinki 2019: APIs and Platforms - Transforming Industries and Experiences
API Management for Event-Driven Microservices
Frán Mendez, Async API
Speakers slides from the conference:
https://www.slideshare.net/APIdays_official
Learn more on APIscene, the global media made by the community for the community:
https://www.apiscene.io/
Explore the API ecosystem with the API Landscape:
https://www.apiscene.io/api-landscape/
Deep dive into the API industry with our reports:
https://www.apidays.co/industry-reports
Subscribe to our global newsletter:
https://apidays.typeform.com/to/i1MPEW
A
Thanks
for
having
me
here
today,
my
name
is
from
endeth.
Let
me
learn
how
to
use
this
first.
This
is
not
mine.
As
I
said,
my
name
is
Mara
Mendez
I,
the
founder
of
the
async
API
initiative.
How
many
of
you
have
heard
of
async
API
already?
Oh,
this
is
good
I
mean
in
the
right
place.
Most
of
you
didn't
hear
about
it
so
and
how
many
of
you
know
about
the
pan?
Api
the
open,
API
specification.
A
Okay,
a
little
bit
more
cool,
so
I'm
gonna
continue
out
today
what
I'm?
What
I'm
gonna
explain
is
about
async
API
and
a
little
bit
about
event-driven,
API
management
or
sorry
API
management
for
event-driven
services,
architectures
and
all
this
stuff.
As
Marika
said,
this
is
highly
confusion
because
we
tend
not
to
see
even
driven
api's,
event-driven,
micro-services
or
event-driven
architecture,
service
api's,
but
they
are
cool
so
but
Before
we
jump
there.
Let
me
tell
you
a
bit
of
a
personal
story
yeah.
This
is
me:
I
got
the
worst
over
time.
A
A
So
what
happened
next
is
OK.
Hold
my
beer
right
or
hold
my
juice
help
me
I'm,
11
years
old
and
I'm
gonna
start
coding
over
time.
Over
years
it
was
my
main
goal
like
I
want
to
build
a
a
game,
a
video
game,
but
over
time
as
well,
I
realized.
This
is
not
as
easy
as
I
thought,
and
it's
not
just
a
matter
of
programming,
because
now
I
know
how
to
code
all
these
little
things,
or
at
least
most
of
them
yeah.
So
this
is
not
code.
Yeah,
I'm
missing
the
design.
A
Part
I
need
to
learn
this
sign,
so
I
studied
design,
believe
it
or
not.
On
top
of
that,
I
have
to
I
have
to
add
that
I
come
from
a
very
small
town
in
the
south
of
Spain
and
I
never
met
until
I
was
really
let's
a
grown
up.
I
never
met
anyone
who
coats
or
who
do
design
or
video
game
designs,
so
that
was
disappointing.
Actually,
so
what
you
do
is
you
learn
to
do
it
yourself?
A
You
do
all
things
and
then,
over
time
it's
like
okay,
I,
now
I
have
a
little
bit
of
experience
using
Photoshop
and
all
this
stuff,
but
I'm,
not
a
designer
I'm,
not
very
creative
designing.
Even
though
I
can
manage
to
do
some
stuff,
yeah
Pat,
you
know
the
problem
is
that
the
video
game
is
not
just
designing.
Coding
is
also,
you
know,
telling
a
story
and
inventing
something
really
cool.
So
what
happened
was
it
was
a
really
a
revelation
to
me.
This
is
not
a
one-man
show.
Let's
say
this
is
not
a
woman
work.
A
This
is
this.
Is
a
team
work
actually
building
a
video
game?
Now
it's
clear,
because
we
all
know
that
large
teams
to
build
video
games
right,
but
in
that
time
it
wasn't
clear
like
who
knows
who's,
building
that
right,
so
yeah
so
I
realize
about
it,
and
it's
like
okay
here
I
cannot
have
my
team
or
create
a
team
or
or
joining
a
16-1.
A
A
Some
cool
web
applications
microservices
all
this
stuff
right,
so
over
time,
I
joined
a
relic
and
they
put
me
in
charge
together
with
my
friend
Bruno,
to
build
in
a
integrations
platform
for
them
internal
one
just
for
just
to
start
and
it
more
or
less.
In
the
beginning,
look
at
like
this
and
I
know.
I
said
that
I
am
designer,
but
you
can
see
what
kind
of
designer
I
am.
A
A
It
was
easy
to
build
something
there
really
easy.
We
were
just
like
Bruno
and
I,
and
then
we
grew
until
4,
yeah
4
and
it
was
released
to
manage.
We
did
something
like
this
after
some
time
it
was
a
little
bit
less
easy
to
manage,
because
all
of
them
are
services
and
services,
communicating
to
each
other
sending
messages
receiving
messages,
and
the
real
question
here
was
who
knows
what's
happening
in
the
whole
architecture
in
the
whole
infrastructure?
A
A
We
didn't
have
a
way
to
know
it,
and-
and-
and
I
don't
mean
what's
happening-
if
the
communication
fails
or
something
like
that.
No,
it's
it's
the
business
view
or
the
whole
thing
like.
If
I
triggered
this
message
here,
who's
consuming
this
message
and
what
other
messages
are
being
triggered
and
then
what?
What's
the
question?
What's
the
consequence
from
beginning
to
end
of
sending
a
message
to
to
Kafka,
we
didn't
have
a
view
on
that,
but
the
worst
thing
is
when
they
ask
it
as
to
a
now:
it's
not
your
team
anymore.
A
It's
not
just
your
your
staff.
Now
now
the
whole
company
is
gonna,
integrate
there,
so
everybody's
gonna
start
sending
messages
there
too
I
mean
they
were
already
doing
it,
but
you
will
have
to
subscribe
to
all
these
messages
and
you
will
have
to
figure
out
how
to
in
create
the
integration
platform
for
all
the
teams
have
been
Relic.
This
is
I,
don't
have
the
numbers
but
I
think
New
Relic
is
about
5,000
people
more
or
less.
A
So
what
happens?
Is
time
zones
suddenly
it's
like
if
I
or
if
I
ask
someone
to
do
something
on
the
other
side
of
the
world,
it's
not
gonna
get
24
hours,
something
really
quick
and
easy.
It's
gonna
get
more
time.
It's
gonna
get
at
least
48
hours
for
something
really
simple
most
of
the
time
and
coming
back
a
little
bit
to
this
diagram.
A
What
worries
me
the
most
here?
It's
not
actually
that
these
are
services,
and
these
are
messages
flowing.
When
you
look
at
this,
the
problem
is
not
the
services
sending
messages.
When
you
look
at
this,
the
problem
is
that
they
represent
people
working
together.
These
are
actually
people
communicating
to
each
other
teams
communicated
to
each
other
in
different
time
zones.
So
then
what
happens?
Communication
is
really
bad
right
because
something
doesn't
work
there
right.
So
if
you
don't
have
a
management
strategy.
Therefore
the
communication
that
communication
management
right
there's
a
problem,
there's
actually
problem
any.
A
On
top
of
that,
if
you
don't
have
any
idea
of
what's
happening
when
you
send
this
message
from
from
beginning
to
end
what
happens
when
you
send
this
message
to
the
broker,
this
becomes
like
highly
confusing
and
and
then
you
have
people
from
your
company
coming
or
teams
from
your
company
coming
to
you
a
Frank.
What
happens
if
I
send
this?
Why
am
I
not
am
I
not
receiving
this
other
thing?
A
I,
don't
know,
that's
the
problem,
that's
that's
the
real
problem.
You
don't
know
so
I
like
to
play
a
little
bit
bingo
here
with
you
all.
We're
not
gonna,
play
the
real
bingo
but
illustrate
what
I'm
talking
about.
Let's
put
this
as
an
example,
so
the
bingo
game
is
an
example
of
an
event-driven
communication.
I
keep
just
getting
some
some
balls
with
numbers
and
I.
Read
it
so
I'm
publishing
a
message
right:
I'd
read
it
I,
read
it
and
then
you're
hearing
me
and
you're
you're
listening
and
say:
okay,
five
I!
A
This
that
sounds
very
like
yeah
and
now
Frank.
It's
this
very
obvious
right.
There
is
something
there's
an
implicit
contract
in
what
we're
doing
here.
Actually
it's
already
happening
here.
While
we
are
here,
there's
an
implicit
contract.
Yes,
catalyst
is
tied
under
a
job
wingless
geo,
cambio,
Lydia
MA.
A
We
implicitly
agreed
on
a
contract
which
is
the
language
and
with
the
event-driven
api's
or
with
event-driven,
microservices
or
events
or
whatever
you
want
to
call
it
right.
We
don't
have
contracts,
we
do
have
it
for
rest
api's,
but
we
don't
have
it
for
even
driven
api's.
We
didn't
have
now.
We
have
it
async,
API
right
so
just
to
illustrate
a
little
bit.
What
do
what
I'm
talking
about
is
I.
Think
API
is
like
open
API
for
events.
A
If
you
want
to
look
at
this,
look
at
it
like
this
actually
is
compatible,
and
this
is
a
small
example
that
I
always
use
to
compare
I,
don't
know
if
you
can
read
it
properly,
not
sure,
but
on
the
left
side
we
have
a
REST,
API
or
HTTP
API.
That's
not
called
addressed,
which
content
on
the
request
body
is
a
suggestion,
object
representing
a
user.
So
this
is
post
users
and
the
schema
of
this
request
body
is
just
an
object
with
full
name,
birthdate
and
email.
A
So
far,
this
is
simple
right,
but
then
on
the
right
side,
imagine
this
scenario:
you
have
a
REST
API
or
a
HTTP
API,
and
when
someone
calls
the
post
users,
you
want
it
to
trigger
an
event
to
inform
the
rest
of
the
users
that
the
user
has
been
created
after
you
save
it
to
the
database
and
all
that
stuff
right.
So
this
is
what
we
have.
This
event
is
what
we
have
on
the
on
the
right
side,
documented
with
async
API,
as
you
can
see,
they're
very
similar.
A
Actually,
it
all
started
by
cloning,
open,
API
and
tweaking
that's
how
it
all
started.
It
says
channels,
slash
users
last
created,
so
user
created
admin,
publish.
It
means
that
your
application
is
going
to
publish,
to
let's
say
Kafka,
for
instance,
a
message
with
which
pelo
is
an
object.
That
is
an
object
with
this
same
attributes.
The
same
that
we
we
saw
here.
If
you
see
there
is
a
there's,
a
common
payload
description
between
both
and
you
can
reuse,
you
can
actually
reuse
both.
A
A
A
You
can
describe
as
I
said,
even
driven
micro-services
IOT
api
is
streaming
api's
stream
data
filter
around
they
are
they're
offering
streaming.
Api
is
I,
think
they
call
it
as
hybrid
cloud
or
don't
remember,
to
be
honest,
and
we
offer
some
tooling
as
well
like
code,
generators,
documentation,
generators
and
an
online
editor,
which
is
now
the
playground
and
or
you
can
go
to
the
previous
one,
which
is
editor
dot,
async
API,
dot
orgy.
A
It
works
with
most
of
the
protocols
out
there
as
and
actually
it
it
works
with
any
protocol.
We
don't
enforce
any
particular
protocol.
So
if
you're
using
a
protocol,
that's
not
on
the
list.
It's
a
it's
fine
that
it's
gonna
work.
So
a
sync
API,
unlike
open
API,
for
instance,
open
API,
is
tied
to
HTTP
async
apec,
and
not
do
that
because
there
are
many
messaging
protocols
and
what
I
said
before.
Why
all
of
this
to
define
a
common
language?
Will
you
sign
a
contract?
That's
not
greeting
somewhere
else.
A
Will
you
accept
a
contract
if
someone
doesn't
give
it
to
you
great
and
somewhere
in
a
language
that
you
understand,
then
why
are
we
doing
this?
With?
With
event-driven
communication
right
and
briefly,
that's
going
to
into
what
I
said
before
the
even
driven
or
event
management
or
API
management
for
event-driven
api's,
there's
not
there's
no
name
yet,
for
this
is
so
new
that
nobody
has
a
name
for
this.
A
So
we
propose
event
management.
It
might
collide
with
some
people,
organizing
events,
so
I
don't
know,
and
the
thing
is
we're
launching
soon.
We
have
right
now
beta
test
in
this
async
API
stream.
This
this
works
with
Kafka,
but
it's
gonna
be
soon
augmented
to
work
with
other
protocols,
for
instance
AMQP
for
everything
queue
and
all
this
stuff
right
and
MQTT,
and
what
it's
async
api
stream.
So
it's
in
KPI
stream
think
about
it.
A
Think
about
API
management
platforms
for
REST
API
is
what
they
provide
you.
It's
actually,
for
instance,
validation
on
the
on
the
edge
like
whenever
someone
makes
a
request,
enforce
specific,
open,
API
document
right,
so
you
make
sure
that
you
receiving
proper
information
right
or
information
with
the
proper
shape
we
do
the
same
by
sitting
between
the
broker
and
the
publisher.
So
whenever
someone
sends
a
message
to
Kafka,
we
make
sure
that
the
message
has
proper
shape
as
I
as
I
said,
but
that's
not
the
only
that's
not
the
only
feature
that
said
so.
A
The
cool
thing
here
is
that,
even
if
you
don't
validate
this
message
because
of
there
are
two
philosophies
right
lately,
the
the
the
the
one
that's
winning
is
that
microservices
philosophy
and
if
I
remember
correctly,
it's
a
smart,
endpoint
dump
pipes.
So
if
I
put
this
in
the
middle
to
validate
it
I'm
doing
smart
pipes,
so
it
has
its
own
use
cases,
of
course,
but
not
for
micro
services,
so
I
how
much
time
do
I
have
because
I,
okay,
okay,
sorry,
okay,
so
yeah!
Very
briefly,
sorry!
A
So
the
thing
is
because
we're
sitting
in
the
middle-
and
we
know
all
this
information-
we
can
draw
a
map
of
all
the
messages.
How
how
the
communication
is
done
between
all
the
services,
so
it
means
effectively
what
it
means
is
that
you
will.
You
will
be
able
to
understand
your
your
whole
architecture
and
you
will
be
able
to
manage
it
and
also
monitor
it.
So
again,
it's
API
management
for
event-driven
architectures.
Why
API
management,
because
api's
are
not
just
HTTP
stuff,
I
love
it,
but
it's
not
just
that.