Utilising messaging in cloud deployments isn't straightforward, particularly if you want to take advantage of auto scaling. This talk covers the general problems of scaling for cloud deployments, and messaging for faster inter-service communication for Microservices
This document discusses achieving horizontal scaling for enterprise messaging using Fabric8. It provides an introduction to Fabric8 and enterprise messaging concepts. It then describes how Fabric8MQ, which is built on Vert.x, provides horizontal scaling and load balancing for ActiveMQ by implementing features like protocol conversion, Camel routing, API management, multiplexing, and destination sharding across Kubernetes pods and nodes. The document concludes with a demo of Fabric8MQ's capabilities.
This document provides an overview of connecting applications with Red Hat JBoss A-MQ. It discusses key features of message-oriented middleware including robustness, time and location independence, latency hiding, scalability, and event-driven communication. It describes messaging concepts like message channels, routing with selectors and wildcards, delivery modes, and features of message brokers. The document focuses on Apache ActiveMQ, covering its use, protocols, persistence storage options, high availability, broker networks, and integration with Apache Camel. It discusses use cases for messaging like the Internet of Things and provides an IoT demo overview using Arduino.
Presented at the CloudStack Silicon Valley User Group in September 2015 at Nuage Networks. Discussed impact of containers, emerging software defined networking platforms, NFV, IPv6 and performance.
This document provides an overview and agenda for a presentation on Apache ActiveMQ 5.9.x and Apache Apollo. The presentation will cover new features in ActiveMQ 5.9.x including AMQP 1.0 support, REST management, a new default file-based store using LevelDB, and high availability replication of the store. It will also introduce Apache Apollo and allow for a question and discussion period.
Load Balancing for Containers and Cloud Native ArchitectureChiradeep Vittal
Introduces micro services and the importance of load balancing for micro services architecture. Explores NetScaler CPX - a containerized NetScaler and integration with Kubernetes, Docker and Apache Mesos
Kafka Summit SF 2017 - Kafka and the Polyglot Programmerconfluent
An Overview of the Kafka clients ecosystem. APIs – wire protocol clients – higher level clients (Streams) – REST Languages (with simple snippets – full examples in GitHub) – the most developed clients – Java and C/C++ – the librdkafka wrappers node-rdkafka, python, GO, C# – why use wrappers Shell scripted Kafka ( e.g. custom health checks) kafkacat Platform gotchas (e.g. SASL on Win32)
Presented at Kafka Summit SF 2017 by Edoardo Comar and Andrew Schofield, IBM
This document discusses achieving horizontal scaling for enterprise messaging using Fabric8. It provides an introduction to Fabric8 and enterprise messaging concepts. It then describes how Fabric8MQ, which is built on Vert.x, provides horizontal scaling and load balancing for ActiveMQ by implementing features like protocol conversion, Camel routing, API management, multiplexing, and destination sharding across Kubernetes pods and nodes. The document concludes with a demo of Fabric8MQ's capabilities.
This document provides an overview of connecting applications with Red Hat JBoss A-MQ. It discusses key features of message-oriented middleware including robustness, time and location independence, latency hiding, scalability, and event-driven communication. It describes messaging concepts like message channels, routing with selectors and wildcards, delivery modes, and features of message brokers. The document focuses on Apache ActiveMQ, covering its use, protocols, persistence storage options, high availability, broker networks, and integration with Apache Camel. It discusses use cases for messaging like the Internet of Things and provides an IoT demo overview using Arduino.
Presented at the CloudStack Silicon Valley User Group in September 2015 at Nuage Networks. Discussed impact of containers, emerging software defined networking platforms, NFV, IPv6 and performance.
This document provides an overview and agenda for a presentation on Apache ActiveMQ 5.9.x and Apache Apollo. The presentation will cover new features in ActiveMQ 5.9.x including AMQP 1.0 support, REST management, a new default file-based store using LevelDB, and high availability replication of the store. It will also introduce Apache Apollo and allow for a question and discussion period.
Load Balancing for Containers and Cloud Native ArchitectureChiradeep Vittal
Introduces micro services and the importance of load balancing for micro services architecture. Explores NetScaler CPX - a containerized NetScaler and integration with Kubernetes, Docker and Apache Mesos
Kafka Summit SF 2017 - Kafka and the Polyglot Programmerconfluent
An Overview of the Kafka clients ecosystem. APIs – wire protocol clients – higher level clients (Streams) – REST Languages (with simple snippets – full examples in GitHub) – the most developed clients – Java and C/C++ – the librdkafka wrappers node-rdkafka, python, GO, C# – why use wrappers Shell scripted Kafka ( e.g. custom health checks) kafkacat Platform gotchas (e.g. SASL on Win32)
Presented at Kafka Summit SF 2017 by Edoardo Comar and Andrew Schofield, IBM
Protecting your data at rest with Apache Kafka by Confluent and Vormetricconfluent
This document discusses securing Apache Kafka deployments with Vormetric and Confluent Platform. It begins with an introduction to Apache Kafka and Confluent Platform. It then provides an overview of Vormetric's policy-driven security solution and how it can be used to encrypt Kafka data at rest. The document outlines the typical Confluent Platform deployment architecture and various security considerations, such as authentication, authorization, and data encryption. Finally, it provides steps for implementing secure deployments using SSL, Kerberos, and Vormetric encryption policies.
This presentation from the I Love APIs conference makes the case for why Node and Docker are great together for implementing Microservice architecture. It also provides an quick orientation for getting started with Docker Machine, Node, and Mongo with container linking and data volume containers.
Currently, most businesses are already using or plan to use different forms of cloud services. This creates a demand in ability to move complex workloads between the clouds with high uptime and zero data loss. One of the ways to gain this and keep the applications running is to use containers live migration between different physical servers or even data centers. Usually you have to repack and rebuild containers with your workloads every time you are moving an application from one cloud or data center to another. The challenge, that needs overcoming here, is to make this migration maximally smooth and highly automated. Find out how some of the main DevOps issues can be solved leveraging the live migration option and what bottlenecks can be faced.
Nodeconf Barcelona 2015 presentation exploring several ways of building microservices in an asynchronous way. Presented the concept of a broker as an alternative to a multiple point-to-point architecture.
Load Balancing for Containers and Cloud Native ArchitectureChiradeep Vittal
This document discusses how load balancing needs have changed with the rise of containers and microservices. Traditional load balancers are not well-suited for dynamic container environments where services and topology frequently change. New approaches are needed like integrating load balancers with container orchestration platforms, using client-side load balancing, and leveraging load balancers for advanced patterns like zero-downtime deployments, circuit breaking, visibility and security segmentation. Load balancers are playing an increasingly important role in cloud native architectures.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/29ZQmIx.
Adrian Cockcroft discusses success/failure stories of adopting microservices, overviews what’s next with microservices and presents some of the techniques that have led to successful deployments. Filmed at qconnewyork.com.
Adrian Cockcroft works at Battery where he advises the firm and its portfolio companies about technology issues and also assists with deal sourcing and due diligence. He was a founding member of eBay Research Labs, developing advanced mobile applications and even building his own homebrew phone, years before iPhone and Android launched.
Kafka Summit SF 2017 - Best Practices for Running Kafka on Docker Containersconfluent
This document discusses best practices for running Apache Kafka on Docker containers. It describes how to design Kafka deployments using Docker to provide portability, elasticity, and multi-tenancy. Key considerations include allocating appropriate resources to different roles like brokers and Zookeepers, enabling auto-configuration, and providing security and network isolation. The document outlines an implementation using Dockerfiles, configurations, and orchestration to deploy multi-node Kafka clusters across multiple hosts.
Jelastic provides an advanced DevOps PaaS with Docker containers support, easy cloud management and flexible quotas system to help service providers to unleash the full potential of containers.
This document discusses using microservices with Kafka. It describes how Kafka can be used to connect microservices for asynchronous communication. It outlines various features of Kafka like high throughput, replication, partitioning, and how it can provide reliability. Examples are given of how microservices could use Kafka for logging, filtering messages, and dispatching to different topics. Performance benefits of Kafka are highlighted like scalability and ability to handle high volumes of messages.
Building Stream Infrastructure across Multiple Data Centers with Apache KafkaGuozhang Wang
To manage the ever-increasing volume and velocity of data within your company, you have successfully made the transition from single machines and one-off solutions to large distributed stream infrastructures in your data center, powered by Apache Kafka. But what if one data center is not enough? I will describe building resilient data pipelines with Apache Kafka that span multiple data centers and points of presence, and provide an overview of best practices and common patterns while covering key areas such as architecture guidelines, data replication, and mirroring as well as disaster scenarios and failure handling.
This document discusses microservices and OSGi services running with Apache Karaf. It covers some of the operational overhead and complexity of microservices compared to using OSGi microservices (μServices) with Apache Karaf. Key points include reduced operational overhead and skills requirements, built-in support for versioning and distributed capabilities with OSGi μServices in Apache Karaf. Continuous delivery techniques like using Jolokia for deployment and Apache Karaf Cellar for clustering are also mentioned.
This document provides an agenda and overview for a presentation on Apache Camel essential components. The presentation is given by Christian Posta from Red Hat on January 23, 2013. The agenda includes an introduction to Camel, a discussion of components, and time for questions. An overview of FuseSource/Red Hat is given, noting the acquisition of FuseSource by Red Hat in 2012. Details are provided on the speaker and their background. The document focuses on introducing some of the most widely used and essential Camel components, including File, Bean, Log, JMS, CXF, and Mock. Configuration options and examples of using each component are summarized.
Kafka's basic terminologies, its architecture, its protocol and how it works.
Kafka at scale, its caveats, guarantees and use cases offered by it.
How we use it @ZaprMediaLabs.
NFV workloads pose challenges for IIAS providers. Learn how hardware performance enhancements (DPA&EPA) by Intel, integrated with virtualization providers, can be an NFV enabler, and how advanced orchestration by TOSCA and Cloudify can put the right VNF on the right hardware and coordinate complex deployments.
In this webinar, we review the benefits of deploying a microservices architecture with Cassandra as your backbone in order to ensure your applications become incredibly reliable. We discuss in detail:
- How to create microservices in Node.js with ExpressJs and Seneca
- Tuning the Node.js driver for Cassandra: error handling, load balancing and degrees of parallelism
- Additional best practices to ensure your systems are highly performant and available
The sample service is available on GitHub: https://github.com/jorgebay/killr-service
Developing Enterprise Applications for the Cloud,from Monolith to MicroservicesDavid Currie
Presented at IBM InterConnect 2105. Is your next enterprise application ready for the cloud? Do you know how to build the kind of low-latency, highly available, highly scalable, omni-channel, micro-service modern-day application that customers expect? This introductory presentation will cover what it takes to build such an application using the multiple language runtimes and composing services offered on IBM Bluemix cloud.
The document provides an introduction and overview of Apache Kafka presented by Jeff Holoman. It begins with an agenda and background on the presenter. It then covers basic Kafka concepts like topics, partitions, producers, consumers and consumer groups. It discusses efficiency and delivery guarantees. Finally, it presents some use cases for Kafka and positioning around when it may or may not be a good fit compared to other technologies.
Service meshes are all the buzz in cloud-native world.
How come only yesterday we didn't know such a thing existed and now everybody seems to want one?
If you're already running a microservice-based system or only starting out with one — you may be asking yourself: "Do I also need a mesh?"
In this session we'll try to answer what the mesh is good for, what problems it solves, what new questions it poses.
More specifically we will:
explore the SMI Spec;
understand why everybody wants a mesh;
see how the mesh helps with progressive delivery;
discuss if it's time for you to get into the mesh.
RedisConf17 - Explosion of Data at the Edge in EquinixRedis Labs
This document discusses Equinix's plans to implement a microservices architecture and edge caching capabilities for their DCIM platform. The new architecture aims to address challenges from Equinix's large, global, and heterogeneous infrastructure by breaking the application into independent, containerized microservices. This will improve scalability, performance, fault tolerance, and deployments. The architecture will leverage edge processing by caching data and services at local data centers to reduce latency and enable offline functionality.
Message queuing connects systems and components loosely by allowing them to exchange data and information asynchronously without being directly connected or aware of each other. It is ideal for cloud applications as it provides loose coupling between systems, making individual systems less likely to suffer outages when another system changes or has issues. The document discusses the history and benefits of message queuing including AMQP, which provides an open standard to enable interoperability between messaging systems.
Protecting your data at rest with Apache Kafka by Confluent and Vormetricconfluent
This document discusses securing Apache Kafka deployments with Vormetric and Confluent Platform. It begins with an introduction to Apache Kafka and Confluent Platform. It then provides an overview of Vormetric's policy-driven security solution and how it can be used to encrypt Kafka data at rest. The document outlines the typical Confluent Platform deployment architecture and various security considerations, such as authentication, authorization, and data encryption. Finally, it provides steps for implementing secure deployments using SSL, Kerberos, and Vormetric encryption policies.
This presentation from the I Love APIs conference makes the case for why Node and Docker are great together for implementing Microservice architecture. It also provides an quick orientation for getting started with Docker Machine, Node, and Mongo with container linking and data volume containers.
Currently, most businesses are already using or plan to use different forms of cloud services. This creates a demand in ability to move complex workloads between the clouds with high uptime and zero data loss. One of the ways to gain this and keep the applications running is to use containers live migration between different physical servers or even data centers. Usually you have to repack and rebuild containers with your workloads every time you are moving an application from one cloud or data center to another. The challenge, that needs overcoming here, is to make this migration maximally smooth and highly automated. Find out how some of the main DevOps issues can be solved leveraging the live migration option and what bottlenecks can be faced.
Nodeconf Barcelona 2015 presentation exploring several ways of building microservices in an asynchronous way. Presented the concept of a broker as an alternative to a multiple point-to-point architecture.
Load Balancing for Containers and Cloud Native ArchitectureChiradeep Vittal
This document discusses how load balancing needs have changed with the rise of containers and microservices. Traditional load balancers are not well-suited for dynamic container environments where services and topology frequently change. New approaches are needed like integrating load balancers with container orchestration platforms, using client-side load balancing, and leveraging load balancers for advanced patterns like zero-downtime deployments, circuit breaking, visibility and security segmentation. Load balancers are playing an increasingly important role in cloud native architectures.
Video and slides synchronized, mp3 and slide download available at URL http://bit.ly/29ZQmIx.
Adrian Cockcroft discusses success/failure stories of adopting microservices, overviews what’s next with microservices and presents some of the techniques that have led to successful deployments. Filmed at qconnewyork.com.
Adrian Cockcroft works at Battery where he advises the firm and its portfolio companies about technology issues and also assists with deal sourcing and due diligence. He was a founding member of eBay Research Labs, developing advanced mobile applications and even building his own homebrew phone, years before iPhone and Android launched.
Kafka Summit SF 2017 - Best Practices for Running Kafka on Docker Containersconfluent
This document discusses best practices for running Apache Kafka on Docker containers. It describes how to design Kafka deployments using Docker to provide portability, elasticity, and multi-tenancy. Key considerations include allocating appropriate resources to different roles like brokers and Zookeepers, enabling auto-configuration, and providing security and network isolation. The document outlines an implementation using Dockerfiles, configurations, and orchestration to deploy multi-node Kafka clusters across multiple hosts.
Jelastic provides an advanced DevOps PaaS with Docker containers support, easy cloud management and flexible quotas system to help service providers to unleash the full potential of containers.
This document discusses using microservices with Kafka. It describes how Kafka can be used to connect microservices for asynchronous communication. It outlines various features of Kafka like high throughput, replication, partitioning, and how it can provide reliability. Examples are given of how microservices could use Kafka for logging, filtering messages, and dispatching to different topics. Performance benefits of Kafka are highlighted like scalability and ability to handle high volumes of messages.
Building Stream Infrastructure across Multiple Data Centers with Apache KafkaGuozhang Wang
To manage the ever-increasing volume and velocity of data within your company, you have successfully made the transition from single machines and one-off solutions to large distributed stream infrastructures in your data center, powered by Apache Kafka. But what if one data center is not enough? I will describe building resilient data pipelines with Apache Kafka that span multiple data centers and points of presence, and provide an overview of best practices and common patterns while covering key areas such as architecture guidelines, data replication, and mirroring as well as disaster scenarios and failure handling.
This document discusses microservices and OSGi services running with Apache Karaf. It covers some of the operational overhead and complexity of microservices compared to using OSGi microservices (μServices) with Apache Karaf. Key points include reduced operational overhead and skills requirements, built-in support for versioning and distributed capabilities with OSGi μServices in Apache Karaf. Continuous delivery techniques like using Jolokia for deployment and Apache Karaf Cellar for clustering are also mentioned.
This document provides an agenda and overview for a presentation on Apache Camel essential components. The presentation is given by Christian Posta from Red Hat on January 23, 2013. The agenda includes an introduction to Camel, a discussion of components, and time for questions. An overview of FuseSource/Red Hat is given, noting the acquisition of FuseSource by Red Hat in 2012. Details are provided on the speaker and their background. The document focuses on introducing some of the most widely used and essential Camel components, including File, Bean, Log, JMS, CXF, and Mock. Configuration options and examples of using each component are summarized.
Kafka's basic terminologies, its architecture, its protocol and how it works.
Kafka at scale, its caveats, guarantees and use cases offered by it.
How we use it @ZaprMediaLabs.
NFV workloads pose challenges for IIAS providers. Learn how hardware performance enhancements (DPA&EPA) by Intel, integrated with virtualization providers, can be an NFV enabler, and how advanced orchestration by TOSCA and Cloudify can put the right VNF on the right hardware and coordinate complex deployments.
In this webinar, we review the benefits of deploying a microservices architecture with Cassandra as your backbone in order to ensure your applications become incredibly reliable. We discuss in detail:
- How to create microservices in Node.js with ExpressJs and Seneca
- Tuning the Node.js driver for Cassandra: error handling, load balancing and degrees of parallelism
- Additional best practices to ensure your systems are highly performant and available
The sample service is available on GitHub: https://github.com/jorgebay/killr-service
Developing Enterprise Applications for the Cloud,from Monolith to MicroservicesDavid Currie
Presented at IBM InterConnect 2105. Is your next enterprise application ready for the cloud? Do you know how to build the kind of low-latency, highly available, highly scalable, omni-channel, micro-service modern-day application that customers expect? This introductory presentation will cover what it takes to build such an application using the multiple language runtimes and composing services offered on IBM Bluemix cloud.
The document provides an introduction and overview of Apache Kafka presented by Jeff Holoman. It begins with an agenda and background on the presenter. It then covers basic Kafka concepts like topics, partitions, producers, consumers and consumer groups. It discusses efficiency and delivery guarantees. Finally, it presents some use cases for Kafka and positioning around when it may or may not be a good fit compared to other technologies.
Service meshes are all the buzz in cloud-native world.
How come only yesterday we didn't know such a thing existed and now everybody seems to want one?
If you're already running a microservice-based system or only starting out with one — you may be asking yourself: "Do I also need a mesh?"
In this session we'll try to answer what the mesh is good for, what problems it solves, what new questions it poses.
More specifically we will:
explore the SMI Spec;
understand why everybody wants a mesh;
see how the mesh helps with progressive delivery;
discuss if it's time for you to get into the mesh.
RedisConf17 - Explosion of Data at the Edge in EquinixRedis Labs
This document discusses Equinix's plans to implement a microservices architecture and edge caching capabilities for their DCIM platform. The new architecture aims to address challenges from Equinix's large, global, and heterogeneous infrastructure by breaking the application into independent, containerized microservices. This will improve scalability, performance, fault tolerance, and deployments. The architecture will leverage edge processing by caching data and services at local data centers to reduce latency and enable offline functionality.
Message queuing connects systems and components loosely by allowing them to exchange data and information asynchronously without being directly connected or aware of each other. It is ideal for cloud applications as it provides loose coupling between systems, making individual systems less likely to suffer outages when another system changes or has issues. The document discusses the history and benefits of message queuing including AMQP, which provides an open standard to enable interoperability between messaging systems.
Cloud Computing - Everything you wanted to know!Debasish Patra
Cloud computing provides on-demand access to shared computing resources like networks, servers, storage, applications and services available over the internet. It allows users and businesses to access these resources as needed without having to manage physical infrastructure themselves. The average internet user was one of the early major adopters of cloud computing without realizing it through services like email, photo storage, and social media. Cloud computing is here to stay due to benefits like agility, scalability, lower costs and simplifying software deployment for businesses of all sizes.
Heb je ook een onderbuik gevoel dat er iets mis is als mensen praten over microservices? Alsof je verplicht bent services te bouwen van hooguit enkele regels code, die expliciet autonoom en los inzetbaar zijn, en altijd via REST moeten communiceren? Iedereen zegt dat je deployment goed op orde moet hebben, omdat dit anders een nachtmerrie wordt, maar niemand geeft een oplossing. In deze sessie geven we je een andere kijk op microservices en hoe je dit ook kunt implementeren binnen je bestaande architectuur.
C* Summit 2013: CMB: An Open Message Bus for the Cloud by Boris WolfDataStax Academy
CQS and CNS are message bus services for the cloud that are API compatible with AWS SQS and SNS. They use Cassandra for persistence and Redis for caching to provide scalability, high availability, and low latency. Extensive testing showed CQS can scale linearly to over 15,000 messages per second and CNS can handle thousands of messages per second with end-to-end latencies under 100ms. The services are in production use at Comcast to power applications like their X1 Sports app.
Introduction to Akka - Atlanta Java Users GroupRoy Russo
This document provides an introduction and overview of Akka, an open-source toolkit for building concurrent, distributed, and fault-tolerant applications on the JVM. It discusses the benefits of the actor model for concurrency, key Akka concepts including actors, messages, dispatchers, and supervision. It provides examples of actor definitions and message passing. The document aims to explain when and why Akka would be useful for building reactive and scalable applications.
CQS and CNS are open source alternatives to Amazon SQS and SNS developed by Comcast to meet their requirements of compatibility with AWS, active-active multi-datacenter support, horizontal scalability, guaranteed delivery, and very low latency. CQS uses Cassandra for persistence and Redis for caching queue metadata and payloads to achieve high performance. CNS uses CQS and scales by distributing publishing and delivery work across multiple servers. The services have been open sourced and Comcast is seeking feedback on integrating them with OpenStack.
Apache Camel journey with Microservices, lessons learned and utilisation of Fabric8 to make Docker, Kubernetes and OpenShift easy for developers to use
Cassandra Community Webinar: CMB - An Open Message Bus for the CloudDataStax
At Comcast Silicon Valley we have developed a general purpose message bus for the cloud. The service is API compatible with Amazon’s SQS/SNS and is built on Cassandra and Redis with the goal of linear horizontal scalability. In this Webinar we will explore the architecture of the system and how we employ Cassandra as a central component to meet key requirements. We will also take a look at the latest performance numbers.
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)Red Hat Developers
Red Hat JBoss Fuse integration services delivers cloud-based integration based on OpenShift by Red Hat to deliver continuous delivery of tested, production-ready integration solutions. Utilizing a drag and drop, code-free UI and combining that with the integration power of Apache Camel, Fuse integration services is the next generation iPaaS. In this session, we'll walk you through why iPaaS is important, the current Fuse integration services roadmap, and the innovation happening in open source community projects to make this a reality.
Summer School 2013 - What is iPaaS and why it is importantWSO2
iPaaS (Integration Platform as a Service) is a cloud service that enables integration between applications both on-premises and in the cloud without having to write code. It provides pre-built connectors, data mapping capabilities, integration flow orchestration, and tools for managing the integration lifecycle. While iPaaS can help with integration challenges, issues around security, vendor lock-in, and regulatory compliance still need to be addressed. WSO2 envisions their iPaaS providing multi-tenancy, a connector catalog, an IDE, and integration with their AppFactory for application lifecycle management.
Build a Cloud Day presentation about Fuse Fabric technology in the cloud and how integration projects / architectures can be designed top of cloudstack, openstack, amazon, ...
One of the most fundamental challenges of CI/CD is the ability to balance between Quality, Time, and Cost. Amazon EC2 Container Service (ECS), along with Docker and Amazon EC2 Container Registry (ECR), has changed the game for many by making resource management very simple. For Okta, it has enabled the Continuous Integration team to maximize throughput while minimizing cost. In this session we will show you how Okta has created a flexible CI system with ECS, Docker, ECR, AWS Lambda, AWS CloudFormation, Amazon RDS, and Amazon SQS. Okta runs 30,000 tests with each developer commit, and releases 10,000 new lines of code each week to production. The CI system, built 100% on AWS, must be able to handle load while keeping cost under control. This talk is oriented toward developers looking to achieve efficient resource and cost management without compromising speed or quality.
The document discusses the challenges of handling massive online traffic for a company's quarterly sales promotions, including spikes up to 80,000 concurrent users per second. It proposes an elastic infrastructure solution on Amazon Web Services that uses load balancers, auto-scaling web and application servers, RabbitMQ queues to moderate traffic, and Redis for caching to dynamically expand capacity as needed during promotions and contract it afterwards. The architecture aims to efficiently queue and process high volumes of traffic while providing a scalable and available system.
"Containers, DevOps, Microservices and Kafka: Tools used by our Monolith wrec...New Relic
"Containers, DevOps, Microservices and Kafka: Tools used by our Monolith wrecking crew."
Speakers: Jonathan Owens, Senior Site Reliability Engineer and Jose Fernandez, Lead Software Engineer, New Relic
MuCon 2015 - Microservices in Integration ArchitectureKim Clark
The document discusses integration architecture in a microservices world. It begins by defining integration architecture as how data and functions are shared between applications. It then discusses challenges with large enterprise landscapes that have undergone mergers and acquisitions. The document outlines different types of integration architectures like external, enterprise, batch-based, and event-based integration. It also discusses common misconceptions around microservices, such as thinking microservices refer to exposed APIs rather than application components. The summary concludes by noting debates around the differences between microservices and service-oriented architecture (SOA).
Webinar: iPaaS in the Enterprise - What to Look for in a Cloud Integration Pl...SnapLogic
The document discusses iPaaS and cloud integration platforms. It describes Xactly's use of SnapLogic for integrating various SaaS applications like Salesforce, Workday and NetSuite OpenAir. Xactly needed a platform to create a single view of customers across different systems and apps. SnapLogic provided ease of use, flexibility and a cloud-based architecture. The presentation also demonstrates SnapLogic's elastic integration capabilities and how it can integrate big data in Hadoop.
There is a renaissance underway in the messaging space. Due to the demands of IoT networks, cloud native apps, and microservices developers are looking for simple, fast, messaging systems. This is a sharp contrast to how traditional messaging was done.
This webinar will cover:
- The basics of messaging patterns
- What makes NATS unique
- Using a demo inspired by Pokemon Go as an example
Developing real-time data pipelines with Spring and Kafkamarius_bogoevici
Talk given at the Apache Kafka NYC Meetup, October 20, 2015.
http://www.meetup.com/Apache-Kafka-NYC/events/225697500/
Kafka has emerged as a clear choice for a high-throughput, low latency messaging system that addresses the needs of high-performance streaming applications. The Spring Framework has been, in the last decade, the de-facto standard for developing enterprise Java applications, providing a simple and powerful programming model that allows developers to focus on the business needs, leaving the boilerplate and middleware integration to the framework itself. In fact, it has evolved into a rich and powerful ecosystem, with projects focusing on specific aspects of enterprise software development - like Spring Boot, Spring Data, Spring Integration, Spring XD, Spring Cloud Stream/Data Flow to name just a few.
In this presentation, Marius Bogoevici from the Spring team will take the perspective of the Kafka user, and show, with live demos, how the various projects in the Spring ecosystem address their needs:
- how to build simple data integration applications using Spring Integration Kafka;
- how to build sophisticated data pipelines with Spring XD and Kafka;
- how to build cloud native message-driven microservices using Spring Cloud Stream and Kafka, and how to orchestrate them using Spring Cloud Data Flow;
Velocity Conference '13: Asynchronous messaging for performance optimization,...Al Sargent
How do Google, Twitter, and Instagram ensure fast application performance at scale? One technique is asynchronous messaging using RabbitMQ to prevent application bottlenecks. In this session, we’ll cover common asynchronous messaging patterns and how to implement them in RabbitMQ, common pitfalls to avoid, and how to cluster RabbitMQ for increased scalability and reliability.
This document discusses various message queue technologies including RabbitMQ, ZeroMQ, cloud-based options like Azure Service Bus and Amazon SQS/SNS, and the lightweight NATS system. It provides overviews of each technology, highlighting key features, protocols, and use cases. Examples and code demos are shown for RabbitMQ and ZeroMQ. The document aims to help readers understand different message queue options and pick the most suitable one based on their distributed system and cloud hosting needs.
Scale changes everything. Number of connections and destinations went from dozen to thousands, number of messages increased by order of magnitude. What once was quite adequate for enterprise messaging can't scale to support "Internet of Things". We need new protocols, patterns and architectures to support this new world. This session will start with basic introduction to the concept of Internet of things. Next it will discuss general technical challenges involved with the concept and explain why it is becoming mainstream now. Now we're ready to start talking about solutions. We will introduce some messaging patterns (like telemetry and command/control) and protocols (such as MQTT and AMQP) used in these scenarios. Finally we will see how Apache ActiveMQ is gearing up for this race. We will show tips for horizontal and vertical scaling of the broker, related projects that can help with deployments and what the future development road map looks like.
HiveMQ Webinar: Lightweight and scalable IoT Messaging with MQTTDominik Obermaier
In this webinar HiveMQ CTO Dominik Obermaier will cover everything you need to know about creating a lightweight and scalable IoT message architecture. He will discuss the open source projects you need to deploy and manage an MQTT based IoT architecture.
Don't miss your chance to learn about HiveMQ and the concept of MQTT!
The recording of this webinar is available on Youtube:
Lightweight and Scalable IoT Messaging with MQTTHiveMQ
MQTT is the de-facto protocol for the Internet of Things (IoT).
This webinar covers everything you need to know about scalable pub/sub communication with MQTT for up to millions of devices and shows the available software options in the (open source) ecosystem.
About the Speaker.
Dominik Obermaier is CTO and co-founder of HiveMQ. He is a member of the OASIS Technical Committee and is part of the standardization committee for MQTT 3.1.1 and MQTT 5. He is the co-author of the book 'The Technical Foundations of IoT' and a frequent speaker on IoT, MQTT, and messaging.
To watch the webinar recording: https://www.hivemq.com/webinars/lightweight-and-scalable-iot-messaging-with-mqtt/
MQTT is by far the most popular Internet of Things protocol used in the largest professional IoT deployments worldwide. The protocol is so simple and versatile, that it can be used for private home automation projects as well as ultra-secure and highly scalable enterprise installations. This talk will show how a pure Java and open source technology stack can be used for IoT devices as well as backend applications for building next-generation IoT projects.
MQTT is a lightweight publish/subscribe messaging protocol that is ideal for constrained environments like sensors and mobile devices. It was invented in 1999 by IBM employees Dr. Andy Stanford-Clark and Arlen Nipper. MQTT uses a broker-based messaging model with a publish/subscribe pattern, and supports three qualities of service. It has been widely adopted in applications involving sensors, mobile devices, and the Internet of Things.
LF_DPDK17_OpenNetVM: A high-performance NFV platforms to meet future communic...LF_DPDK
This document discusses software-based networking and network function virtualization (NFV). It introduces NetVM, an NFV platform developed by the author that provides high performance packet delivery across virtual machines using DPDK for zero-copy networking. NetVM enables complex network services to be distributed across multiple VMs while maintaining high throughput. The author also discusses OpenNetVM, an open source version of NetVM, and contributions like Flurries that enable unique network functions to run per flow for improved scalability. NFVnice, a userspace framework for scheduling NFV chains, is also introduced to improve throughput, fairness and CPU utilization.
This document discusses running IBM MQ in cloud environments. It begins with an overview of cloud options like IaaS, PaaS, CaaS and FaaS and considerations for which type of cloud is suitable for different MQ workloads. It then discusses IBM messaging solutions like MQ, MessageHub and MQ Light. The document covers running MQ in different cloud architectures like containers and virtual machines. It addresses topics like deploying and installing MQ, persisting data, availability, monitoring, security and cloud ingress/egress. Poll questions are included to gauge audience cloud usage.
WSO2Con USA 2015: An Introduction to the WSO2 Integration PlatformWSO2
This document introduces the WSO2 integration platform, including the key components of WSO2 ESB, WSO2 DSS, and WSO2 BPS. It describes the features and capabilities of each component, such as the ESB's support for various protocols, connectors, and integration patterns. It also provides overviews of recent releases, including new features in versions 4.9 and 4.10 of WSO2 ESB. Finally, it introduces the next generation WSO2 Gateway as an ultra high performance integration runtime.
Let's learn about :
What is RabbitMQ ?
Why RabbitMQ ?
RabbitMQ vs Kafka ? Which one is suitable for your purpose.
Advantages of RabbitMQ
Support By RabbitMQ
RabbitMQ is one part of Message Broker that implemented Advance Message Queue Protocol (AMQP), that help your application to communicate each other, when you extends your application scale.
Session on CloudStack, intended for new users to CloudStack, provides an overview to varied audience levels information on usages, use cases, deployment and its architecture.
Scale changes everything. What once was quite adequate for enterprise messaging can't scale to support "Internet of Things". We need new protocols, patterns and architectures to support this new world. This session will start with basic introduction to the concept of Internet of Things. Next it will discuss general technical challenges involved with the concept and explain why it is becoming mainstream now. Now we’re ready to start talking about solutions. We will introduce some messaging patterns (like telemetry and command/control) and protocols (such as MQTT and AMQP) used in these scenarios. Finally we will see how Apache ActiveMQ is gearing up for this race. We will show tips for horizontal and vertical scaling of the broker, related projects that can help with deployments and what the future development road map looks like.
Martyn Taylor is a senior software engineer at Red Hat, with over 7 years’ experience working on cloud, middleware and messaging software. Martyn currently works on the Apache ActiveMQ suite of projects.
The presentation discusses iDirect's Evolution product line including the iDX 1.0 satellite router, X3 router, and line cards. Key features highlighted are DVB-S2/ACM technology for improved bandwidth efficiency, integration with the X3 satellite router, and software tools for monitoring and adjusting ACM performance. Benefits of iDirect's DVB-S2/ACM implementation include increased throughput and bandwidth savings while easing network configuration.
This document discusses Apache Kafka and message queuing systems. It provides an overview of Kafka, including how producers and consumers work, and details on topics, partitions, and Zookeeper. It then discusses performance, production issues, and what improvements are planned for future Kafka releases. The document also reviews the Kafka community and integrations with other technologies.
Overview for RabbitMQ with AMQP protocol and a discussion for the AMQP model with message properties and publish and consume message
types of exchange
main properties of the queue
Instant chat, videoconferencing, voice calling, file transfer, desktop sharing, and web conferencing are all part of the latest set of unified communication and collaboration (UCC) tools, which can significantly reduce communication and collaboration costs. And your WLAN should understand all these different traffic flows, report on call quality, support high-definition data transfer for video, and more. Hear about best practices for app-level configuration and learn how to get your Aruba WLAN ready for Microsoft Skype for Business, and several other enterprise and commercial grade UCC apps.
CoLab session 1 deployment best practices and architectureChristina Inge
The document discusses deployment best practices and architecture for next generation communications solutions. It recommends adopting a software-defined architecture that is interoperable, resilient to failures, and focuses on communications enablement. The session state server provides a modern and scalable presence solution with load sharing and redundancy. Deployment models include single or multi-server clusters to support different customer needs depending on size and locations. AudioCodes gateways help connect TDM networks to SIP applications, and stand-alone survivability provides call continuity in emergencies.
This document discusses using multicast QUIC for scalable internet broadcasting of video content by organizations like the BBC. It notes that on-demand viewing is increasing but linear viewing still accounts for 15% of content consumption. Broadcasting large live events over the internet poses challenges due to rising bandwidth costs. The document proposes using multicast QUIC to allow common transport and application protocols for both unicast and multicast delivery, reducing costs through more efficient use of network resources. Key aspects discussed are IP multicast, QUIC, and using HTTP and HTTP Alternative Services for service discovery and session management across delivery modes.
Building Scalable & Reliable MQTT Clients for Enterprise ComputingHiveMQ
This webinar looks at the different computing and deployment models for MQTT clients. It will also explore how you can build reliable and scalable MQTT client services for sharing data between different enterprise backend systems.
The HiveMQ MQTT client is a high-performance Java client library with support for different API styles and back-pressure support. Developers can use HiveMQ MQTT clients for creating embedded, mobile, desktop, and even backend MQTT clients.
The webinar is presented by Silvio Giebl, core developer of HiveMQ MQTT Client, and Clive Jevons, an independent consultant, who has used the HiveMQ MQTT Client to build connected car platforms.
About the Speakers.
Silvio Giebl. Software Developer at HiveMQ. Developer and Maintainer of the HiveMQ MQTT Client. Distributed and scalable systems. High performance and reactive applications.
Clive Jevons. Independent Consultant at Jevons IT. Used the HiveMQ MQTT Client to integrate it in a connected car platform. Was involved in the development of the HiveMQ MQTT Client.
To watch a webinar: https://www.hivemq.com/webinars/building-scalable-and-reliable-mqtt-clients-for-enterprise-computing/
Similar to Messaging For the Cloud and Microservices (20)
Enterprise Resource Planning System includes various modules that reduce any business's workload. Additionally, it organizes the workflows, which drives towards enhancing productivity. Here are a detailed explanation of the ERP modules. Going through the points will help you understand how the software is changing the work dynamics.
To know more details here: https://blogs.nyggs.com/nyggs/enterprise-resource-planning-erp-system-modules/
E-commerce Application Development Company.pdfHornet Dynamics
Your business can reach new heights with our assistance as we design solutions that are specifically appropriate for your goals and vision. Our eCommerce application solutions can digitally coordinate all retail operations processes to meet the demands of the marketplace while maintaining business continuity.
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppGoogle
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
👉👉 Click Here To Get More Info 👇👇
https://sumonreview.com/ai-fusion-buddy-review
AI Fusion Buddy Review: Key Features
✅Create Stunning AI App Suite Fully Powered By Google's Latest AI technology, Gemini
✅Use Gemini to Build high-converting Converting Sales Video Scripts, ad copies, Trending Articles, blogs, etc.100% unique!
✅Create Ultra-HD graphics with a single keyword or phrase that commands 10x eyeballs!
✅Fully automated AI articles bulk generation!
✅Auto-post or schedule stunning AI content across all your accounts at once—WordPress, Facebook, LinkedIn, Blogger, and more.
✅With one keyword or URL, generate complete websites, landing pages, and more…
✅Automatically create & sell AI content, graphics, websites, landing pages, & all that gets you paid non-stop 24*7.
✅Pre-built High-Converting 100+ website Templates and 2000+ graphic templates logos, banners, and thumbnail images in Trending Niches.
✅Say goodbye to wasting time logging into multiple Chat GPT & AI Apps once & for all!
✅Save over $5000 per year and kick out dependency on third parties completely!
✅Brand New App: Not available anywhere else!
✅ Beginner-friendly!
✅ZERO upfront cost or any extra expenses
✅Risk-Free: 30-Day Money-Back Guarantee!
✅Commercial License included!
See My Other Reviews Article:
(1) AI Genie Review: https://sumonreview.com/ai-genie-review
(2) SocioWave Review: https://sumonreview.com/sociowave-review
(3) AI Partner & Profit Review: https://sumonreview.com/ai-partner-profit-review
(4) AI Ebook Suite Review: https://sumonreview.com/ai-ebook-suite-review
#AIFusionBuddyReview,
#AIFusionBuddyFeatures,
#AIFusionBuddyPricing,
#AIFusionBuddyProsandCons,
#AIFusionBuddyTutorial,
#AIFusionBuddyUserExperience
#AIFusionBuddyforBeginners,
#AIFusionBuddyBenefits,
#AIFusionBuddyComparison,
#AIFusionBuddyInstallation,
#AIFusionBuddyRefundPolicy,
#AIFusionBuddyDemo,
#AIFusionBuddyMaintenanceFees,
#AIFusionBuddyNewbieFriendly,
#WhatIsAIFusionBuddy?,
#HowDoesAIFusionBuddyWorks
What is Augmented Reality Image Trackingpavan998932
Augmented Reality (AR) Image Tracking is a technology that enables AR applications to recognize and track images in the real world, overlaying digital content onto them. This enhances the user's interaction with their environment by providing additional information and interactive elements directly tied to physical images.
DDS Security Version 1.2 was adopted in 2024. This revision strengthens support for long runnings systems adding new cryptographic algorithms, certificate revocation, and hardness against DoS attacks.
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeAftab Hussain
Understanding variable roles in code has been found to be helpful by students
in learning programming -- could variable roles help deep neural models in
performing coding tasks? We do an exploratory study.
- These are slides of the talk given at InteNSE'23: The 1st International Workshop on Interpretability and Robustness in Neural Software Engineering, co-located with the 45th International Conference on Software Engineering, ICSE 2023, Melbourne Australia
Transform Your Communication with Cloud-Based IVR SolutionsTheSMSPoint
Discover the power of Cloud-Based IVR Solutions to streamline communication processes. Embrace scalability and cost-efficiency while enhancing customer experiences with features like automated call routing and voice recognition. Accessible from anywhere, these solutions integrate seamlessly with existing systems, providing real-time analytics for continuous improvement. Revolutionize your communication strategy today with Cloud-Based IVR Solutions. Learn more at: https://thesmspoint.com/channel/cloud-telephony
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
Introducing Crescat - Event Management Software for Venues, Festivals and Eve...Crescat
Crescat is industry-trusted event management software, built by event professionals for event professionals. Founded in 2017, we have three key products tailored for the live event industry.
Crescat Event for concert promoters and event agencies. Crescat Venue for music venues, conference centers, wedding venues, concert halls and more. And Crescat Festival for festivals, conferences and complex events.
With a wide range of popular features such as event scheduling, shift management, volunteer and crew coordination, artist booking and much more, Crescat is designed for customisation and ease-of-use.
Over 125,000 events have been planned in Crescat and with hundreds of customers of all shapes and sizes, from boutique event agencies through to international concert promoters, Crescat is rigged for success. What's more, we highly value feedback from our users and we are constantly improving our software with updates, new features and improvements.
If you plan events, run a venue or produce festivals and you're looking for ways to make your life easier, then we have a solution for you. Try our software for free or schedule a no-obligation demo with one of our product specialists today at crescat.io
Mobile App Development Company In Noida | Drona InfotechDrona Infotech
Looking for a reliable mobile app development company in Noida? Look no further than Drona Infotech. We specialize in creating customized apps for your business needs.
Visit Us For : https://www.dronainfotech.com/mobile-application-development/
OpenMetadata Community Meeting - 5th June 2024OpenMetadata
The OpenMetadata Community Meeting was held on June 5th, 2024. In this meeting, we discussed about the data quality capabilities that are integrated with the Incident Manager, providing a complete solution to handle your data observability needs. Watch the end-to-end demo of the data quality features.
* How to run your own data quality framework
* What is the performance impact of running data quality frameworks
* How to run the test cases in your own ETL pipelines
* How the Incident Manager is integrated
* Get notified with alerts when test cases fail
Watch the meeting recording here - https://www.youtube.com/watch?v=UbNOje0kf6E
May Marketo Masterclass, London MUG May 22 2024.pdfAdele Miller
Can't make Adobe Summit in Vegas? No sweat because the EMEA Marketo Engage Champions are coming to London to share their Summit sessions, insights and more!
This is a MUG with a twist you don't want to miss.
Utilocate offers a comprehensive solution for locate ticket management by automating and streamlining the entire process. By integrating with Geospatial Information Systems (GIS), it provides accurate mapping and visualization of utility locations, enhancing decision-making and reducing the risk of errors. The system's advanced data analytics tools help identify trends, predict potential issues, and optimize resource allocation, making the locate ticket management process smarter and more efficient. Additionally, automated ticket management ensures consistency and reduces human error, while real-time notifications keep all relevant personnel informed and ready to respond promptly.
The system's ability to streamline workflows and automate ticket routing significantly reduces the time taken to process each ticket, making the process faster and more efficient. Mobile access allows field technicians to update ticket information on the go, ensuring that the latest information is always available and accelerating the locate process. Overall, Utilocate not only enhances the efficiency and accuracy of locate ticket management but also improves safety by minimizing the risk of utility damage through precise and timely locates.
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Łukasz Chruściel
No one wants their application to drag like a car stuck in the slow lane! Yet it’s all too common to encounter bumpy, pothole-filled solutions that slow the speed of any application. Symfony apps are not an exception.
In this talk, I will take you for a spin around the performance racetrack. We’ll explore common pitfalls - those hidden potholes on your application that can cause unexpected slowdowns. Learn how to spot these performance bumps early, and more importantly, how to navigate around them to keep your application running at top speed.
We will focus in particular on tuning your engine at the application level, making the right adjustments to ensure that your system responds like a well-oiled, high-performance race car.
UI5con 2024 - Boost Your Development Experience with UI5 Tooling ExtensionsPeter Muessig
The UI5 tooling is the development and build tooling of UI5. It is built in a modular and extensible way so that it can be easily extended by your needs. This session will showcase various tooling extensions which can boost your development experience by far so that you can really work offline, transpile your code in your project to use even newer versions of EcmaScript (than 2022 which is supported right now by the UI5 tooling), consume any npm package of your choice in your project, using different kind of proxies, and even stitching UI5 projects during development together to mimic your target environment.
2. RED HAT | Fabric8 Rocks!2
Rob Davies
• Director of Middleware Engineering
for xPaaS
• Over 20 years experience of
developing large scale solutions for
telcos and finance
• Creator of ActiveMQ and ServiceMix
• Committer on open source projects,
including fabric8, Apache Camel and
other stuff …
3. RED HAT | Fabric8 Rocks!3
All singing, all dancing scalable
messaging for the cloud
AND …
Messaging for Microservices
4. RED HAT | Fabric8 Rocks!4
Why do we use messaging ?
• Robustness to change
• Time independence
• Hide latency
• Event driven
• Platform and language
independence
Broker
Message in
Message out after
enrichment by Process B
Process C
Process B
Process A
Queue:Foo
Queue:Bar
5. RED HAT | Fabric8 Rocks!5
Traditional Enterprise Message brokers
• Designed to support
many different
messaging patterns
• highly available
• Support clustering
• Support store and
forward
• But – are usually
very static in nature
6. RED HAT | Fabric8 Rocks!6
Core Messaging Patterns …
7. RED HAT | Fabric8 Rocks!7
Requestor
Core Message Pattern: Request/Reply
Servic
e
8. RED HAT | Fabric8 Rocks!8
Producer
Core Message Pattern: Queue
Consumer
Consumer
Consumer
9. RED HAT | Fabric8 Rocks!9
Core Message Pattern: Publish/Subscribe
Consumer
Consumer
Consumer
Producer
10. RED HAT | Fabric8 Rocks!10
Message Channels and Filters
11. RED HAT | Fabric8 Rocks!11
Message Routing: Selectors
Producer Destination
Consumer
Color = red
Consumer
Color =
blue
13. RED HAT | Fabric8 Rocks!13
Message Groups
Producer
Consumer
Consumer
Consumer
Queue:Prices
Message message = session.createTextMessage(“Hi DWP”);
message.setStringProperty("JMSXGroupID", ”JavaRocks");
producer.send(message);
14. RED HAT | Fabric8 Rocks!14
Scaling Messaging –
the traditional way …
15. RED HAT | Fabric8 Rocks!15
Client Scaling:
Message Bus
16. RED HAT | Fabric8 Rocks!16
Client Scaling:
Message Bus
17. RED HAT | Fabric8 Rocks!17
Broker Scaling:
Message BusMessage
throughput
requirement exceeds
broker capacity
18. RED HAT | Fabric8 Rocks!18
Broker Scaling:
Message Bus Message Bus
19. RED HAT | Fabric8 Rocks!19
Broker Scaling:
Message Bus Message Bus
20. RED HAT | Fabric8 Rocks!20
Broker Scaling:
Message Bus Message Bus
Message BusMessage Bus
21. RED HAT | Fabric8 Rocks!21
Broker Scaling: Problems
Message Bus Message Bus
Message BusMessage Bus
• Diminished
returns
• Focused
Overload
• Stranded
Capacity
22. RED HAT | Fabric8 Rocks!22
How do we scale Messaging for the
Cloud ?
23. RED HAT | Fabric8 Rocks!23
Requirements for Messaging as a Service
• Needs to support many thousands of clients
• Flexible, brokers need to be spun up and down, based on demand
• Client connections may need to be multiplexed, to decrease the
load on individual message brokers
• Popular messaging protocols support
• Flexible routing needs to be supported
24. RED HAT | Fabric8 Rocks!24
What contenders are already out
there ?
25. RED HAT | Fabric8 Rocks!25
ActiveMQ
HornetQ
RabbitMQ
Proprietary Enterprise Messaging
26. RED HAT | Fabric8 Rocks!26
Apache Kafka
• Publish/Subscribe messaging – rethought as a distributed
commit log
• Designed for fast data ingestion of logs
• Scalable – designed to allow a single cluster to act as a
messaging platform, allowing for elastic expansion with no
downtime
• Messages are persisted to disk, and replicated to prevent
data loss
• Allows partitioning of data streams across cluster of
machines
• Created at Linkedin – donated to the ASF
27. RED HAT | Fabric8 Rocks!27
Apache Kafka Architecture
ZooKeeper BrokerBrokerBroker Broker
Producer Producer
Consumer Consumer
28. RED HAT | Fabric8 Rocks!28
Apache Kafka Performance
https://cwiki.apache.org/confluence/display/KAFKA/Kafka+papers+and+presentations
From: Kafka: A distributed Messaging System for log processing, Jun Rao
29. RED HAT | Fabric8 Rocks!29
Apache Kafka – Differences with a Message
Broker
• Distributed commit log – broker maintains no state
• Niche – so works really well for a particular set of use
cases
• Proprietary
• Written in Scala
• Consumers have to maintain state
31. RED HAT | Fabric8 Rocks!31
Fabric8 MQ – not a message broker – but a
scalable messaging system
Many concurrent
connections, one out
Flexible
Protocols
Multiplex
Connections
Vert.x
Core
Embedded Camel,
Integration with APIMan
OpenWire,
STOMP
MQTT
AMQP
WebSockets – all done
asynchronously
Scaling Connections
NOT a problem
Destination
Sharding
32. RED HAT | Fabric8 Rocks!32
Fabric8 MQ Independently scalable:
Node
Pod
ActiveMQ
Broker
AMQ
Replication
Controller
Node
Pod
ActiveMQ
Broker
Node
Pod
ActiveMQ
Broker
Fabric8MQ
Replication
Controller
Vert.x
Vert.x
Vert.x
Multiplexer
Multiplexer
Multiplexer
Fabric8MQ
Vert.x
Vert.x
Vert.x
Multiplexer
Multiplexer
Multiplexer
Fabric8MQ
Vert.x
Vert.x
Vert.x
Multiplexer
Multiplexer
Multiplexer
Fabric8MQ
33. RED HAT | Fabric8 Rocks!33
Fabric8 MQ Message Flow:
Protocol
Conversion
Camel
Routing
API
Management Multiplexer
Destination
Sharding
Broker
Control
34. RED HAT | Fabric8 Rocks!34
Qpid Dispatch Router
BrokerBrokerBroker Broker
Producer ProducerConsumer Consumer
Router Router Router Router
AMQP
1.0
35. RED HAT | Fabric8 Rocks!35
Multiplexing
• Brokers performs better the lower
the number of connections – less
contention
• IoT applications have long lived
connections, but small amount of
traffic
• All configurable – you can decide
how fine or coarse grained you want
multiplexing
• Dispatch Router does this
automatically
36. RED HAT | Fabric8 Rocks!36
Destination Sharding: Benefits
• There is an overhead associated with a
Destination – restrict the number of
Destinations per Broker to improve
performance
• Co-locate producers and consumers of a
Destination to the same broker reduces
latency and improves overall performance
• Increased scalability for your messaging
solution
• Dispatch Router does this automatically
37. RED HAT | Fabric8 Rocks!37
Red Hat Messaging – how we plan
to tackle messaging for the cloud
…
38. RED HAT | Fabric8 Rocks!38
What we have today
Separate clients tied to
broker- specific protocols
Limited
integration between brokers
& overlapping capabilities
MRG-M (Apache Qpid C++ broker)
•AMQP, high performance, routing, HA
•No longer sold but actively supported
M. MQ 6.x (Apache ActiveMQ 5.x Java
broker)
• Multi-protocol JMS-oriented broker
• Large user community, rich feature set
EAP HornetQ JMS Messaging Broker (HornetQ GitHub
project)
•Multi-protocol JMS-oriented broker
•JMS 2.0, best-in-class SpecJMS performance
MRG-M
3.1
A-MQ
6.x
HornetQ
EAP6
39. RED HAT | Fabric8 Rocks!39
Clients
A-MQ
Where we’re going
• Consolidate to a single messaging product, known
as A-MQ
• Consists of three components: Broker,
Interconnect & Clients
• Developed in open, community-based, upstream
projects and
leveraging open, standards-based protocols
Broker
Interconnect
40. RED HAT | Fabric8 Rocks!40
Where we’re going
M. MQ Broker
• Full-featured, high-performance, multi-protocol
enterprise broker
• HA through replication and failover
M. MQ Interconnect Router
• Large-scale, secure, reliable, and manageable
messaging networks
• Use with or without broker. HA through redundant
routing.
M. MQ Clients
• Ubiquitous, standards-based messaging clients for all
common platforms and programming languages
A-
MQ
A-MQ
Broker
Interconnect
Clients
41. RED HAT | Fabric8 Rocks!41
Where we’re going
• AMQP (Advanced Message Queuing
Protocol)
• Rich semantics, multiplexing, flow control,
extensible
• International standard – ISO/IEC ISO
19464
• MQTT (Message Queuing Telemetry
Transport)
• Lightweight “first mile” telemetry
• OASIS Standard; International
standardization in progress
• STOMP (Simple Text-Oriented
Messaging Protocol)
• WebSocket encapsulation
A-MQ
Broker
Interconnect
Clients
42. RED HAT | Fabric8 Rocks!42
Messaging for Microservices
43. RED HAT | Fabric8 Rocks!43
Reliable, Fast Communication between Services
44. RED HAT | Fabric8 Rocks!44
Functional Decomposition
45. RED HAT | Fabric8 Rocks!45
Micromessaging
• Whilst external services should
often be http – internal services
do not need to be.
• Using a messaging system can
improve performance and
scalability
• Standards are important –
immutable infrastructure leads to
disposable infrastructure. Apply
that all assets in your design.
46. RED HAT | Fabric8 Rocks!46
Micromessaging: inter-service communications
Broker
Service A
Service A
Service A
Service C
Service A
Service B
Service A
Service F
Service A
Service E
Service A
Service Drequest
reply
subscribe
subscribe
publishpublish
47. RED HAT | Fabric8 Rocks!47
Micromessaging: Control Plane
BrokerController
Service A
Service F
Service A
Service A
subscribe
subscribe
publish
{Start Processing}
{Stop Processing}
48. RED HAT | Fabric8 Rocks!48
Micromessaging: Stream Processing
Broker
publish
Event Listener
SMS
Event Listener
Event Listener
HTTP Post
Event Listener
HTTP Post
Event Listener
HTTP Post
Event Listener
HTTP Post
Event Listener
HTTP Post
SMTP
publish
publish
Event
Processing
Engine
49. RED HAT | Fabric8 Rocks!49
Micromessaging anti-patterns
• Any pattern that is transactional in nature
e.g. Transactional Client
• Any pattern that relies on Message Persistence
Durable Subscriber, Guaranteed Delivery
• Any pattern where the message system inspects, or
selectively routes messages
Message Filter, Content Based Routing, Content Enricher
50. RED HAT | Fabric8 Rocks!50
Micromessaging: what to use ?
Qpid Dispatch
Router
58. RED HAT | Fabric8 Rocks!58
Messaging Calculator
from("jms:queue:”+RESULT_QUEUE).aggregate(header(CORRELATION_HEADER),
new AggregationStrategy() {
@Override
public Exchange aggregate(Exchange oldExchange, Exchange newExchange) {
if (oldExchange == null) {
return newExchange;
}
String oldBody = oldExchange.getIn().getBody(String.class);
String newBody = newExchange.getIn().getBody(String.class);
oldExchange.getIn().setBody(oldBody + "+" + newBody);
return oldExchange;
}
}).completionSize(NUMBER_OF_SERVICES).completionTimeout(2000)
.setHeader("name", constant("MSG")).to(collectorService);
59. RED HAT | Fabric8 Rocks!59
The Collector:
@ContextName("collectorCamel")
public class CollectorHTTP extends RouteBuilder {
@Override
public void configure() throws Exception {
getContext().addRoutePolicyFactory(new MetricsRoutePolicyFactory());
from("jetty:http://0.0.0.0:8184/results/http”).setId("HTTP");
from("jetty:http://0.0.0.0:8184/results/msg”).setId("MSG");
}
}
60. RED HAT | Fabric8 Rocks!60
Links:Links:
http://camel.apache.orghttp://camel.apache.org
http://fabric8.iohttp://fabric8.io
https://github.com/rajdavies/microservices-exampleshttps://github.com/rajdavies/microservices-examples
Editor's Notes
Scale cube from the The Art of Scalability – by Abbott and Fisher