SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
Sprayer
low latency, reliable
multichannel messaging
for Telefonica Digital
who are we?
Pablo Enfedaque
@pablitoev56

Javier Arias
@javier_arilos
Javier is a Software
Architect and developer,
worked in different
sectors such as M2M,
Telcos, Finance, Airports.

Pablo is a SW R&D engineer
with a strong background
in high performance
computing, big data and
distributed systems.
some context
Telefónica is the 4th largest telco in the
world
2 years ago Telefonica Digital was
established to spread our business to the
digital world
former Telefonica R&D / PDI was merged into
this new company
overview
we are developing an internal messaging service
to be used by our own products
we have polyglot persistence using different
NoSQL technologies
in this talk we will review Sprayer’s
architecture and, for each technology, how it is
used
why sprayer?
a common push messaging service. why?
➔ each project with messaging needs was
implementing its own server its own way
➔ 5 push messaging systems in the company
➔ none of them supporting a wide variety of
transports
➔ independent deployment and operations
the problem
cross technology push:
iOS

Android

Websockets

eMail

SMS

HTTP

FirefoxOS

point to point and pubsub:
1 to 1

PaaS, multitenant

1 to N

1 to Group
inspiration
➔ Google’s Thialfi: http://research.google.
com/pubs/pub37474.html

➔ Twitter Timeline:

http://www.infoq.

com/presentations/Twitter-Timeline-Scalability

➔ Pusher: http://www.pusher.com
➔ Pubnub: http://www.pubnub.com
➔ Amazon SNS: http://aws.amazon.com/sns/
the proposal

SPRAYER!

Sprayer is a low latency, reliable
messaging system supporting delivery
of messages to a single receiver, to
a predefined group of receivers or
to a specific list of receivers over
different channels (WebSockets, SMS,
Email, HTTP and iOS, Android or
Firefox OS native push…)
the proposal

SPRAYER!

our motto:
you care about business,
we deliver your messages
server
side API
?
server
side API
server side API challenges
➔ common interface for all channels
➔ reliable, consistent, idempotent
➔ route messages efficiently
➔ simple and user oriented
◆ manage subscriptions
◆ send messages: to list or group (topic)
◆ get delivery feedback

➔ standards based (HTTP + Json)
architecture
sprayer backend

GCM

APPLICATION
<BACKEND>

ACCEPTER
REST API

MESSAGES
DISPATCHING

APNs

sms
gateway
email
gateway

Operational
storage
messages
dispatching
?
messages
dispatching
message dispatching challenges
➔ scaling horizontally
➔ reliability
➔ different channels:
◆
◆
◆
◆
◆
◆

HTTP (outbound)
Websockets (inbound)
iOS push (APNs)
Android push (GCM)
SMS
eMail
architecture
sprayer backend
WEBSOCKETS

ANDROID

APPLICATION
<BACKEND>

ACCEPTER
REST API

MESSAGES
ROUTING

GCM

IOS

APNs

HTTP

SMS

EMAIL

Operational
storage

sms
gateway
email
gateway
outbound-stateless dispatchers
simple dispatchers: HTTP, iOS, Android...
➔ Take message, get msg subscribers,
dispatch to receiver, report feedback
➔ Completely stateless

ACCEPTER
REST API

ANDROID

Operational
storage

GCM
connection aware dispatchers
clients (websockets, HTTP long poll …)
➔ messages are stored until clients connect
➔ client inits a persistent connection
➔ potentially, millions of clients
WEBSOCKETS

ACCEPTER
REST API

DELIVE
RER

ROUTER

inboxes

Operational
storage
message
routing
?
message
routing
message routing challenges
routing (two-steps):
➔ API routes messages to N dispatchers
➔ Each dispatcher routes message to M
receivers (subscribers of a group)

both steps must be decoupled

The number of receivers could be thousands
architecture
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

Subscriptions
storage

Operational
storage

FEEDBACK

sms
gateway

EMAIL

email
gateway
async message
delivery feedback
?
async message
delivery feedback
async delivery feedback challenges
make msg feedback available through API
to clients
feedback must not compromise message
delivery or API
The number of updates could be millions
feedback: msg delivery, connections, push
architecture
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

Subscriptions
storage

Operational
storage

STATUS
FEEDER

sms
gateway

EMAIL

email
gateway

feedback
technology stack
subscriptions storage
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

?

Subscriptions
storage

Operational
storage

STATUS
FEEDER

sms
gateway

EMAIL

email
gateway

feedback
subscriptions storage
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

EMAIL

Operational
storage

STATUS
FEEDER

sms
gateway
email
gateway

feedback
dispatcher receiver inboxes

WEBSOCKETS

ACCEPTER
REST API

ROUTER

?
inboxes

DELIVE
RER
dispatcher receiver inboxes

WEBSOCKETS

ACCEPTER
REST API

DELIVE
RER

ROUTER

inboxes
redis
Redis is an open source, advanced keyvalue store. It is often referred to as a
data structure server (...) - (redis.io)
why redis?
- amazingly fast
- easy to use
- usage patterns: shared cache, queues,
pubsub, distributed lock, counting things
redis use cases
use cases in Sprayer:
➔ group subscribers x channel
➔ channels x group
➔ websockets channel queues (potentially
million receivers)
limitations for our use cases:
➔ memory bound
➔ queries and pagination
➔ high throughput queues
redis concerns
➔ what happens when dataset does not fit in
memory? two strategies
◆ partition datasets to different redis clusters
◆ sharding: based in tenant would be easy

➔ FT and HA
◆ easy way: master-slave with virtual IPs, switch
slave’s IP when master’s out. home made daemon
◆ sentinel based, some tests done, needs to be
supported by client library
◆ redis cluster being implemented; limited features
operational storage
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

EMAIL

?

Operational
storage

STATUS
FEEDER

sms
gateway
email
gateway

feedback
operational storage
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

IOS

APNs

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP
sms

HTTP

email
SMS

EMAIL

STATUS
FEEDER

sms
gateway
email
gateway

feedback
mongodb
mongoDB (from "humongous") is a
document database (...) features: full
index support, replication & HA, autosharding... (mongodb.org)
why mongoDB?
➔ scaling & HA
➔ great performance
➔ dynamic schemas
➔ versatile
mongodb use cases
use cases in Sprayer:
➔ operational DB, administrative data
➔ message delivery feedback updates
(potentially millions of records)

limitations for our use cases:
➔ operations with sets of subscribers
➔ high throughput queues
mongodb concerns

no concerns about mongodb for our
usecase.
maybe, in the long term, can it handle
the huge amount of feedback write
operations without affecting the API?
async queues
sprayer backend
WEBSOCKETS

WS
android

ANDROID

GCM

?

IOS

APNs

sms

HTTP

iOS

APPLICATION
<BACKEND>

ACCEPTER
REST API

HTTP

email
SMS

EMAIL

STATUS
FEEDER

sms
gateway
email
gateway

?

feedback
async queues
sprayer backend
WEBSOCKETS

ANDROID

IOS
APPLICATION
<BACKEND>

GCM

APNs

ACCEPTER
REST API
HTTP

SMS

EMAIL

STATUS
FEEDER

sms
gateway
email
gateway
rabbitmq
robust messaging for applications,
easy to use
(www.rabbitmq.com)
why rabbitmq?
➔ very fast
➔ reliable
➔ builtin clustering
rabbitmq use cases
use cases in Sprayer:
➔ jobs for dispatchers (API => dispatchers)
➔ feedback status updates: message
delivery, connections, device status
(dispatchers => API)

limitations for our use cases:
➔ not scaling well to millions of queues
(websocket receiver inboxes)
rabbitmq concerns
no concerns!
rabbitmq is best suited to very high
throughput messaging
full tech stack
sprayer backend
WEBSOCKETS

ANDROID

IOS
APPLICATION
<BACKEND>

GCM

APNs

ACCEPTER
REST API
HTTP

SMS

EMAIL

STATUS
FEEDER

sms
gateway
email
gateway
sum up
design threats
design threats
related data in different places:
redis, rabbitmq and mongo
we are not transactional, our
components remain sane in case of a DB
failure, idempotent operations help
here
light implementation of Unit of Work
architectural pattern
architecture guidelines
architecture guidelines
➔ asynchronous processing / queues everywhere
➔ dedicated dispatchers for each transport
➔ common API interface
➔ used the best tool for each responsibility:
polyglot persistence
➔ processes as stateless as possible
YES, SPRAYER DOES!

thanks for coming

Contenu connexe

Tendances

Asp. net core 3.0 build modern web and cloud applications (top 13 features +...
Asp. net core 3.0  build modern web and cloud applications (top 13 features +...Asp. net core 3.0  build modern web and cloud applications (top 13 features +...
Asp. net core 3.0 build modern web and cloud applications (top 13 features +...Katy Slemon
 
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JSMobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JStelestax
 
Whats New in IBM Integration Bus Interconnect 2017
Whats New in IBM Integration Bus Interconnect 2017Whats New in IBM Integration Bus Interconnect 2017
Whats New in IBM Integration Bus Interconnect 2017bthomps1979
 
Build and Operate Your Own Certificate Management Center of Mediocrity
Build and Operate Your Own Certificate Management Center of MediocrityBuild and Operate Your Own Certificate Management Center of Mediocrity
Build and Operate Your Own Certificate Management Center of MediocrityT.Rob Wyatt
 
Breeze overview
Breeze overviewBreeze overview
Breeze overviewYang Cheng
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry BootcampAndy Piper
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsIan Robinson
 
Docker meetup talk - chicago March 2014
Docker meetup talk - chicago March 2014Docker meetup talk - chicago March 2014
Docker meetup talk - chicago March 2014Ryan Koop
 
RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)Cisco DevNet
 
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...Amazon Web Services Korea
 
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Dialogic Inc.
 
WebRTC Media Challenges
WebRTC Media Challenges WebRTC Media Challenges
WebRTC Media Challenges Dialogic Inc.
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsC4Media
 
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer ConferenceCisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer ConferenceCisco DevNet
 
WAN Automation Engine API Deep Dive
WAN Automation Engine API Deep DiveWAN Automation Engine API Deep Dive
WAN Automation Engine API Deep DiveCisco DevNet
 
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers Dialogic Inc.
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix Rohit Kelapure
 
Lync2013 deploy archmanag
Lync2013 deploy archmanagLync2013 deploy archmanag
Lync2013 deploy archmanagOleg Kovalenko
 

Tendances (20)

Asp. net core 3.0 build modern web and cloud applications (top 13 features +...
Asp. net core 3.0  build modern web and cloud applications (top 13 features +...Asp. net core 3.0  build modern web and cloud applications (top 13 features +...
Asp. net core 3.0 build modern web and cloud applications (top 13 features +...
 
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JSMobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
Mobicents Summit 2012 - Orange Mobicents WebRTC Contribution : JAIN SIP JS
 
Whats New in IBM Integration Bus Interconnect 2017
Whats New in IBM Integration Bus Interconnect 2017Whats New in IBM Integration Bus Interconnect 2017
Whats New in IBM Integration Bus Interconnect 2017
 
Build and Operate Your Own Certificate Management Center of Mediocrity
Build and Operate Your Own Certificate Management Center of MediocrityBuild and Operate Your Own Certificate Management Center of Mediocrity
Build and Operate Your Own Certificate Management Center of Mediocrity
 
Breeze overview
Breeze overviewBreeze overview
Breeze overview
 
Cloud Foundry Bootcamp
Cloud Foundry BootcampCloud Foundry Bootcamp
Cloud Foundry Bootcamp
 
JavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote PresentationJavaOne 2015 Keynote Presentation
JavaOne 2015 Keynote Presentation
 
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise DemandsWebSphere Application Server - Meeting Your Cloud and On-Premise Demands
WebSphere Application Server - Meeting Your Cloud and On-Premise Demands
 
Docker meetup talk - chicago March 2014
Docker meetup talk - chicago March 2014Docker meetup talk - chicago March 2014
Docker meetup talk - chicago March 2014
 
RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)RESTful web APIs (build, document, manage)
RESTful web APIs (build, document, manage)
 
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...
Airbnb가 직접 들려주는 Kubernetes 환경 구축 이야기 - Melanie Cebula 소프트웨어 엔지니어, Airbnb :: A...
 
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
Peer-to-Server Media in WebRTC (Enterprise Connect 2014)
 
WebRTC Media Challenges
WebRTC Media Challenges WebRTC Media Challenges
WebRTC Media Challenges
 
Ivr worx
Ivr worxIvr worx
Ivr worx
 
Understand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java ApplicationsUnderstand the Trade-offs Using Compilers for Java Applications
Understand the Trade-offs Using Compilers for Java Applications
 
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer ConferenceCisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
 
WAN Automation Engine API Deep Dive
WAN Automation Engine API Deep DiveWAN Automation Engine API Deep Dive
WAN Automation Engine API Deep Dive
 
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers
WebRTC Conference & Expo / Miami 2015 / D1 3 - media servers
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
 
Lync2013 deploy archmanag
Lync2013 deploy archmanagLync2013 deploy archmanag
Lync2013 deploy archmanag
 

En vedette

Agriculture Robot report
Agriculture Robot reportAgriculture Robot report
Agriculture Robot reportRadhe Chauhan
 
Plant protection equipment
Plant protection equipmentPlant protection equipment
Plant protection equipmentagriyouthnepal
 
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...Ajjay Kumar Gupta
 
DESIGN AND FABRICATION OF A POWER SCISSOR JACK
DESIGN AND FABRICATION OF A POWER SCISSOR JACKDESIGN AND FABRICATION OF A POWER SCISSOR JACK
DESIGN AND FABRICATION OF A POWER SCISSOR JACKsasank babu
 

En vedette (6)

Enoch's project
Enoch's projectEnoch's project
Enoch's project
 
ROHIT SEMINAR FINAL
ROHIT SEMINAR FINALROHIT SEMINAR FINAL
ROHIT SEMINAR FINAL
 
Agriculture Robot report
Agriculture Robot reportAgriculture Robot report
Agriculture Robot report
 
Plant protection equipment
Plant protection equipmentPlant protection equipment
Plant protection equipment
 
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...
Solar Photovoltaic Module Industry, Solar PV Module Manufacturing Plant, Deta...
 
DESIGN AND FABRICATION OF A POWER SCISSOR JACK
DESIGN AND FABRICATION OF A POWER SCISSOR JACKDESIGN AND FABRICATION OF A POWER SCISSOR JACK
DESIGN AND FABRICATION OF A POWER SCISSOR JACK
 

Similaire à NoSQL Matters BCN 2013. Sprayer Low Latency, Reliable, Mutichannel Messaging

Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe-Lexware GmbH & Co KG
 
Red Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureRed Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureJohn Archer
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!Sam Basu
 
Praxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloudPraxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloudRoman Weber
 
Ignite 2017 - Windows Server Feature Release
Ignite 2017 - Windows Server Feature ReleaseIgnite 2017 - Windows Server Feature Release
Ignite 2017 - Windows Server Feature ReleaseTaylor Brown
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsChristian Heindel
 
Schnellere Digitalisierung mit einer cloudbasierten Datenstrategie
Schnellere Digitalisierung mit einer cloudbasierten DatenstrategieSchnellere Digitalisierung mit einer cloudbasierten Datenstrategie
Schnellere Digitalisierung mit einer cloudbasierten DatenstrategieMongoDB
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...Ludovic Piot
 
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020InfluxData
 
Amit Dixit Resume 1
Amit Dixit Resume 1Amit Dixit Resume 1
Amit Dixit Resume 1amit dixit
 
SignalR Intro + WPDev integration @ Codetock
SignalR Intro + WPDev integration @ CodetockSignalR Intro + WPDev integration @ Codetock
SignalR Intro + WPDev integration @ CodetockSam Basu
 
GigaSpaces CCF 4 Xap
GigaSpaces CCF 4 XapGigaSpaces CCF 4 Xap
GigaSpaces CCF 4 XapShay Hassidim
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)QAware GmbH
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Customize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
Customize Your Enterprise Mobile Salesforce.com Integrations with Red HatCustomize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
Customize Your Enterprise Mobile Salesforce.com Integrations with Red HatMaggie Hu
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEFilipe Miranda
 

Similaire à NoSQL Matters BCN 2013. Sprayer Low Latency, Reliable, Mutichannel Messaging (20)

Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
Haufe Onboarding - Fast Iterating With the MERN Stack - TEC Day 2019
 
Red Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft AzureRed Hat Openshift on Microsoft Azure
Red Hat Openshift on Microsoft Azure
 
SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!SignalR Powered X-Platform Real-Time Apps!
SignalR Powered X-Platform Real-Time Apps!
 
Praxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloudPraxistaugliche notes strategien 4 cloud
Praxistaugliche notes strategien 4 cloud
 
Ignite 2017 - Windows Server Feature Release
Ignite 2017 - Windows Server Feature ReleaseIgnite 2017 - Windows Server Feature Release
Ignite 2017 - Windows Server Feature Release
 
Resume ram-krishna
Resume ram-krishnaResume ram-krishna
Resume ram-krishna
 
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.jsAsynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
Asynchrone Echtzeitanwendungen für SharePoint mit SignalR und knockout.js
 
Schnellere Digitalisierung mit einer cloudbasierten Datenstrategie
Schnellere Digitalisierung mit einer cloudbasierten DatenstrategieSchnellere Digitalisierung mit einer cloudbasierten Datenstrategie
Schnellere Digitalisierung mit einer cloudbasierten Datenstrategie
 
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
[Capitole du Libre] #serverless -  mettez-le en oeuvre dans votre entreprise...
 
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020
Tim Hall [InfluxData] | InfluxDB Roadmap | InfluxDays Virtual Experience NA 2020
 
Pushpendra
PushpendraPushpendra
Pushpendra
 
shiv_chandra_pathak
shiv_chandra_pathakshiv_chandra_pathak
shiv_chandra_pathak
 
Amit Dixit Resume 1
Amit Dixit Resume 1Amit Dixit Resume 1
Amit Dixit Resume 1
 
SignalR Intro + WPDev integration @ Codetock
SignalR Intro + WPDev integration @ CodetockSignalR Intro + WPDev integration @ Codetock
SignalR Intro + WPDev integration @ Codetock
 
GigaSpaces CCF 4 Xap
GigaSpaces CCF 4 XapGigaSpaces CCF 4 Xap
GigaSpaces CCF 4 Xap
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Customize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
Customize Your Enterprise Mobile Salesforce.com Integrations with Red HatCustomize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
Customize Your Enterprise Mobile Salesforce.com Integrations with Red Hat
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONE
 

Plus de Javier Arias Losada

Why do lazy developers write beautiful code?
Why do lazy developers write beautiful code?Why do lazy developers write beautiful code?
Why do lazy developers write beautiful code?Javier Arias Losada
 
Europython - Machine Learning for dummies with Python
Europython - Machine Learning for dummies with PythonEuropython - Machine Learning for dummies with Python
Europython - Machine Learning for dummies with PythonJavier Arias Losada
 
Pybcn machine learning for dummies with python
Pybcn machine learning for dummies with pythonPybcn machine learning for dummies with python
Pybcn machine learning for dummies with pythonJavier Arias Losada
 
OSCON - ES6 metaprogramming unleashed
OSCON -  ES6 metaprogramming unleashedOSCON -  ES6 metaprogramming unleashed
OSCON - ES6 metaprogramming unleashedJavier Arias Losada
 
Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Javier Arias Losada
 
Full Stack Bus with Javascript, RabbitMQ and Postal.js
Full Stack Bus with Javascript, RabbitMQ and Postal.jsFull Stack Bus with Javascript, RabbitMQ and Postal.js
Full Stack Bus with Javascript, RabbitMQ and Postal.jsJavier Arias Losada
 
Rabbitmq, amqp Intro - Messaging Patterns
Rabbitmq, amqp Intro - Messaging PatternsRabbitmq, amqp Intro - Messaging Patterns
Rabbitmq, amqp Intro - Messaging PatternsJavier Arias Losada
 
From Java to Python: beating the Stockholm syndrome
From Java to Python: beating the Stockholm syndromeFrom Java to Python: beating the Stockholm syndrome
From Java to Python: beating the Stockholm syndromeJavier Arias Losada
 

Plus de Javier Arias Losada (9)

Why do lazy developers write beautiful code?
Why do lazy developers write beautiful code?Why do lazy developers write beautiful code?
Why do lazy developers write beautiful code?
 
Europython - Machine Learning for dummies with Python
Europython - Machine Learning for dummies with PythonEuropython - Machine Learning for dummies with Python
Europython - Machine Learning for dummies with Python
 
Pybcn machine learning for dummies with python
Pybcn machine learning for dummies with pythonPybcn machine learning for dummies with python
Pybcn machine learning for dummies with python
 
OSCON - ES6 metaprogramming unleashed
OSCON -  ES6 metaprogramming unleashedOSCON -  ES6 metaprogramming unleashed
OSCON - ES6 metaprogramming unleashed
 
ES6 metaprogramming unleashed
ES6 metaprogramming unleashedES6 metaprogramming unleashed
ES6 metaprogramming unleashed
 
Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?Elastically scalable architectures with microservices. The end of the monolith?
Elastically scalable architectures with microservices. The end of the monolith?
 
Full Stack Bus with Javascript, RabbitMQ and Postal.js
Full Stack Bus with Javascript, RabbitMQ and Postal.jsFull Stack Bus with Javascript, RabbitMQ and Postal.js
Full Stack Bus with Javascript, RabbitMQ and Postal.js
 
Rabbitmq, amqp Intro - Messaging Patterns
Rabbitmq, amqp Intro - Messaging PatternsRabbitmq, amqp Intro - Messaging Patterns
Rabbitmq, amqp Intro - Messaging Patterns
 
From Java to Python: beating the Stockholm syndrome
From Java to Python: beating the Stockholm syndromeFrom Java to Python: beating the Stockholm syndrome
From Java to Python: beating the Stockholm syndrome
 

Dernier

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 

Dernier (20)

Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 

NoSQL Matters BCN 2013. Sprayer Low Latency, Reliable, Mutichannel Messaging