SlideShare a Scribd company logo
Using Service Discovery and
Service Proxy
A Simple Microservices Example
2
Monolithic application Microservices
Scaling Scaling
Moving from Monolithic Applications to Microservices
Microservices:
are an architecture style, in which
large complex software applications
are composed of one or more services
can be deployed independently of
one another and are loosely coupled
should be small and focused on
completing a single task
typically communicate through
language-neutral APIs like an
Hypertext Transfer Protocol (HTTP)-
based resource API using REST
Benefits of Microservices for Developers
• Enables you to avoid working on large code bases
• Easier to maintain or add to features
• Use existing skills, or the most optimal language
• Improves deployment and load times in your development tools
• Makes debugging easier
• Enables teams to work more independently of each other
• Simplifies tracking code dependencies
• Enables complete ownership by a self-contained single team, from
definition through development, deployment, operations, and sunseting
• Makes it easier to address performance bottlenecks
3
Service Discovery, Service Proxy and Microservices
4
• Service Discovery enables developers to easily
register and find instances of their microservices
Service
Proxy
Service
Proxy
Service
Proxy
Rules
Service
Proxy
Rules
Service
Discovery
Service
Discovery
Client codeClient code
Service
A
Service
A
Service
B
Service
B
Service CService C
Service Registration
Heartbeats
Requests
Locate
service
Rules
to apply
Call requested
services using
rules
• Service Proxy automatically balances workloads
across instances to improve performance
Together, these two services provide essential capabilities for
creating and using microservices
A Simple Microservices example
5
Maureen
DevOps Pro
Maureen has an online store
application with a front end that
generates a web UI, and a backend that
checks the inventory to see if items are
out of stock.
Her original design was a single
monolithic application but she has
decided to redesign it with a
microservices based architecture to
improve scalability, reliability, and
business agility. She’s going to
split her app into three services –
WebUI, Inventory and Database.
Monolithic
WebUI + Inventory +
Database
WebUI
Inventory
Before: Monolithic app After: Using microservices
Database
Service Discovery – Automates Service Registration
6
Let’s assume Maureen’s new architecture is
container based so each instance of a service will
be run in a container.
A key task in transitioning to a microservices
architecture is to register each instance of a
service.
Service Discovery automatically
-Registers each instance of a service
-Makes it easy to find instances of services once
registered
-Periodically checks the health of each service
Inventory
Helper Script:
Register
(“Inventory
Instance 1”)
Helper Script:
Register
(“Inventory
Instance 2”)
Helper Script:
Register
(“Inventory
Instance 3”)
Service
Discovery
Service Discovery – Finding Instances Easily
7
Once instances of services are registered,
Service Discovery makes it easy to find them.
Service Discovery provides a simple REST based
API to find instances by logical name.
Without Service Proxy, its up to the client code to
determine which instance from the list to call.
For example you could call the first instance
returned.
Web UI
Service
Discovery
Query(“Inventory”)
Response:
“Inventory Instance 1”,
“Inventory Instance 2”,
“Inventory Instance 3”
Web UI
Call “Inventory Instance 1”()
Inventory
1
2
1
2
Return response of
“Inventory Instance 1”()
Service Proxy – Microservices Load Balancing
8
Service Proxy automatically balances workload across active instances
Service Proxy calls Service Discovery under the covers and then performing basic load
balancing of instances through a round robin process without the client writing code.
Service Proxy also logs the performance of the microservices it proxies, allowing you to track
the performance of your microservices without the client writing code.
Web UI
Service
Proxy
CallProxy(“Inventory”) Service
Discovery
Query(“Inventory”)
Response:
“Inventory Instance 1”,
“Inventory Instance 2”,
“Inventory Instance 3”Inventory Call “Inventory Instance 2”()
based on round robin.
And log its processing time
Return response of
“Inventory Instance 2”()
1
2
1
2
Service Proxy – Making your solution more reliable
Service Proxy also lets Maureen improve the
quality of her app by making it easy to inject
delays and failures during testing without writing
code
Injecting delays will help Maureen simulate
performance bottlenecks
Injecting failures will help her test how well the
application recovers from various error situations
Web UI
If WW Inventory
request takes more
than 120 ms, switch to
Regional Inventory
instead
WW
Inventory
Regional
Inventory
Service
Proxy
Configure Proxy to Inject
delays to WW Inventory
to simulate WAN delays
Web UI
If Inventory is
not available,
use Local
Cache
InventoryService
Proxy
Configure Proxy to fail
some calls to Inventory
to simulate network
failure
Local
Cache
1
2
1
2
Service Proxy – Future Enhancement (Gremlin)
The initial public beta of Service Proxy will support two simple flavors of injection testing:
•Delays that are always injected through Proxy
•Failures that are randomly injected based through Proxy on a percentage (25% of the time,
50% of the time, etc…)
IBM Research has created a testing framework (Gremlin) that supports scripted orderly
testing via a recipe, and beyond beta we wish to extend Service Proxy to support integration
with this.
This will provide the capability to script specific failures for orderly resiliency testing that
helps clients to:
•Create repeatable sophisticated test cases via Gremlin recipes for delays, failures, and
scrambled communication across multiple microservices
•Separate synthetic testing load for testing instances from real user traffic running on
production instances
• Maureen:
– I just deployed a new version of the “WebUI” service. I want to make sure my
service can tolerate failures of other services and the environment.
• Release manager:
– I want to make sure each service is resilient to failures before a new version
release
11
Gremlin - simple use case
Inventory Database
Service
proxy
WebUI
Gremlin Vision
12
fault injection
rules
Not affected
Bluemix
Logging
Service
Logs
Synthetic Load
Real user traffic
Bluemix Tenant
Gremlin ServiceMaureen
Release
Manager
Scenario
Run
scenario Result What went wrong?
Service
Overload
❌
Inventory did not trigger
circuit breaker when DB
service was overloaded
Network
Instability
…
Service Status
WebUI
✅
Inventory ❌
Database ✅
LaunchLaunch
LaunchLaunch
Failure
Orchestratio
n
Behavior
Validation
Subjected to failures
Fallback
cache
Creating Your Own Gremlin Recipe
run_recipe.py topology.json gremlins.json checklist.json
BoundedRetries: Check if
WebUI retried its API calls to
RegionalInventory, no more
than 5 times, with 30ms gap
Fake “Overload”: Gremlin will intercept all
API calls to RegionalInventory
and return HTTP 503/429
Failure injected only if request has HTTP
header
“X-Gremlin-ID: delayTest-<val>”
Invitation to Join Our Beta Program
Interested in learning more? Join our beta program
Both Service Discovery for Bluemix and Service Proxy for Bluemix are in Beta in 1Q2016 and
available on the public Bluemix catalog: www.bluemix.net
For more information, contact
Doug Rothert, IBM Cloud Offering Manager
drothert@us.ibm.com
@DougRothert).
Notices and Disclaimers
15
Copyright © 2016 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission
from IBM.
U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM.
Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of
initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS
DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE
USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM
products and services are warranted according to the terms and conditions of the agreements under which they are provided.
Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice.
Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those
customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary.
References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries
in which IBM operates or does business.
Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials
and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant
or their specific situation.
It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and
interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such
laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law
Notices and Disclaimers Con’t.
16
Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not
tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products.
Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the
ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT
NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
The provision of the information contained h erein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other
intellectual property right.
IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®,
FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG,
Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®,
PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®,
StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business
Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM
trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
Thank You
Your Feedback is Important!
Access the InterConnect 2016 Conference Attendee
Portal to complete your session surveys from your
smartphone,
laptop or conference kiosk.

More Related Content

What's hot

Bluemix the digital innovation platform
Bluemix   the digital innovation platformBluemix   the digital innovation platform
Bluemix the digital innovation platform
Jose Pena
 
Discover the Linux on z Systems Effect
Discover the Linux on z Systems EffectDiscover the Linux on z Systems Effect
Discover the Linux on z Systems Effect
IBM
 
Bluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupBluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupJon Marshall
 
IBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub EnterpriseIBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub Enterprise
IBM DevOps
 
IBM Relay 2015: Cloud is All About the Customer
IBM Relay 2015: Cloud is All About the Customer IBM Relay 2015: Cloud is All About the Customer
IBM Relay 2015: Cloud is All About the Customer
IBM
 
Bluemix presentation IBM Cloud Briefing in San Jose
Bluemix presentation IBM Cloud Briefing in San JoseBluemix presentation IBM Cloud Briefing in San Jose
Bluemix presentation IBM Cloud Briefing in San Jose
Sergio Loza
 
IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3
Nguyen Tai Dzung
 
IBM Bluemix hands on
IBM Bluemix hands onIBM Bluemix hands on
IBM Bluemix hands on
Felipe Freire
 
IBM Bluemix Overview
IBM Bluemix OverviewIBM Bluemix Overview
IBM Bluemix Overview
Ian Lynch ☁️
 
100 blue mix days technical training
100 blue mix days technical training100 blue mix days technical training
100 blue mix days technical trainingAjit Yohannan
 
IBM Bluemix cloudfoundry platform
IBM Bluemix cloudfoundry platformIBM Bluemix cloudfoundry platform
IBM Bluemix cloudfoundry platform
Daniela Zuppini
 
Deploy apps on ibm bluemix docker day vietnam 2015
Deploy apps on ibm bluemix   docker day vietnam 2015Deploy apps on ibm bluemix   docker day vietnam 2015
Deploy apps on ibm bluemix docker day vietnam 2015
hai260288
 
Paris Meetup Bluemix du 15/10/2104
Paris Meetup Bluemix du 15/10/2104Paris Meetup Bluemix du 15/10/2104
Paris Meetup Bluemix du 15/10/2104
IBM France Lab
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDB
Jake Peyser
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
Michael Elder
 
An introduction to IBM BlueMix
An introduction to IBM BlueMixAn introduction to IBM BlueMix
An introduction to IBM BlueMix
Per Henrik Lausten
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
Animesh Singh
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Michael Elder
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
Michael Elder
 
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
IBM France Lab
 

What's hot (20)

Bluemix the digital innovation platform
Bluemix   the digital innovation platformBluemix   the digital innovation platform
Bluemix the digital innovation platform
 
Discover the Linux on z Systems Effect
Discover the Linux on z Systems EffectDiscover the Linux on z Systems Effect
Discover the Linux on z Systems Effect
 
Bluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User GroupBluemix overview - UK WebSphere Integration User Group
Bluemix overview - UK WebSphere Integration User Group
 
IBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub EnterpriseIBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub Enterprise
 
IBM Relay 2015: Cloud is All About the Customer
IBM Relay 2015: Cloud is All About the Customer IBM Relay 2015: Cloud is All About the Customer
IBM Relay 2015: Cloud is All About the Customer
 
Bluemix presentation IBM Cloud Briefing in San Jose
Bluemix presentation IBM Cloud Briefing in San JoseBluemix presentation IBM Cloud Briefing in San Jose
Bluemix presentation IBM Cloud Briefing in San Jose
 
IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3IBM Bluemix Workshop version 3
IBM Bluemix Workshop version 3
 
IBM Bluemix hands on
IBM Bluemix hands onIBM Bluemix hands on
IBM Bluemix hands on
 
IBM Bluemix Overview
IBM Bluemix OverviewIBM Bluemix Overview
IBM Bluemix Overview
 
100 blue mix days technical training
100 blue mix days technical training100 blue mix days technical training
100 blue mix days technical training
 
IBM Bluemix cloudfoundry platform
IBM Bluemix cloudfoundry platformIBM Bluemix cloudfoundry platform
IBM Bluemix cloudfoundry platform
 
Deploy apps on ibm bluemix docker day vietnam 2015
Deploy apps on ibm bluemix   docker day vietnam 2015Deploy apps on ibm bluemix   docker day vietnam 2015
Deploy apps on ibm bluemix docker day vietnam 2015
 
Paris Meetup Bluemix du 15/10/2104
Paris Meetup Bluemix du 15/10/2104Paris Meetup Bluemix du 15/10/2104
Paris Meetup Bluemix du 15/10/2104
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDB
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
 
An introduction to IBM BlueMix
An introduction to IBM BlueMixAn introduction to IBM BlueMix
An introduction to IBM BlueMix
 
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry) IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
IBM BlueMix Architecture and Deep Dive (Powered by CloudFoundry)
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
 
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
IBM BlueMix Presentation - Paris Meetup 17th Sept. 2014
 

Viewers also liked

IBM RTP Dojo Launch
IBM RTP Dojo LaunchIBM RTP Dojo Launch
IBM RTP Dojo Launch
IBM
 
IBM Relay 2015: Open for Data
IBM Relay 2015: Open for Data IBM Relay 2015: Open for Data
IBM Relay 2015: Open for Data
IBM
 
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
IBM
 
Barriers to Data Sharing
Barriers to Data SharingBarriers to Data Sharing
Barriers to Data Sharing
Catherine Giffi
 
Hybrid Cloud with IBM Bluemix
Hybrid Cloud with IBM BluemixHybrid Cloud with IBM Bluemix
Hybrid Cloud with IBM Bluemix
Roberto Pozzi
 
Node on Guard
Node on GuardNode on Guard
Node on Guard
IBM
 
End-to-end solution demonstration: From concept to delivery-Intel/IBM
End-to-end solution demonstration: From concept to delivery-Intel/IBMEnd-to-end solution demonstration: From concept to delivery-Intel/IBM
End-to-end solution demonstration: From concept to delivery-Intel/IBM
IBM_Info_Management
 
Birmingham Meetup
Birmingham MeetupBirmingham Meetup
Birmingham Meetup
IBM
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 Questions
Mike Broberg
 
Scalability 09262012
Scalability 09262012Scalability 09262012
Scalability 09262012
Mike Miller
 
Mobile App Development With IBM Cloudant
Mobile App Development With IBM CloudantMobile App Development With IBM Cloudant
Mobile App Development With IBM Cloudant
IBM Cloud Data Services
 
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM BluemixOffline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
IBM
 
Security best practices for informix
Security best practices for informixSecurity best practices for informix
Security best practices for informix
IBM_Info_Management
 
I See NoSQL Document Stores in Geospatial Applications
I See NoSQL Document Stores in Geospatial ApplicationsI See NoSQL Document Stores in Geospatial Applications
I See NoSQL Document Stores in Geospatial Applications
IBM Cloud Data Services
 
Sistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
Sistemas Integrados Multimodales: Santiago de Chile - Oscar VelasquezSistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
Sistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
Fagner Glinski
 
Practical Use of a NoSQL
Practical Use of a NoSQLPractical Use of a NoSQL
Practical Use of a NoSQL
IBM Cloud Data Services
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
Dave Stokes
 
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
NoSQLmatters
 
Cloud Data Services: A Brand New Ballgame for Business
Cloud Data Services: A  Brand New Ballgame for BusinessCloud Data Services: A  Brand New Ballgame for Business
Cloud Data Services: A Brand New Ballgame for Business
IBM Cloud Data Services
 
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
Fagner Glinski
 

Viewers also liked (20)

IBM RTP Dojo Launch
IBM RTP Dojo LaunchIBM RTP Dojo Launch
IBM RTP Dojo Launch
 
IBM Relay 2015: Open for Data
IBM Relay 2015: Open for Data IBM Relay 2015: Open for Data
IBM Relay 2015: Open for Data
 
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
IBM Relay 2015: New Data Sources, New Value. Watson, Weather and Beyond
 
Barriers to Data Sharing
Barriers to Data SharingBarriers to Data Sharing
Barriers to Data Sharing
 
Hybrid Cloud with IBM Bluemix
Hybrid Cloud with IBM BluemixHybrid Cloud with IBM Bluemix
Hybrid Cloud with IBM Bluemix
 
Node on Guard
Node on GuardNode on Guard
Node on Guard
 
End-to-end solution demonstration: From concept to delivery-Intel/IBM
End-to-end solution demonstration: From concept to delivery-Intel/IBMEnd-to-end solution demonstration: From concept to delivery-Intel/IBM
End-to-end solution demonstration: From concept to delivery-Intel/IBM
 
Birmingham Meetup
Birmingham MeetupBirmingham Meetup
Birmingham Meetup
 
SQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 QuestionsSQL to NoSQL: Top 6 Questions
SQL to NoSQL: Top 6 Questions
 
Scalability 09262012
Scalability 09262012Scalability 09262012
Scalability 09262012
 
Mobile App Development With IBM Cloudant
Mobile App Development With IBM CloudantMobile App Development With IBM Cloudant
Mobile App Development With IBM Cloudant
 
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM BluemixOffline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
Offline-First Mobile Web Apps with PouchDB, IBM Cloudant, and IBM Bluemix
 
Security best practices for informix
Security best practices for informixSecurity best practices for informix
Security best practices for informix
 
I See NoSQL Document Stores in Geospatial Applications
I See NoSQL Document Stores in Geospatial ApplicationsI See NoSQL Document Stores in Geospatial Applications
I See NoSQL Document Stores in Geospatial Applications
 
Sistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
Sistemas Integrados Multimodales: Santiago de Chile - Oscar VelasquezSistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
Sistemas Integrados Multimodales: Santiago de Chile - Oscar Velasquez
 
Practical Use of a NoSQL
Practical Use of a NoSQLPractical Use of a NoSQL
Practical Use of a NoSQL
 
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
MySQL for Oracle DBA -- Rocky Mountain Oracle User Group Training Days '15
 
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
Nathan Ford- Divination of the Defects (Graph-Based Defect Prediction through...
 
Cloud Data Services: A Brand New Ballgame for Business
Cloud Data Services: A  Brand New Ballgame for BusinessCloud Data Services: A  Brand New Ballgame for Business
Cloud Data Services: A Brand New Ballgame for Business
 
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
La Importancia de la Calidad en el Servicio de Transporte - Laura Ballesteros...
 

Similar to Using Service Discovery and Service Proxy

Microservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsMicroservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applications
Stijn Van Den Enden
 
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
Karen Broughton-Mabbitt
 
Microservices
MicroservicesMicroservices
Microservices
SmartBear
 
Microservices
MicroservicesMicroservices
Microservices
Ramesh (@Mavuluri)
 
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service TestingContinuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Cognizant
 
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
Oracle Korea
 
The elegant way of implementing microservices with istio
The elegant way of implementing microservices with istioThe elegant way of implementing microservices with istio
The elegant way of implementing microservices with istio
Inho Kang
 
Microservices and IBM Bluemix meetup presentation
Microservices and IBM Bluemix meetup presentationMicroservices and IBM Bluemix meetup presentation
Microservices and IBM Bluemix meetup presentation
Carlos Ferreira
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
Faren faren
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Rohit Kelapure
 
Testing microservices with rest assured
Testing microservices with rest assuredTesting microservices with rest assured
Testing microservices with rest assured
Kushan Shalindra Amarasiri - Technical QE Specialist
 
APM Talk
APM TalkAPM Talk
APM Talk
MongoDB
 
Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar
Experitest
 
Encontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de AplicacionesEncontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de Aplicaciones
Software Guru
 
White paper ready api
White paper  ready apiWhite paper  ready api
White paper ready api
Nithin Bijjala
 
Twelve factor-app
Twelve factor-appTwelve factor-app
Twelve factor-app
José Javier Vélez Colón
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern Launguage
Inho Kang
 
Lending qb executive summary 2013
Lending qb executive summary 2013Lending qb executive summary 2013
Lending qb executive summary 2013Gigi Campbell
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk Introduction
Ioana Baldini
 
IBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentIBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentStrongback Consulting
 

Similar to Using Service Discovery and Service Proxy (20)

Microservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applicationsMicroservices - Hitchhiker's guide to cloud native applications
Microservices - Hitchhiker's guide to cloud native applications
 
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
HIA 1015 Speed the Development of Robust Integrations with IBM Integration Bu...
 
Microservices
MicroservicesMicroservices
Microservices
 
Microservices
MicroservicesMicroservices
Microservices
 
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service TestingContinuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
 
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
12월 16일 Meetup [Deep Dive] Microservice 트래픽 관리를 위한 Istio 알아보기 | 강인호 컨설턴트, 오라클
 
The elegant way of implementing microservices with istio
The elegant way of implementing microservices with istioThe elegant way of implementing microservices with istio
The elegant way of implementing microservices with istio
 
Microservices and IBM Bluemix meetup presentation
Microservices and IBM Bluemix meetup presentationMicroservices and IBM Bluemix meetup presentation
Microservices and IBM Bluemix meetup presentation
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
 
Testing microservices with rest assured
Testing microservices with rest assuredTesting microservices with rest assured
Testing microservices with rest assured
 
APM Talk
APM TalkAPM Talk
APM Talk
 
Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar Experitest & Wipro Co-Webinar
Experitest & Wipro Co-Webinar
 
Encontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de AplicacionesEncontrando la Aguja en el Rendimiento de Aplicaciones
Encontrando la Aguja en el Rendimiento de Aplicaciones
 
White paper ready api
White paper  ready apiWhite paper  ready api
White paper ready api
 
Twelve factor-app
Twelve factor-appTwelve factor-app
Twelve factor-app
 
Microservice Pattern Launguage
Microservice Pattern LaunguageMicroservice Pattern Launguage
Microservice Pattern Launguage
 
Lending qb executive summary 2013
Lending qb executive summary 2013Lending qb executive summary 2013
Lending qb executive summary 2013
 
OpenWhisk Introduction
OpenWhisk IntroductionOpenWhisk Introduction
OpenWhisk Introduction
 
IBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic InvestmentIBM Innovate 2013: Making Rational HATS a Strategic Investment
IBM Innovate 2013: Making Rational HATS a Strategic Investment
 

More from IBM

Microservices - Choosing the Right Cloud Services and Tools
Microservices - Choosing the Right Cloud Services and ToolsMicroservices - Choosing the Right Cloud Services and Tools
Microservices - Choosing the Right Cloud Services and Tools
IBM
 
Digital Innovation in the Cognitive Era
Digital Innovation in the Cognitive EraDigital Innovation in the Cognitive Era
Digital Innovation in the Cognitive Era
IBM
 
Exploring the Open Source Linux Ecosystem
Exploring the Open Source Linux EcosystemExploring the Open Source Linux Ecosystem
Exploring the Open Source Linux Ecosystem
IBM
 
Open Source Centers of Gravity
Open Source Centers of GravityOpen Source Centers of Gravity
Open Source Centers of Gravity
IBM
 
Meetupslides 150409100501-conversion-gate01
Meetupslides 150409100501-conversion-gate01Meetupslides 150409100501-conversion-gate01
Meetupslides 150409100501-conversion-gate01IBM
 
Integrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry AppIntegrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry App
IBM
 
Building Your Own Watson Powered Application on Bluemix
Building Your Own Watson Powered Application on BluemixBuilding Your Own Watson Powered Application on Bluemix
Building Your Own Watson Powered Application on Bluemix
IBM
 
Bluemix Girls Night Out
Bluemix Girls Night Out Bluemix Girls Night Out
Bluemix Girls Night Out
IBM
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
IBM
 
Using Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on BluemixUsing Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on Bluemix
IBM
 
Watson on Bluemix
Watson on BluemixWatson on Bluemix
Watson on BluemixIBM
 
PHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on BluemixPHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on Bluemix
IBM
 
Introduction: Watson Services on IBM Bluemix Webcast
Introduction: Watson Services on IBM Bluemix Webcast Introduction: Watson Services on IBM Bluemix Webcast
Introduction: Watson Services on IBM Bluemix Webcast
IBM
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
IBM
 
Automate the Application Deployment Process
Automate the Application Deployment ProcessAutomate the Application Deployment Process
Automate the Application Deployment Process
IBM
 
Bluemix Overview & Demo
Bluemix Overview & DemoBluemix Overview & Demo
Bluemix Overview & Demo
IBM
 
Scalable apps
Scalable appsScalable apps
Scalable apps
IBM
 
Webcast Four: Ruby Business Intelligence and Analytics on Bluemix
Webcast Four: Ruby Business Intelligence and Analytics on BluemixWebcast Four: Ruby Business Intelligence and Analytics on Bluemix
Webcast Four: Ruby Business Intelligence and Analytics on Bluemix
IBM
 

More from IBM (18)

Microservices - Choosing the Right Cloud Services and Tools
Microservices - Choosing the Right Cloud Services and ToolsMicroservices - Choosing the Right Cloud Services and Tools
Microservices - Choosing the Right Cloud Services and Tools
 
Digital Innovation in the Cognitive Era
Digital Innovation in the Cognitive EraDigital Innovation in the Cognitive Era
Digital Innovation in the Cognitive Era
 
Exploring the Open Source Linux Ecosystem
Exploring the Open Source Linux EcosystemExploring the Open Source Linux Ecosystem
Exploring the Open Source Linux Ecosystem
 
Open Source Centers of Gravity
Open Source Centers of GravityOpen Source Centers of Gravity
Open Source Centers of Gravity
 
Meetupslides 150409100501-conversion-gate01
Meetupslides 150409100501-conversion-gate01Meetupslides 150409100501-conversion-gate01
Meetupslides 150409100501-conversion-gate01
 
Integrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry AppIntegrating MongoDB into Cloud Foundry App
Integrating MongoDB into Cloud Foundry App
 
Building Your Own Watson Powered Application on Bluemix
Building Your Own Watson Powered Application on BluemixBuilding Your Own Watson Powered Application on Bluemix
Building Your Own Watson Powered Application on Bluemix
 
Bluemix Girls Night Out
Bluemix Girls Night Out Bluemix Girls Night Out
Bluemix Girls Night Out
 
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & CloudantBuild Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
Build Scalable Internet of Things Apps using Cloud Foundry, Bluemix & Cloudant
 
Using Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on BluemixUsing Watson to build Cognitive IoT Apps on Bluemix
Using Watson to build Cognitive IoT Apps on Bluemix
 
Watson on Bluemix
Watson on BluemixWatson on Bluemix
Watson on Bluemix
 
PHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on BluemixPHP Buildpacks in the Cloud on Bluemix
PHP Buildpacks in the Cloud on Bluemix
 
Introduction: Watson Services on IBM Bluemix Webcast
Introduction: Watson Services on IBM Bluemix Webcast Introduction: Watson Services on IBM Bluemix Webcast
Introduction: Watson Services on IBM Bluemix Webcast
 
Connecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in BluemixConnecting Xamarin Apps with IBM Worklight in Bluemix
Connecting Xamarin Apps with IBM Worklight in Bluemix
 
Automate the Application Deployment Process
Automate the Application Deployment ProcessAutomate the Application Deployment Process
Automate the Application Deployment Process
 
Bluemix Overview & Demo
Bluemix Overview & DemoBluemix Overview & Demo
Bluemix Overview & Demo
 
Scalable apps
Scalable appsScalable apps
Scalable apps
 
Webcast Four: Ruby Business Intelligence and Analytics on Bluemix
Webcast Four: Ruby Business Intelligence and Analytics on BluemixWebcast Four: Ruby Business Intelligence and Analytics on Bluemix
Webcast Four: Ruby Business Intelligence and Analytics on Bluemix
 

Recently uploaded

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Tobias Schneck
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
KatiaHIMEUR1
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
Elena Simperl
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
Product School
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 

Recently uploaded (20)

FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
De-mystifying Zero to One: Design Informed Techniques for Greenfield Innovati...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !Securing your Kubernetes cluster_ a step-by-step guide to success !
Securing your Kubernetes cluster_ a step-by-step guide to success !
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 

Using Service Discovery and Service Proxy

  • 1. Using Service Discovery and Service Proxy A Simple Microservices Example
  • 2. 2 Monolithic application Microservices Scaling Scaling Moving from Monolithic Applications to Microservices Microservices: are an architecture style, in which large complex software applications are composed of one or more services can be deployed independently of one another and are loosely coupled should be small and focused on completing a single task typically communicate through language-neutral APIs like an Hypertext Transfer Protocol (HTTP)- based resource API using REST
  • 3. Benefits of Microservices for Developers • Enables you to avoid working on large code bases • Easier to maintain or add to features • Use existing skills, or the most optimal language • Improves deployment and load times in your development tools • Makes debugging easier • Enables teams to work more independently of each other • Simplifies tracking code dependencies • Enables complete ownership by a self-contained single team, from definition through development, deployment, operations, and sunseting • Makes it easier to address performance bottlenecks 3
  • 4. Service Discovery, Service Proxy and Microservices 4 • Service Discovery enables developers to easily register and find instances of their microservices Service Proxy Service Proxy Service Proxy Rules Service Proxy Rules Service Discovery Service Discovery Client codeClient code Service A Service A Service B Service B Service CService C Service Registration Heartbeats Requests Locate service Rules to apply Call requested services using rules • Service Proxy automatically balances workloads across instances to improve performance Together, these two services provide essential capabilities for creating and using microservices
  • 5. A Simple Microservices example 5 Maureen DevOps Pro Maureen has an online store application with a front end that generates a web UI, and a backend that checks the inventory to see if items are out of stock. Her original design was a single monolithic application but she has decided to redesign it with a microservices based architecture to improve scalability, reliability, and business agility. She’s going to split her app into three services – WebUI, Inventory and Database. Monolithic WebUI + Inventory + Database WebUI Inventory Before: Monolithic app After: Using microservices Database
  • 6. Service Discovery – Automates Service Registration 6 Let’s assume Maureen’s new architecture is container based so each instance of a service will be run in a container. A key task in transitioning to a microservices architecture is to register each instance of a service. Service Discovery automatically -Registers each instance of a service -Makes it easy to find instances of services once registered -Periodically checks the health of each service Inventory Helper Script: Register (“Inventory Instance 1”) Helper Script: Register (“Inventory Instance 2”) Helper Script: Register (“Inventory Instance 3”) Service Discovery
  • 7. Service Discovery – Finding Instances Easily 7 Once instances of services are registered, Service Discovery makes it easy to find them. Service Discovery provides a simple REST based API to find instances by logical name. Without Service Proxy, its up to the client code to determine which instance from the list to call. For example you could call the first instance returned. Web UI Service Discovery Query(“Inventory”) Response: “Inventory Instance 1”, “Inventory Instance 2”, “Inventory Instance 3” Web UI Call “Inventory Instance 1”() Inventory 1 2 1 2 Return response of “Inventory Instance 1”()
  • 8. Service Proxy – Microservices Load Balancing 8 Service Proxy automatically balances workload across active instances Service Proxy calls Service Discovery under the covers and then performing basic load balancing of instances through a round robin process without the client writing code. Service Proxy also logs the performance of the microservices it proxies, allowing you to track the performance of your microservices without the client writing code. Web UI Service Proxy CallProxy(“Inventory”) Service Discovery Query(“Inventory”) Response: “Inventory Instance 1”, “Inventory Instance 2”, “Inventory Instance 3”Inventory Call “Inventory Instance 2”() based on round robin. And log its processing time Return response of “Inventory Instance 2”() 1 2 1 2
  • 9. Service Proxy – Making your solution more reliable Service Proxy also lets Maureen improve the quality of her app by making it easy to inject delays and failures during testing without writing code Injecting delays will help Maureen simulate performance bottlenecks Injecting failures will help her test how well the application recovers from various error situations Web UI If WW Inventory request takes more than 120 ms, switch to Regional Inventory instead WW Inventory Regional Inventory Service Proxy Configure Proxy to Inject delays to WW Inventory to simulate WAN delays Web UI If Inventory is not available, use Local Cache InventoryService Proxy Configure Proxy to fail some calls to Inventory to simulate network failure Local Cache 1 2 1 2
  • 10. Service Proxy – Future Enhancement (Gremlin) The initial public beta of Service Proxy will support two simple flavors of injection testing: •Delays that are always injected through Proxy •Failures that are randomly injected based through Proxy on a percentage (25% of the time, 50% of the time, etc…) IBM Research has created a testing framework (Gremlin) that supports scripted orderly testing via a recipe, and beyond beta we wish to extend Service Proxy to support integration with this. This will provide the capability to script specific failures for orderly resiliency testing that helps clients to: •Create repeatable sophisticated test cases via Gremlin recipes for delays, failures, and scrambled communication across multiple microservices •Separate synthetic testing load for testing instances from real user traffic running on production instances
  • 11. • Maureen: – I just deployed a new version of the “WebUI” service. I want to make sure my service can tolerate failures of other services and the environment. • Release manager: – I want to make sure each service is resilient to failures before a new version release 11 Gremlin - simple use case
  • 12. Inventory Database Service proxy WebUI Gremlin Vision 12 fault injection rules Not affected Bluemix Logging Service Logs Synthetic Load Real user traffic Bluemix Tenant Gremlin ServiceMaureen Release Manager Scenario Run scenario Result What went wrong? Service Overload ❌ Inventory did not trigger circuit breaker when DB service was overloaded Network Instability … Service Status WebUI ✅ Inventory ❌ Database ✅ LaunchLaunch LaunchLaunch Failure Orchestratio n Behavior Validation Subjected to failures Fallback cache
  • 13. Creating Your Own Gremlin Recipe run_recipe.py topology.json gremlins.json checklist.json BoundedRetries: Check if WebUI retried its API calls to RegionalInventory, no more than 5 times, with 30ms gap Fake “Overload”: Gremlin will intercept all API calls to RegionalInventory and return HTTP 503/429 Failure injected only if request has HTTP header “X-Gremlin-ID: delayTest-<val>”
  • 14. Invitation to Join Our Beta Program Interested in learning more? Join our beta program Both Service Discovery for Bluemix and Service Proxy for Bluemix are in Beta in 1Q2016 and available on the public Bluemix catalog: www.bluemix.net For more information, contact Doug Rothert, IBM Cloud Offering Manager drothert@us.ibm.com @DougRothert).
  • 15. Notices and Disclaimers 15 Copyright © 2016 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. THIS DOCUMENT IS DISTRIBUTED "AS IS" WITHOUT ANY WARRANTY, EITHER EXPRESS OR IMPLIED. IN NO EVENT SHALL IBM BE LIABLE FOR ANY DAMAGE ARISING FROM THE USE OF THIS INFORMATION, INCLUDING BUT NOT LIMITED TO, LOSS OF DATA, BUSINESS INTERRUPTION, LOSS OF PROFIT OR LOSS OF OPPORTUNITY. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law
  • 16. Notices and Disclaimers Con’t. 16 Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM EXPRESSLY DISCLAIMS ALL WARRANTIES, EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. The provision of the information contained h erein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®, FileNet®, Global Business Services ®, Global Technology Services ®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli®, Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
  • 17. Thank You Your Feedback is Important! Access the InterConnect 2016 Conference Attendee Portal to complete your session surveys from your smartphone, laptop or conference kiosk.

Editor's Notes

  1. Software is moving from traditional monolithic, on premise applications to a set of composable set of micro-services used in the cloud. Sometimes this is referred to as “born on the cloud” technology Why? New technology and process now promote rapid development cycles, built from creating smaller pieces of software that are hardened with automated testing. This software is also deployed with automated scaling and recovery, and has well defined interfaces to allow parts of the deployed solution to be redesigned or replaced without scrapping the entire investment. A key challenge with microservices is allowing developers to register their microservices, find their microservices, and control how their microservice is called through a proxy. By providing this capability as an on demand Bluemix service we reduce development cost, as well as operational costs by reducing the amount of code that development must write.
  2. Storefront and CheckInventory microservices instance of Service A registers themselves with Service Discovery through a helper script, automatically instance of Service B ADDS CODE to query Service Discovery and finds list of Service A instances, and grabs the first instance Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  3. Storefront and CheckInventory microservices instance of Service A registers themselves with Service Discovery through a helper script, automatically instance of Service B ADDS CODE to query Service Discovery and finds list of Service A instances, and grabs the first instance Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  4. instance of Service B ADDS CODE to query Service Discovery and finds list of Service A instances, and grabs the first instance Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  5. Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  6. Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  7. Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes
  8. Then show that this can be refined with a load balancer through Service Proxy applied to Service A, there is no added code to Service B and that logging data will also show the transaction time then throw in the testing angle - delays and failures added to Service A through proxy without code changes