SlideShare a Scribd company logo
1 of 81
Download to read offline
A Microservices Journey
@christianposta
Christian Posta
Chief Architect, cloud application development
Twitter: @christianposta
Blog: http://blog.christianposta.com
Email: christian@redhat.com
Slides: http://slideshare.net/ceposta
ā€¢ Author ā€œMicroservices for Java developersā€
ā€¢ Committer/contributor lots of open-source
projects
ā€¢ Worked with large Microservices, web-scale,
unicorn company
ā€¢ Blogger, speaker about DevOps, integration,
and microservices
Rough path of discussions
today
ā€¢ Microservices: What, Why, When?
ā€¢ ā€œCloud-nativeā€ with a Platform
ā€¢ Microservices frameworks
ā€¢ Service decomposition and boundaries
ā€¢ Microservice resilience, routing, and control
@christianposta
Microserivces:
What, Why, When
@christianposta
ā€œThe microservice architectural style is an
approach to developing a single application as
a suite of small services, each running in its
own process and communicating with
lightweight mechanisms, often an HTTP
resource API. These services are built around
business capabilities and independently
deployable by fully automated deployment
machinery.ā€
A microservices definition
ā€¢ Single, self-contained, autonomous
ā€¢ Isolated and Resilient to faults
ā€¢ Faster software delivery
ā€¢ Own their own data
ā€¢ Easier to understand individually
ā€¢ Scalability
ā€¢ Right technology for the problem
ā€¢ Test individual services
ā€¢ Individual deployments
Microservices?
@christianposta
ā€¢ System complexity
ā€¢ Operational complexity
ā€¢ Testing is harder across services
ā€¢ Security
ā€¢ Hard to get boundaries right (transactions,
APIs, etc)
ā€¢ Resource overhead
ā€¢ Network overhead
ā€¢ Lack of tooling
Drawbacks to microservices
@christianposta
Why would one implement a system
as microservices?
@christianposta
Pain we may feelā€¦
@christianposta
ā€¢ Making changes in one place negatively affects
unrelated areas
ā€¢ Low confidence making changes that donā€™t break
things
ā€¢ Spend lots of time trying to coordinate work between
team members
ā€¢ Structure in the application has eroded or is non-
existant
ā€¢ We have no way to quantify how long code merges
will take
@christianposta
ā€¢ Development time is slow simply because the project
is so big (IDE bogs down, running tests is slow, slow
bootstrap time, etc)
ā€¢ Changes to one module force changes across other
modules
ā€¢ Difficult to sunset outdated technology
ā€¢ Weā€™ve built our new applications around old
premises like batch processing
ā€¢ Application steps on itself at runtime managing
resources, allocations, computations
Pain we may feelā€¦
Microservices is about optimizing for speed.
@christianposta
If change is happening on the
outside faster than on the inside
the end is in sight.
S&P company life expectancy
@christianposta
Jack Welch, former CEO, GE
Fortune 500 firms in 1955 vs. 2014;
88% are gone
@christianposta
Competitive advantage is transient.
We need to continuously re-invent our
business models to compete and stay
relevant.
We need to continuously innovate.
@christianposta
Innovation is admitting we donā€™t
have all the answers
Mark Schwartz ā€“ Former CIO USCIS
@christianposta
We need to figure out the right
questions to askā€¦
Mark Schwartz ā€“ Former CIO USCIS
@christianposta
How do we do this?
@christianposta
ā€¢ Identify goals
ā€¢ Free teams to explore possible solution spaces
ā€¢ Generate hypothesis
ā€¢ Design cheap experiments to test hypothesis
ā€¢ Work in small batches
ā€¢ Learn from results
ā€¢ Calibrate investment; rinse, repeat
ā€œIf I invest $5-$10M in your company and you fail, I have 30
other investments. Itā€™s just a footnote in my investment history.ā€
https://medium.com/@mattklein123/optimizing-impact-why-i-will-not-start-an-envoy-platform-company-8904286658cb
https://barryoreilly.com/2017/04/06/optimize-to-be-wrong-not-right/
Create options through experiments
@christianposta
Learning through build-measure-learn
Microservices help us go faster.
@christianposta
So do we microservices all the way down?
@christianposta
@christianposta
http://blog.hypeinnovation.com/using-the-three-horizons-framework-for-innovation
IT Portfolio management strategies
@christianposta
Lean Enterprise: http://shop.oreilly.com/product/0636920030355.do
@christianposta
http://blog.hypeinnovation.com/using-the-three-horizons-framework-for-innovation
IT Portfolio management
MVPs, experiments, small apps
(co-locate if you have to write an app)
Product development, initial scale
(co-locate perfectly okay here!! ..
Microserices? possiblyā€¦)
Starting to feel the weight of maintenance,
need to shoot for efficiencies, integrate
new approaches to increase revenue
(microservices land)
Microservices != good design
AND
Co-location != bad design
@christianposta
DONā€™T optimize for microservices ifā€¦
@christianposta
ā€¢ Youā€™re building a Minimum Viable Product (MVP), testing a
hypothesis
ā€¢ Youā€™re building a CRUD application
ā€¢ You system isnā€™t CRUD, but the business logic not very
complicated
ā€¢ Your system doesnā€™t have > 10 people all trying to
coordinate to work on it
ā€¢ Your application doesnā€™t need to scale
ā€¢ You deliver packaged software
ā€¢ Youā€™re building HPC systems
Making ā€œcloud-nativeā€ economical
@christianposta
We can now assert with confidence that
high IT performance correlates with
strong business performance, helping
to boost productivity, profitability and
market share.
@christianposta
https://puppet.com/resources/whitepaper/2014-state-devops-report
High performing IT teams
@christianposta
ā€¢ ā€¦are encouraged to experiment
ā€¢ ā€¦learn from failure
ā€¢ ā€¦work in small batches
ā€¢ ā€¦focus on getting continuous feedback
ā€¢ ā€¦are held to outcomes, not output
ā€¢ ā€¦continuously prioritize and reprioritize based on
cost of delay (http://blackswanfarming.com/cost-of-
delay/)
High performing IT teams need these
IT capabilities and practices
@christianposta
ā€¢ Continuous Integration (build from master)
ā€¢ Continuous Delivery (automated pipelines)
ā€¢ Safe, reliable delivery mechanisms
ā€¢ Modern, scalable, resilient application architectures
ā€¢ Self-service, on-demand infrastructure
ā€¢ Automated testing
ā€¢ Metrics, logs, traces, observability
ā€¢ Feedback loops
ā€¢ Security as part of the pipeline
@christianposta
https://www.infoq.com/articles/cloud-native-panel
"Cloud nativeā€ describes applications, architectures,
platforms/infrastructure, and processes, that together
make it economical to work to in small batches to learn
and reduce uncertainty.
ā€¢ Distributed configuration
ā€¢ Service Discovery
ā€¢ Loadbalancing
ā€¢ Circuit Breakers
ā€¢ Bulkheading
ā€¢ Versioning/Routing
ā€¢ Based on AWS
ā€œCloud-nativeā€ platform
What about non-java?
@christianposta
Kubernetes
@christianposta
Cluster management
ā€¢ Distributed configuration
ā€¢ Service Discovery
ā€¢ Loadbalancing
ā€¢ Versioning/Routing
ā€¢ Deployments
ā€¢ Scaling/Autoscaling
ā€¢ Liveness/Health checking
ā€¢ Self healing
ā€¢ Logging, Metrics, Tracing
@christianposta
@christianposta
ā€¢ Team self service application deployment
ā€¢ Developer workflow
ā€¢ Enterprise focused (LDAP, RBAC, Oauth, etc)
ā€¢ Integrated Docker registry
ā€¢ Jenkins Pipeline (CI/CD) out of the box
ā€¢ Build/deployment triggers
ā€¢ Software Defined Networking (SDN)
ā€¢ Docker native format/packaging
ā€¢ CLI/IDE/Web based tooling
OpenShift is a Kubernetes platform
@christianposta
@christianposta
@christianposta
@christianposta
@christianposta
ā€¢ Simple configuration
ā€¢ Curated dependencies and transitive
dependencies
ā€¢ Built in metrics, monitoring
ā€¢ Slim profile for deployment
ā€¢ Strong communities (spring, vert.x,
microprofile.io)
OpenShift Application Runtimes
Use Kubernetes/OpenShift
ā€¢ Distributed configuration
ā€¢ Service Discovery
ā€¢ Loadbalancing
ā€¢ Versioning/Routing
ā€¢ Deployments
ā€¢ Scaling/Autoscaling
ā€¢ Liveness/Health checking
ā€¢ Self healing
ā€¢ Logging, Metrics, Tracing
@christianposta
What if weā€™re already using
things like Spring Cloud and/or
Netflix OSS?!
@christianposta
spring-cloud-kubernetes
ā€¢ DiscoveryClient
ā€¢ Ribbon integration
ā€¢ Actuator/Health integrations
ā€¢ Hystrix/Turbine Dashboard integrations
(kubeflix)
ā€¢ Zipkin Tracing
ā€¢ Configuration via ConfigMaps
ā€¢ Archaius Bridge for dynamic configs
https://github.com/spring-cloud-incubator/spring-cloud-kubernetes
Microservices boundaries
@christianposta
@christianposta
Book checkout / purchase Title Search
Recommendations
Weekly reporting
@christianposta
@christianposta
ā€¢ Break things into smaller,
understandable models
ā€¢ Surround a model and its
ā€œcontextā€ with a boundary
ā€¢ Implement the model in code
or get a new model
ā€¢ Explicitly map between
different contexts
ā€¢ Model transactional
boundaries as aggregates
Focus on domain models, not data models
@christianposta
Service Cutter: A systemic approach to
service
decomposition
@christianposta
https://servicecutter.github.io
@christianposta
How do we share information?
ā€¢ REST, RPC
ā€¢ Streams/Events(ActiveMQ, JMS, AMQP, STOMP, Kafka,
etc)
ā€¢ Legacy (SOAP, mainframe, file processing, proprietary)
ā€¢ Routing, Aggregation, Splitting, Transactions,
Compensations, Filtering, etc.
@christianposta
ā€¢ Small Java library
ā€¢ 200+ components for integrating systems (bring along only
the ones you use)
ā€¢ Powerful EIPs (routing, transformation, error handling)
ā€¢ Distributed-systems swiss-army knife!
ā€¢ Declarative DSL
ā€¢ Embeddable into any JVM (EAP, Karaf, Tomcat, Spring
Boot, Dropwizard, Wildfly Swarm, no container, etc)
Apache Camel
@christianposta
@christianposta
public class OrderProcessorRouteBuilder extends RouteBuilder {
@Override
public void configure() throws Exception {
rest().post(ā€œ/order/socksā€)
.description(ā€œNew Order for pair of socksā€)
.consumes(ā€œapplication/jsonā€)
.route()
.to(ā€œactivemq:topic:newOrderā€)
.log(ā€œreceived new order ${body.orderId}ā€)
.to(ā€œibatis:storeOrder?statementType=Insertā€);
}
Camel REST DSL
@christianposta
Microservices resilience, routing,
control
@christianposta
Things you must solve for becauseā€¦
distributed systems
ā€¢ Service discovery
ā€¢ Retries
ā€¢ Timeouts
ā€¢ Load balancing
ā€¢ Rate limiting
ā€¢ Thread bulk heading
ā€¢ Circuit breaking
ā€¦continued
ā€¢ Routing between services (adaptive, zone-aware)
ā€¢ Deadlines
ā€¢ Back pressure
ā€¢ Outlier detection
ā€¢ Health checking
ā€¢ Traffic shaping
ā€¢ Request shadowing
ā€¦continued
ā€¢ Edge/DMZ routing
ā€¢ Surgical / fine / per-request routing
ā€¢ A/B rollout
ā€¢ Internal releases / dark launches
ā€¢ Fault injection
ā€¢ Stats, metric, collection
ā€¢ Logging
ā€¢ Tracing
@christianposta
http://bit.ly/application-networking
@christianposta
http://bit.ly/application-networking
@christianposta
http://bit.ly/application-networking
ā€¢ Netflix Hystrix (circuit breaking / bulk heading)
ā€¢ Netflix Zuul (edge router)
ā€¢ Netflix Ribbon (client-side service discovery / load balance)
ā€¢ Netflix Eureka (service discovery registry)
ā€¢ Brave / Zipkin (tracing)
ā€¢ Netflix spectator / atlas (metrics)
ā€œMicroservicesā€ patterns
@christianposta
@christianposta
http://bit.ly/application-networking
But Iā€™m using Spring!
ā€¢ spring-cloud-netflix-hystrix
ā€¢ spring-cloud-netflix-zuul
ā€¢ spring-cloud-netflix-eureka-client
ā€¢ spring-cloud-netflix-ribbon
ā€¢ spring-cloud-netflix-atlas
ā€¢ spring-cloud-netflix-spectator
ā€¢ spring-cloud-netflix-hystrix-stream
ā€¢ ā€¦..
ā€¢ ......
ā€¢ @Enable....150differentThings
But Iā€™m using Vert.x!
ā€¢ vertx-circuit-breaker
ā€¢ vertx-service-discovery
ā€¢ vertx-dropwizard-metrics
ā€¢ vertx-zipkin?
ā€¢ ā€¦..
ā€¢ ......
But Iā€™m using NodeJS!
But Iā€™m using Go!
But Iā€™m using Python!
Get the point?
@christianposta
https://lyft.github.io/envoy/
Meet Envoy Proxy
Sidecar pattern
Meet Istio Service Mesh
https://istio.io
Quick Demo
https://istio.io/docs/samples/bookinfo.html
ā€¢ Have self-service infrastructure automation?
ā€¢ Have self-service application automation?
ā€¢ Have working CI/CD?
ā€¢ Have health checking, monitoring,
instrumentation?
ā€¢ Have logging, distributed tracing?
ā€¢ Able to release services independently?
ā€¢ Honoring backward and forward
Are you doing microservices?
@christianposta
ā€¢ Number of features accepted
ā€¢ % of features completed
ā€¢ User satisfaction
ā€¢ Feature Cycle time
ā€¢ defects discovered after deployment
ā€¢ customer lifetime value (future profit as a result of relationship with the
customer) https://en.wikipedia.org/wiki/Customer_lifetime_value
ā€¢ revenue per feature
ā€¢ mean time to recovery
ā€¢ % improvement in SLA
ā€¢ number of changes
ā€¢ number of user complaints, recommendations, suggestions
ā€¢ % favorable rating in surveys
ā€¢ % of users using which features
ā€¢ % reduction in error rates
ā€¢ avg number of tx / user
ā€¢ MANY MORE!
Focus on going fast and learning
ā€¢ The hardest part of microservices? Your data
https://developers.redhat.com/blog/2016/08/02/the-hardest-part-about-microservices-your-data/
ā€¢ Microservices patterns:
circuit breaking with Envoy Proxy
https://developers.redhat.com/blog/2017/05/31/microservices-patterns-with-envoy-sidecar-proxy-
part-i-circuit-breaking/
ā€¢ Monolith to microservices Part I
https://developers.redhat.com/blog/2017/09/26/low-risk-monolith-microservice-evolution-part/
ā€¢ Monolith to microservices Part II
https://developers.redhat.com/blog/2017/10/23/low-risk-monolith-microservice-evolution-part-ii/
More material
@christianposta
ā€¢ Download and explore OpenShift
ā€¢ https://www.openshift.org/minishift/
ā€¢ Checkout Spring Boot/WildFlySwarm/Vert.x on
OpenShift:
ā€¢ https://launch.openshift.io
ā€¢ Reach out to your Red Hat rep to discuss more and/or
get me/my team involved with your initiatives
What next?
Thanks!
BTW: Hand drawn diagrams made with Paper by FiftyThree.com ļŠ@christianposta
Twitter: @christianposta
Blog: http://blog.christianposta.com
Email: christian@redhat.com
Slides: http://slideshare.net/ceposta
Follow up links:
ā€¢ http://openshift.io
ā€¢ http://launch.openshift.io
ā€¢ http://blog.openshift.com
ā€¢ http://developers.redhat.com/blog
ā€¢ https://www.redhat.com/en/open-innovation-labs
ā€¢ https://www.redhat.com/en/technologies/jboss-middleware/3scale
ā€¢ https://www.redhat.com/en/technologies/jboss-middleware/fuse

More Related Content

What's hot

How Apache Spark and Apache Hadoop are being used to keep banking regulators ...
How Apache Spark and Apache Hadoop are being used to keep banking regulators ...How Apache Spark and Apache Hadoop are being used to keep banking regulators ...
How Apache Spark and Apache Hadoop are being used to keep banking regulators ...DataWorks Summit
Ā 
Next Generation Enterprise Architecture
Next Generation Enterprise ArchitectureNext Generation Enterprise Architecture
Next Generation Enterprise ArchitectureMapR Technologies
Ā 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeAlex Thissen
Ā 
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...Mark Rittman
Ā 
SQL Server on Linux - march 2017
SQL Server on Linux - march 2017SQL Server on Linux - march 2017
SQL Server on Linux - march 2017Sorin Peste
Ā 
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...MSAdvAnalytics
Ā 
Modern Data Warehousing with the Microsoft Analytics Platform System
Modern Data Warehousing with the Microsoft Analytics Platform SystemModern Data Warehousing with the Microsoft Analytics Platform System
Modern Data Warehousing with the Microsoft Analytics Platform SystemJames Serra
Ā 
Enterprise Data Warehouse Optimization: 7 Keys to Success
Enterprise Data Warehouse Optimization: 7 Keys to SuccessEnterprise Data Warehouse Optimization: 7 Keys to Success
Enterprise Data Warehouse Optimization: 7 Keys to SuccessHortonworks
Ā 
Securing your Big Data Environments in the Cloud
Securing your Big Data Environments in the CloudSecuring your Big Data Environments in the Cloud
Securing your Big Data Environments in the CloudDataWorks Summit
Ā 
Cortana Analytics Suite
Cortana Analytics SuiteCortana Analytics Suite
Cortana Analytics SuiteJames Serra
Ā 
The Future of Data Warehousing, Data Science and Machine Learning
The Future of Data Warehousing, Data Science and Machine LearningThe Future of Data Warehousing, Data Science and Machine Learning
The Future of Data Warehousing, Data Science and Machine LearningModusOptimum
Ā 
McGraw-Hill Optimizes Analytics Workloads with Databricks
 McGraw-Hill Optimizes Analytics Workloads with Databricks McGraw-Hill Optimizes Analytics Workloads with Databricks
McGraw-Hill Optimizes Analytics Workloads with DatabricksAmazon Web Services
Ā 
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAmazon Web Services
Ā 
Modern Data Warehouse Overview
Modern Data Warehouse OverviewModern Data Warehouse Overview
Modern Data Warehouse OverviewJohn Chang
Ā 
Building the Data Lake with Azure Data Factory and Data Lake Analytics
Building the Data Lake with Azure Data Factory and Data Lake AnalyticsBuilding the Data Lake with Azure Data Factory and Data Lake Analytics
Building the Data Lake with Azure Data Factory and Data Lake AnalyticsKhalid Salama
Ā 
Still on IBM BigInsights? We have the right path for you
Still on IBM BigInsights? We have the right path for youStill on IBM BigInsights? We have the right path for you
Still on IBM BigInsights? We have the right path for youModusOptimum
Ā 
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud Cloudera Analytics and Machine Learning Platform - Optimized for Cloud
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud Stefan Lipp
Ā 
Scaling Data Science on Big Data
Scaling Data Science on Big DataScaling Data Science on Big Data
Scaling Data Science on Big DataDataWorks Summit
Ā 
Db2 event store
Db2 event storeDb2 event store
Db2 event storeModusOptimum
Ā 
The Practice of Big Data - The Hadoop ecosystem explained with usage scenarios
The Practice of Big Data - The Hadoop ecosystem explained with usage scenariosThe Practice of Big Data - The Hadoop ecosystem explained with usage scenarios
The Practice of Big Data - The Hadoop ecosystem explained with usage scenarioskcmallu
Ā 

What's hot (20)

How Apache Spark and Apache Hadoop are being used to keep banking regulators ...
How Apache Spark and Apache Hadoop are being used to keep banking regulators ...How Apache Spark and Apache Hadoop are being used to keep banking regulators ...
How Apache Spark and Apache Hadoop are being used to keep banking regulators ...
Ā 
Next Generation Enterprise Architecture
Next Generation Enterprise ArchitectureNext Generation Enterprise Architecture
Next Generation Enterprise Architecture
Ā 
Exploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscapeExploring microservices in a Microsoft landscape
Exploring microservices in a Microsoft landscape
Ā 
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
IlOUG Tech Days 2016 - Big Data for Oracle Developers - Towards Spark, Real-T...
Ā 
SQL Server on Linux - march 2017
SQL Server on Linux - march 2017SQL Server on Linux - march 2017
SQL Server on Linux - march 2017
Ā 
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...
Cortana Analytics Workshop: The "Big Data" of the Cortana Analytics Suite, Pa...
Ā 
Modern Data Warehousing with the Microsoft Analytics Platform System
Modern Data Warehousing with the Microsoft Analytics Platform SystemModern Data Warehousing with the Microsoft Analytics Platform System
Modern Data Warehousing with the Microsoft Analytics Platform System
Ā 
Enterprise Data Warehouse Optimization: 7 Keys to Success
Enterprise Data Warehouse Optimization: 7 Keys to SuccessEnterprise Data Warehouse Optimization: 7 Keys to Success
Enterprise Data Warehouse Optimization: 7 Keys to Success
Ā 
Securing your Big Data Environments in the Cloud
Securing your Big Data Environments in the CloudSecuring your Big Data Environments in the Cloud
Securing your Big Data Environments in the Cloud
Ā 
Cortana Analytics Suite
Cortana Analytics SuiteCortana Analytics Suite
Cortana Analytics Suite
Ā 
The Future of Data Warehousing, Data Science and Machine Learning
The Future of Data Warehousing, Data Science and Machine LearningThe Future of Data Warehousing, Data Science and Machine Learning
The Future of Data Warehousing, Data Science and Machine Learning
Ā 
McGraw-Hill Optimizes Analytics Workloads with Databricks
 McGraw-Hill Optimizes Analytics Workloads with Databricks McGraw-Hill Optimizes Analytics Workloads with Databricks
McGraw-Hill Optimizes Analytics Workloads with Databricks
Ā 
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWSAWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
AWS Cloud Kata 2013 | Singapore - Getting to Scale on AWS
Ā 
Modern Data Warehouse Overview
Modern Data Warehouse OverviewModern Data Warehouse Overview
Modern Data Warehouse Overview
Ā 
Building the Data Lake with Azure Data Factory and Data Lake Analytics
Building the Data Lake with Azure Data Factory and Data Lake AnalyticsBuilding the Data Lake with Azure Data Factory and Data Lake Analytics
Building the Data Lake with Azure Data Factory and Data Lake Analytics
Ā 
Still on IBM BigInsights? We have the right path for you
Still on IBM BigInsights? We have the right path for youStill on IBM BigInsights? We have the right path for you
Still on IBM BigInsights? We have the right path for you
Ā 
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud Cloudera Analytics and Machine Learning Platform - Optimized for Cloud
Cloudera Analytics and Machine Learning Platform - Optimized for Cloud
Ā 
Scaling Data Science on Big Data
Scaling Data Science on Big DataScaling Data Science on Big Data
Scaling Data Science on Big Data
Ā 
Db2 event store
Db2 event storeDb2 event store
Db2 event store
Ā 
The Practice of Big Data - The Hadoop ecosystem explained with usage scenarios
The Practice of Big Data - The Hadoop ecosystem explained with usage scenariosThe Practice of Big Data - The Hadoop ecosystem explained with usage scenarios
The Practice of Big Data - The Hadoop ecosystem explained with usage scenarios
Ā 

Similar to Sidecars and a Microservices Mesh

Microservices Journey Summer 2017
Microservices Journey Summer 2017Microservices Journey Summer 2017
Microservices Journey Summer 2017Christian Posta
Ā 
A microservices journey - Round 2
A microservices journey - Round 2A microservices journey - Round 2
A microservices journey - Round 2Christian Posta
Ā 
A Microservice Journey
A Microservice JourneyA Microservice Journey
A Microservice JourneyChristian Posta
Ā 
Microservices Journey NYC
Microservices Journey NYCMicroservices Journey NYC
Microservices Journey NYCChristian Posta
Ā 
Making sense of microservices, service mesh, and serverless
Making sense of microservices, service mesh, and serverlessMaking sense of microservices, service mesh, and serverless
Making sense of microservices, service mesh, and serverlessChristian Posta
Ā 
SOA to Microservices
SOA to MicroservicesSOA to Microservices
SOA to MicroservicesChristian Posta
Ā 
Lowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesLowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesChristian Posta
Ā 
The Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesThe Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesChristian Posta
Ā 
Evolution of integration and microservices patterns with service mesh
Evolution of integration and microservices patterns with service meshEvolution of integration and microservices patterns with service mesh
Evolution of integration and microservices patterns with service meshChristian Posta
Ā 
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...VMware Tanzu
Ā 
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...Christian Posta
Ā 
From Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtFrom Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtTechWell
Ā 
MicroServices for Java Developers
MicroServices for Java Developers MicroServices for Java Developers
MicroServices for Java Developers Red Hat Developers
Ā 
Microservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshMicroservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshChristian Posta
Ā 
An evolution of application networking: service mesh
An evolution of application networking: service meshAn evolution of application networking: service mesh
An evolution of application networking: service meshChristian Posta
Ā 
How to create awesome customer experiences
How to create awesome customer experiencesHow to create awesome customer experiences
How to create awesome customer experiencesMorgan Simonsen
Ā 
DevOps: What, who, why and how?
DevOps: What, who, why and how?DevOps: What, who, why and how?
DevOps: What, who, why and how?Red Gate Software
Ā 
I Love APIs 2015: Microservices at Amazon
I Love APIs 2015: Microservices at AmazonI Love APIs 2015: Microservices at Amazon
I Love APIs 2015: Microservices at AmazonApigee | Google Cloud
Ā 
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices Customer Sharing: Trend Micro - Trend Micro's DevOps Practices
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices Amazon Web Services
Ā 
Dashlane Mission Teams
Dashlane Mission TeamsDashlane Mission Teams
Dashlane Mission TeamsDashlane
Ā 

Similar to Sidecars and a Microservices Mesh (20)

Microservices Journey Summer 2017
Microservices Journey Summer 2017Microservices Journey Summer 2017
Microservices Journey Summer 2017
Ā 
A microservices journey - Round 2
A microservices journey - Round 2A microservices journey - Round 2
A microservices journey - Round 2
Ā 
A Microservice Journey
A Microservice JourneyA Microservice Journey
A Microservice Journey
Ā 
Microservices Journey NYC
Microservices Journey NYCMicroservices Journey NYC
Microservices Journey NYC
Ā 
Making sense of microservices, service mesh, and serverless
Making sense of microservices, service mesh, and serverlessMaking sense of microservices, service mesh, and serverless
Making sense of microservices, service mesh, and serverless
Ā 
SOA to Microservices
SOA to MicroservicesSOA to Microservices
SOA to Microservices
Ā 
Lowering the risk of monolith to microservices
Lowering the risk of monolith to microservicesLowering the risk of monolith to microservices
Lowering the risk of monolith to microservices
Ā 
The Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your ServicesThe Hardest Part of Microservices: Calling Your Services
The Hardest Part of Microservices: Calling Your Services
Ā 
Evolution of integration and microservices patterns with service mesh
Evolution of integration and microservices patterns with service meshEvolution of integration and microservices patterns with service mesh
Evolution of integration and microservices patterns with service mesh
Ā 
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...
Large-Scale Enterprise Platform Transformation with Microservices, DevOps, an...
Ā 
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
KubeCon NA 2018: Evolution of Integration and Microservices with Service Mesh...
Ā 
From Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical DebtFrom Monoliths to Services: Paying Your Technical Debt
From Monoliths to Services: Paying Your Technical Debt
Ā 
MicroServices for Java Developers
MicroServices for Java Developers MicroServices for Java Developers
MicroServices for Java Developers
Ā 
Microservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service meshMicroservices and Integration: what's next with Istio service mesh
Microservices and Integration: what's next with Istio service mesh
Ā 
An evolution of application networking: service mesh
An evolution of application networking: service meshAn evolution of application networking: service mesh
An evolution of application networking: service mesh
Ā 
How to create awesome customer experiences
How to create awesome customer experiencesHow to create awesome customer experiences
How to create awesome customer experiences
Ā 
DevOps: What, who, why and how?
DevOps: What, who, why and how?DevOps: What, who, why and how?
DevOps: What, who, why and how?
Ā 
I Love APIs 2015: Microservices at Amazon
I Love APIs 2015: Microservices at AmazonI Love APIs 2015: Microservices at Amazon
I Love APIs 2015: Microservices at Amazon
Ā 
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices Customer Sharing: Trend Micro - Trend Micro's DevOps Practices
Customer Sharing: Trend Micro - Trend Micro's DevOps Practices
Ā 
Dashlane Mission Teams
Dashlane Mission TeamsDashlane Mission Teams
Dashlane Mission Teams
Ā 

More from Red Hat Developers

DevNation Tech Talk: Getting GitOps
DevNation Tech Talk: Getting GitOpsDevNation Tech Talk: Getting GitOps
DevNation Tech Talk: Getting GitOpsRed Hat Developers
Ā 
Exploring the power of OpenTelemetry on Kubernetes
Exploring the power of OpenTelemetry on KubernetesExploring the power of OpenTelemetry on Kubernetes
Exploring the power of OpenTelemetry on KubernetesRed Hat Developers
Ā 
GitHub Makeover | DevNation Tech Talk
GitHub Makeover | DevNation Tech TalkGitHub Makeover | DevNation Tech Talk
GitHub Makeover | DevNation Tech TalkRed Hat Developers
Ā 
Quinoa: A modern Quarkus UI with no hassles | DevNation tech Talk
Quinoa: A modern Quarkus UI with no hassles | DevNation tech TalkQuinoa: A modern Quarkus UI with no hassles | DevNation tech Talk
Quinoa: A modern Quarkus UI with no hassles | DevNation tech TalkRed Hat Developers
Ā 
Extra micrometer practices with Quarkus | DevNation Tech Talk
Extra micrometer practices with Quarkus | DevNation Tech TalkExtra micrometer practices with Quarkus | DevNation Tech Talk
Extra micrometer practices with Quarkus | DevNation Tech TalkRed Hat Developers
Ā 
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...Red Hat Developers
Ā 
Integrating Loom in Quarkus | DevNation Tech Talk
Integrating Loom in Quarkus | DevNation Tech TalkIntegrating Loom in Quarkus | DevNation Tech Talk
Integrating Loom in Quarkus | DevNation Tech TalkRed Hat Developers
Ā 
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...Red Hat Developers
Ā 
Containers without docker | DevNation Tech Talk
Containers without docker | DevNation Tech TalkContainers without docker | DevNation Tech Talk
Containers without docker | DevNation Tech TalkRed Hat Developers
Ā 
Distributed deployment of microservices across multiple OpenShift clusters | ...
Distributed deployment of microservices across multiple OpenShift clusters | ...Distributed deployment of microservices across multiple OpenShift clusters | ...
Distributed deployment of microservices across multiple OpenShift clusters | ...Red Hat Developers
Ā 
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...Red Hat Developers
Ā 
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...Red Hat Developers
Ā 
11 CLI tools every developer should know | DevNation Tech Talk
11 CLI tools every developer should know | DevNation Tech Talk11 CLI tools every developer should know | DevNation Tech Talk
11 CLI tools every developer should know | DevNation Tech TalkRed Hat Developers
Ā 
A Microservices approach with Cassandra and Quarkus | DevNation Tech Talk
A Microservices approach with Cassandra and Quarkus | DevNation Tech TalkA Microservices approach with Cassandra and Quarkus | DevNation Tech Talk
A Microservices approach with Cassandra and Quarkus | DevNation Tech TalkRed Hat Developers
Ā 
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...Red Hat Developers
Ā 
To the moon and beyond with Java 17 APIs! | DevNation Tech Talk
To the moon and beyond with Java 17 APIs! | DevNation Tech TalkTo the moon and beyond with Java 17 APIs! | DevNation Tech Talk
To the moon and beyond with Java 17 APIs! | DevNation Tech TalkRed Hat Developers
Ā 
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...Red Hat Developers
Ā 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Red Hat Developers
Ā 
Kubernetes configuration and security policies with KubeLinter | DevNation Te...
Kubernetes configuration and security policies with KubeLinter | DevNation Te...Kubernetes configuration and security policies with KubeLinter | DevNation Te...
Kubernetes configuration and security policies with KubeLinter | DevNation Te...Red Hat Developers
Ā 
Level-up your gaming telemetry using Kafka Streams | DevNation Tech Talk
Level-up your gaming telemetry using Kafka Streams | DevNation Tech TalkLevel-up your gaming telemetry using Kafka Streams | DevNation Tech Talk
Level-up your gaming telemetry using Kafka Streams | DevNation Tech TalkRed Hat Developers
Ā 

More from Red Hat Developers (20)

DevNation Tech Talk: Getting GitOps
DevNation Tech Talk: Getting GitOpsDevNation Tech Talk: Getting GitOps
DevNation Tech Talk: Getting GitOps
Ā 
Exploring the power of OpenTelemetry on Kubernetes
Exploring the power of OpenTelemetry on KubernetesExploring the power of OpenTelemetry on Kubernetes
Exploring the power of OpenTelemetry on Kubernetes
Ā 
GitHub Makeover | DevNation Tech Talk
GitHub Makeover | DevNation Tech TalkGitHub Makeover | DevNation Tech Talk
GitHub Makeover | DevNation Tech Talk
Ā 
Quinoa: A modern Quarkus UI with no hassles | DevNation tech Talk
Quinoa: A modern Quarkus UI with no hassles | DevNation tech TalkQuinoa: A modern Quarkus UI with no hassles | DevNation tech Talk
Quinoa: A modern Quarkus UI with no hassles | DevNation tech Talk
Ā 
Extra micrometer practices with Quarkus | DevNation Tech Talk
Extra micrometer practices with Quarkus | DevNation Tech TalkExtra micrometer practices with Quarkus | DevNation Tech Talk
Extra micrometer practices with Quarkus | DevNation Tech Talk
Ā 
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...
Event-driven autoscaling through KEDA and Knative Integration | DevNation Tec...
Ā 
Integrating Loom in Quarkus | DevNation Tech Talk
Integrating Loom in Quarkus | DevNation Tech TalkIntegrating Loom in Quarkus | DevNation Tech Talk
Integrating Loom in Quarkus | DevNation Tech Talk
Ā 
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...
Quarkus Renarde šŸ¦Šā™„: an old-school Web framework with today's touch | DevNatio...
Ā 
Containers without docker | DevNation Tech Talk
Containers without docker | DevNation Tech TalkContainers without docker | DevNation Tech Talk
Containers without docker | DevNation Tech Talk
Ā 
Distributed deployment of microservices across multiple OpenShift clusters | ...
Distributed deployment of microservices across multiple OpenShift clusters | ...Distributed deployment of microservices across multiple OpenShift clusters | ...
Distributed deployment of microservices across multiple OpenShift clusters | ...
Ā 
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...
DevNation Workshop: Object detection with Red Hat OpenShift Data Science [Mar...
Ā 
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...
Dear security, compliance, and auditing: Weā€™re sorry. Love, DevOps | DevNatio...
Ā 
11 CLI tools every developer should know | DevNation Tech Talk
11 CLI tools every developer should know | DevNation Tech Talk11 CLI tools every developer should know | DevNation Tech Talk
11 CLI tools every developer should know | DevNation Tech Talk
Ā 
A Microservices approach with Cassandra and Quarkus | DevNation Tech Talk
A Microservices approach with Cassandra and Quarkus | DevNation Tech TalkA Microservices approach with Cassandra and Quarkus | DevNation Tech Talk
A Microservices approach with Cassandra and Quarkus | DevNation Tech Talk
Ā 
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...
GitHub Actions and OpenShift: ā€‹ā€‹Supercharging your software development loops...
Ā 
To the moon and beyond with Java 17 APIs! | DevNation Tech Talk
To the moon and beyond with Java 17 APIs! | DevNation Tech TalkTo the moon and beyond with Java 17 APIs! | DevNation Tech Talk
To the moon and beyond with Java 17 APIs! | DevNation Tech Talk
Ā 
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...
Profile your Java apps in production on Red Hat OpenShift with Cryostat | Dev...
Ā 
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Kafka at the Edge: an IoT scenario with OpenShift Streams for Apache Kafka | ...
Ā 
Kubernetes configuration and security policies with KubeLinter | DevNation Te...
Kubernetes configuration and security policies with KubeLinter | DevNation Te...Kubernetes configuration and security policies with KubeLinter | DevNation Te...
Kubernetes configuration and security policies with KubeLinter | DevNation Te...
Ā 
Level-up your gaming telemetry using Kafka Streams | DevNation Tech Talk
Level-up your gaming telemetry using Kafka Streams | DevNation Tech TalkLevel-up your gaming telemetry using Kafka Streams | DevNation Tech Talk
Level-up your gaming telemetry using Kafka Streams | DevNation Tech Talk
Ā 

Recently uploaded

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
Ā 
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·åŠžē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·umasea
Ā 
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...soniya singh
Ā 
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...OnePlan Solutions
Ā 
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024StefanoLambiase
Ā 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEOrtus Solutions, Corp
Ā 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxTier1 app
Ā 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
Ā 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
Ā 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Andreas Granig
Ā 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
Ā 
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdfGOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdfAlina Yurenko
Ā 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
Ā 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
Ā 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWave PLM
Ā 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
Ā 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
Ā 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
Ā 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
Ā 

Recently uploaded (20)

CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
Ā 
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·åŠžē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
办ē†å­¦ä½čƁ(UQę–‡å‡­čƁ书)ę˜†å£«å…°å¤§å­¦ęƕäøščÆęˆē»©å•åŽŸē‰ˆäø€ęØ”äø€ę ·
Ā 
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...
Russian Call Girls in Karol Bagh Aasnvi āž”ļø 8264348440 šŸ’‹šŸ“ž Independent Escort S...
Ā 
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...
Maximizing Efficiency and Profitability with OnePlanā€™s Professional Service A...
Ā 
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024
Dealing with Cultural Dispersion ā€” Stefano Lambiase ā€” ICSE-SEIS 2024
Ā 
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASEBATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
BATTLEFIELD ORM: TIPS, TACTICS AND STRATEGIES FOR CONQUERING YOUR DATABASE
Ā 
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptxKnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
KnowAPIs-UnknownPerf-jaxMainz-2024 (1).pptx
Ā 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
Ā 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
Ā 
Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024Automate your Kamailio Test Calls - Kamailio World 2024
Automate your Kamailio Test Calls - Kamailio World 2024
Ā 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Ā 
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdfGOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM ā€“ DEVOXX GREECE.pdf
Ā 
2.pdf Ejercicios de programaciĆ³n competitiva
2.pdf Ejercicios de programaciĆ³n competitiva2.pdf Ejercicios de programaciĆ³n competitiva
2.pdf Ejercicios de programaciĆ³n competitiva
Ā 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Ā 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
Ā 
What is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need ItWhat is Fashion PLM and Why Do You Need It
What is Fashion PLM and Why Do You Need It
Ā 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Ā 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
Ā 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
Ā 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
Ā 

Sidecars and a Microservices Mesh

  • 2. Christian Posta Chief Architect, cloud application development Twitter: @christianposta Blog: http://blog.christianposta.com Email: christian@redhat.com Slides: http://slideshare.net/ceposta ā€¢ Author ā€œMicroservices for Java developersā€ ā€¢ Committer/contributor lots of open-source projects ā€¢ Worked with large Microservices, web-scale, unicorn company ā€¢ Blogger, speaker about DevOps, integration, and microservices
  • 3.
  • 4. Rough path of discussions today ā€¢ Microservices: What, Why, When? ā€¢ ā€œCloud-nativeā€ with a Platform ā€¢ Microservices frameworks ā€¢ Service decomposition and boundaries ā€¢ Microservice resilience, routing, and control @christianposta
  • 6. ā€œThe microservice architectural style is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. These services are built around business capabilities and independently deployable by fully automated deployment machinery.ā€ A microservices definition
  • 7. ā€¢ Single, self-contained, autonomous ā€¢ Isolated and Resilient to faults ā€¢ Faster software delivery ā€¢ Own their own data ā€¢ Easier to understand individually ā€¢ Scalability ā€¢ Right technology for the problem ā€¢ Test individual services ā€¢ Individual deployments Microservices? @christianposta
  • 8. ā€¢ System complexity ā€¢ Operational complexity ā€¢ Testing is harder across services ā€¢ Security ā€¢ Hard to get boundaries right (transactions, APIs, etc) ā€¢ Resource overhead ā€¢ Network overhead ā€¢ Lack of tooling Drawbacks to microservices @christianposta
  • 9. Why would one implement a system as microservices? @christianposta
  • 10. Pain we may feelā€¦ @christianposta ā€¢ Making changes in one place negatively affects unrelated areas ā€¢ Low confidence making changes that donā€™t break things ā€¢ Spend lots of time trying to coordinate work between team members ā€¢ Structure in the application has eroded or is non- existant ā€¢ We have no way to quantify how long code merges will take
  • 11. @christianposta ā€¢ Development time is slow simply because the project is so big (IDE bogs down, running tests is slow, slow bootstrap time, etc) ā€¢ Changes to one module force changes across other modules ā€¢ Difficult to sunset outdated technology ā€¢ Weā€™ve built our new applications around old premises like batch processing ā€¢ Application steps on itself at runtime managing resources, allocations, computations Pain we may feelā€¦
  • 12. Microservices is about optimizing for speed. @christianposta
  • 13. If change is happening on the outside faster than on the inside the end is in sight. S&P company life expectancy @christianposta Jack Welch, former CEO, GE
  • 14. Fortune 500 firms in 1955 vs. 2014; 88% are gone @christianposta
  • 15. Competitive advantage is transient. We need to continuously re-invent our business models to compete and stay relevant. We need to continuously innovate. @christianposta
  • 16. Innovation is admitting we donā€™t have all the answers Mark Schwartz ā€“ Former CIO USCIS @christianposta
  • 17. We need to figure out the right questions to askā€¦ Mark Schwartz ā€“ Former CIO USCIS @christianposta
  • 18. How do we do this? @christianposta ā€¢ Identify goals ā€¢ Free teams to explore possible solution spaces ā€¢ Generate hypothesis ā€¢ Design cheap experiments to test hypothesis ā€¢ Work in small batches ā€¢ Learn from results ā€¢ Calibrate investment; rinse, repeat
  • 19. ā€œIf I invest $5-$10M in your company and you fail, I have 30 other investments. Itā€™s just a footnote in my investment history.ā€ https://medium.com/@mattklein123/optimizing-impact-why-i-will-not-start-an-envoy-platform-company-8904286658cb https://barryoreilly.com/2017/04/06/optimize-to-be-wrong-not-right/ Create options through experiments
  • 21. Microservices help us go faster. @christianposta
  • 22. So do we microservices all the way down? @christianposta
  • 25. @christianposta http://blog.hypeinnovation.com/using-the-three-horizons-framework-for-innovation IT Portfolio management MVPs, experiments, small apps (co-locate if you have to write an app) Product development, initial scale (co-locate perfectly okay here!! .. Microserices? possiblyā€¦) Starting to feel the weight of maintenance, need to shoot for efficiencies, integrate new approaches to increase revenue (microservices land)
  • 26. Microservices != good design AND Co-location != bad design @christianposta
  • 27. DONā€™T optimize for microservices ifā€¦ @christianposta ā€¢ Youā€™re building a Minimum Viable Product (MVP), testing a hypothesis ā€¢ Youā€™re building a CRUD application ā€¢ You system isnā€™t CRUD, but the business logic not very complicated ā€¢ Your system doesnā€™t have > 10 people all trying to coordinate to work on it ā€¢ Your application doesnā€™t need to scale ā€¢ You deliver packaged software ā€¢ Youā€™re building HPC systems
  • 29. We can now assert with confidence that high IT performance correlates with strong business performance, helping to boost productivity, profitability and market share. @christianposta https://puppet.com/resources/whitepaper/2014-state-devops-report
  • 30. High performing IT teams @christianposta ā€¢ ā€¦are encouraged to experiment ā€¢ ā€¦learn from failure ā€¢ ā€¦work in small batches ā€¢ ā€¦focus on getting continuous feedback ā€¢ ā€¦are held to outcomes, not output ā€¢ ā€¦continuously prioritize and reprioritize based on cost of delay (http://blackswanfarming.com/cost-of- delay/)
  • 31. High performing IT teams need these IT capabilities and practices @christianposta ā€¢ Continuous Integration (build from master) ā€¢ Continuous Delivery (automated pipelines) ā€¢ Safe, reliable delivery mechanisms ā€¢ Modern, scalable, resilient application architectures ā€¢ Self-service, on-demand infrastructure ā€¢ Automated testing ā€¢ Metrics, logs, traces, observability ā€¢ Feedback loops ā€¢ Security as part of the pipeline
  • 32. @christianposta https://www.infoq.com/articles/cloud-native-panel "Cloud nativeā€ describes applications, architectures, platforms/infrastructure, and processes, that together make it economical to work to in small batches to learn and reduce uncertainty.
  • 33. ā€¢ Distributed configuration ā€¢ Service Discovery ā€¢ Loadbalancing ā€¢ Circuit Breakers ā€¢ Bulkheading ā€¢ Versioning/Routing ā€¢ Based on AWS ā€œCloud-nativeā€ platform What about non-java? @christianposta
  • 35. Cluster management ā€¢ Distributed configuration ā€¢ Service Discovery ā€¢ Loadbalancing ā€¢ Versioning/Routing ā€¢ Deployments ā€¢ Scaling/Autoscaling ā€¢ Liveness/Health checking ā€¢ Self healing ā€¢ Logging, Metrics, Tracing @christianposta
  • 37. ā€¢ Team self service application deployment ā€¢ Developer workflow ā€¢ Enterprise focused (LDAP, RBAC, Oauth, etc) ā€¢ Integrated Docker registry ā€¢ Jenkins Pipeline (CI/CD) out of the box ā€¢ Build/deployment triggers ā€¢ Software Defined Networking (SDN) ā€¢ Docker native format/packaging ā€¢ CLI/IDE/Web based tooling OpenShift is a Kubernetes platform @christianposta
  • 38.
  • 42. @christianposta ā€¢ Simple configuration ā€¢ Curated dependencies and transitive dependencies ā€¢ Built in metrics, monitoring ā€¢ Slim profile for deployment ā€¢ Strong communities (spring, vert.x, microprofile.io) OpenShift Application Runtimes
  • 43. Use Kubernetes/OpenShift ā€¢ Distributed configuration ā€¢ Service Discovery ā€¢ Loadbalancing ā€¢ Versioning/Routing ā€¢ Deployments ā€¢ Scaling/Autoscaling ā€¢ Liveness/Health checking ā€¢ Self healing ā€¢ Logging, Metrics, Tracing @christianposta
  • 44. What if weā€™re already using things like Spring Cloud and/or Netflix OSS?! @christianposta
  • 45. spring-cloud-kubernetes ā€¢ DiscoveryClient ā€¢ Ribbon integration ā€¢ Actuator/Health integrations ā€¢ Hystrix/Turbine Dashboard integrations (kubeflix) ā€¢ Zipkin Tracing ā€¢ Configuration via ConfigMaps ā€¢ Archaius Bridge for dynamic configs https://github.com/spring-cloud-incubator/spring-cloud-kubernetes
  • 47.
  • 49. Book checkout / purchase Title Search Recommendations Weekly reporting @christianposta
  • 51. ā€¢ Break things into smaller, understandable models ā€¢ Surround a model and its ā€œcontextā€ with a boundary ā€¢ Implement the model in code or get a new model ā€¢ Explicitly map between different contexts ā€¢ Model transactional boundaries as aggregates Focus on domain models, not data models @christianposta
  • 52. Service Cutter: A systemic approach to service decomposition @christianposta https://servicecutter.github.io
  • 54. How do we share information? ā€¢ REST, RPC ā€¢ Streams/Events(ActiveMQ, JMS, AMQP, STOMP, Kafka, etc) ā€¢ Legacy (SOAP, mainframe, file processing, proprietary) ā€¢ Routing, Aggregation, Splitting, Transactions, Compensations, Filtering, etc. @christianposta
  • 55. ā€¢ Small Java library ā€¢ 200+ components for integrating systems (bring along only the ones you use) ā€¢ Powerful EIPs (routing, transformation, error handling) ā€¢ Distributed-systems swiss-army knife! ā€¢ Declarative DSL ā€¢ Embeddable into any JVM (EAP, Karaf, Tomcat, Spring Boot, Dropwizard, Wildfly Swarm, no container, etc) Apache Camel @christianposta
  • 57. public class OrderProcessorRouteBuilder extends RouteBuilder { @Override public void configure() throws Exception { rest().post(ā€œ/order/socksā€) .description(ā€œNew Order for pair of socksā€) .consumes(ā€œapplication/jsonā€) .route() .to(ā€œactivemq:topic:newOrderā€) .log(ā€œreceived new order ${body.orderId}ā€) .to(ā€œibatis:storeOrder?statementType=Insertā€); } Camel REST DSL @christianposta
  • 59. Things you must solve for becauseā€¦ distributed systems ā€¢ Service discovery ā€¢ Retries ā€¢ Timeouts ā€¢ Load balancing ā€¢ Rate limiting ā€¢ Thread bulk heading ā€¢ Circuit breaking
  • 60. ā€¦continued ā€¢ Routing between services (adaptive, zone-aware) ā€¢ Deadlines ā€¢ Back pressure ā€¢ Outlier detection ā€¢ Health checking ā€¢ Traffic shaping ā€¢ Request shadowing
  • 61. ā€¦continued ā€¢ Edge/DMZ routing ā€¢ Surgical / fine / per-request routing ā€¢ A/B rollout ā€¢ Internal releases / dark launches ā€¢ Fault injection ā€¢ Stats, metric, collection ā€¢ Logging ā€¢ Tracing
  • 65. ā€¢ Netflix Hystrix (circuit breaking / bulk heading) ā€¢ Netflix Zuul (edge router) ā€¢ Netflix Ribbon (client-side service discovery / load balance) ā€¢ Netflix Eureka (service discovery registry) ā€¢ Brave / Zipkin (tracing) ā€¢ Netflix spectator / atlas (metrics) ā€œMicroservicesā€ patterns @christianposta
  • 67. But Iā€™m using Spring! ā€¢ spring-cloud-netflix-hystrix ā€¢ spring-cloud-netflix-zuul ā€¢ spring-cloud-netflix-eureka-client ā€¢ spring-cloud-netflix-ribbon ā€¢ spring-cloud-netflix-atlas ā€¢ spring-cloud-netflix-spectator ā€¢ spring-cloud-netflix-hystrix-stream ā€¢ ā€¦.. ā€¢ ...... ā€¢ @Enable....150differentThings
  • 68. But Iā€™m using Vert.x! ā€¢ vertx-circuit-breaker ā€¢ vertx-service-discovery ā€¢ vertx-dropwizard-metrics ā€¢ vertx-zipkin? ā€¢ ā€¦.. ā€¢ ......
  • 69. But Iā€™m using NodeJS! But Iā€™m using Go! But Iā€™m using Python!
  • 73.
  • 74. Meet Istio Service Mesh https://istio.io
  • 76. ā€¢ Have self-service infrastructure automation? ā€¢ Have self-service application automation? ā€¢ Have working CI/CD? ā€¢ Have health checking, monitoring, instrumentation? ā€¢ Have logging, distributed tracing? ā€¢ Able to release services independently? ā€¢ Honoring backward and forward Are you doing microservices? @christianposta
  • 77. ā€¢ Number of features accepted ā€¢ % of features completed ā€¢ User satisfaction ā€¢ Feature Cycle time ā€¢ defects discovered after deployment ā€¢ customer lifetime value (future profit as a result of relationship with the customer) https://en.wikipedia.org/wiki/Customer_lifetime_value ā€¢ revenue per feature ā€¢ mean time to recovery ā€¢ % improvement in SLA ā€¢ number of changes ā€¢ number of user complaints, recommendations, suggestions ā€¢ % favorable rating in surveys ā€¢ % of users using which features ā€¢ % reduction in error rates ā€¢ avg number of tx / user ā€¢ MANY MORE! Focus on going fast and learning
  • 78. ā€¢ The hardest part of microservices? Your data https://developers.redhat.com/blog/2016/08/02/the-hardest-part-about-microservices-your-data/ ā€¢ Microservices patterns: circuit breaking with Envoy Proxy https://developers.redhat.com/blog/2017/05/31/microservices-patterns-with-envoy-sidecar-proxy- part-i-circuit-breaking/ ā€¢ Monolith to microservices Part I https://developers.redhat.com/blog/2017/09/26/low-risk-monolith-microservice-evolution-part/ ā€¢ Monolith to microservices Part II https://developers.redhat.com/blog/2017/10/23/low-risk-monolith-microservice-evolution-part-ii/ More material @christianposta
  • 79. ā€¢ Download and explore OpenShift ā€¢ https://www.openshift.org/minishift/ ā€¢ Checkout Spring Boot/WildFlySwarm/Vert.x on OpenShift: ā€¢ https://launch.openshift.io ā€¢ Reach out to your Red Hat rep to discuss more and/or get me/my team involved with your initiatives What next?
  • 80.
  • 81. Thanks! BTW: Hand drawn diagrams made with Paper by FiftyThree.com ļŠ@christianposta Twitter: @christianposta Blog: http://blog.christianposta.com Email: christian@redhat.com Slides: http://slideshare.net/ceposta Follow up links: ā€¢ http://openshift.io ā€¢ http://launch.openshift.io ā€¢ http://blog.openshift.com ā€¢ http://developers.redhat.com/blog ā€¢ https://www.redhat.com/en/open-innovation-labs ā€¢ https://www.redhat.com/en/technologies/jboss-middleware/3scale ā€¢ https://www.redhat.com/en/technologies/jboss-middleware/fuse