DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Zones

Culture and Methodologies Agile Career Development Methodologies Team Management
Data Engineering AI/ML Big Data Data Databases IoT
Software Design and Architecture Cloud Architecture Containers Integration Microservices Performance Security
Coding Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks
Culture and Methodologies
Agile Career Development Methodologies Team Management
Data Engineering
AI/ML Big Data Data Databases IoT
Software Design and Architecture
Cloud Architecture Containers Integration Microservices Performance Security
Coding
Frameworks Java JavaScript Languages Tools
Testing, Deployment, and Maintenance
Deployment DevOps and CI/CD Maintenance Monitoring and Observability Testing, Tools, and Frameworks

Enterprise AI Trend Report: Gain insights on ethical AI, MLOps, generative AI, large language models, and much more.

2024 Cloud survey: Share your insights on microservices, containers, K8s, CI/CD, and DevOps (+ enter a $750 raffle!) for our Trend Reports.

PostgreSQL: Learn about the open-source RDBMS' advanced capabilities, core components, common commands and functions, and general DBA tasks.

AI Automation Essentials. Check out the latest Refcard on all things AI automation, including model training, data security, and more.

Related

  • Fast Deployments of Microservices Using Ansible and Kubernetes
  • Components of Container Management: Strategizing Beyond Build and Run
  • Redefining DevOps: The Transformative Power of Containerization
  • Optimizing Pgbench for CockroachDB Part 2

Trending

  • Implementing CI/CD Pipelines With Jenkins and Docker
  • The Rise of the Platform Engineer: How to Deal With the Increasing Complexity of Software
  • Behavior-Driven Development (BDD) Framework for Terraform
  • Advanced-Data Processing With AWS Glue
  1. DZone
  2. Software Design and Architecture
  3. Microservices
  4. Exploring the Horizon of Microservices With KubeMQ's New Control Center

Exploring the Horizon of Microservices With KubeMQ's New Control Center

Dealing with the complexities of microservice communication can be a burden. Here, learn how developers can be more efficient using microservice architectures.

By 
John Vester user avatar
John Vester
DZone Core CORE ·
Jan. 22, 24 · Tutorial
Like (3)
Save
Tweet
Share
18.4K Views

Join the DZone community and get the full member experience.

Join For Free

The software development landscape is rapidly evolving. New tools, technologies, and trends are always bubbling to the top of our workflows and conversations. One of those paradigm shifts that has become more pronounced in recent years is the adoption of microservices architecture by countless organizations.

Managing microservices communication has been a sticky challenge for many developers. As a microservices developer, I want to focus my efforts on the core business problems and functionality that my microservices need to achieve. I’d prefer to offload the inter-service communication concerns—just like I do with authentication or API security.

So, that brings me to the KubeMQ Control Center (KCC). It’s a service for managing microservices communication that’s quick to set up and designed with an easy-to-use UI. In this article, I wanted to unpack some of the functionality I explored as I tested it in a real-world scenario.

Setting the Scene

Microservices communication presents a complex challenge, akin to orchestrating a symphony with numerous distinct instruments. It demands precision and a deep understanding of the underlying architecture. Fortunately, KCC—with its no-code setup and Kubernetes-native integration—aims to abstract away this complexity. Let's explore how it simplifies microservices messaging.

Initial Setup and Deployment

Deploy KubeMQ Using Docker

The journey with KCC starts with a Docker-based deployment. This process is straightforward:

Shell
 
$ docker run -d \
             -p 8080:8080 \
             -p 50000:50000 \
             -p 9090:9090 \
             -e KUBEMQ_TOKEN=(add token here) kubemq/kubemq


This command sets up KubeMQ, aligning the necessary ports and establishing secure access.

Send a "Hello World" Message

After deployment, you can access the KubeMQ dashboard in your browser at http://localhost:8080/. Here, you have a clean, intuitive UI to help you manage your microservices.

We can send a “Hello World” message to test the waters. In the Dashboard, click Send Message and select Queues.

In the Dashboard, click Send Message and select Queues

We set a channel name (q1) and enter "hello world!" in the body. Then, we click Send.

set a channel name (q1) and enter "hello world!" in the body; then click Send


Dashboard

Just like that, we successfully created our first message! And it’s only been one minute since we deployed KubeMQ and started using KCC.

Pulling a Message

Retrieving messages is a critical aspect of any messaging platform. From the Dashboard, select your channel to open the Queues page.

From the Dashboard, select your channel to open the Queues page

Under the Pull tab, click Pull to retrieve the message that you just sent. The process is pretty smooth and efficient.

Dashboard showing message sent

We can review the message details for insights into its delivery and content.

Review the message details for insights into its delivery and content

Send “Hello World” With Code

Moving beyond the UI, we can send a “Hello world” message programmatically too. For example, here’s how you would send a message using C#.

KCC integrates with most of the popular programming languages, which is essential for diverse development environments. Here are the supported languages and links to code samples and SDKs:

  • C# and .NET
  • Java
  • Go
  • Node.js
  • Python

Deploying KubeMQ in Kubernetes

Transitioning to Kubernetes with KCC is pretty seamless, too. KubeMQ is shooting to design with scalability and the developer in mind. Here’s a quick guide to getting started.

Download KCC

Download KCC from KubeMQ’s account area. They offer a 30-day free trial so you can do a comprehensive evaluation.

Download KubeMQ Control Center (KCC)

Unpack the Zip File

Shell
 
$ unzip kcc_mac_apple.zip -d /kubemq/kcc


Launch the Application

Shell
 
$ ./kcc


The above step integrates you into the KubeMQ ecosystem, which is optimized for Kubernetes.

Add a KubeMQ Cluster

Adding a KubeMQ cluster is crucial for scaling and managing your microservices architecture effectively.

Add KubeMQ Cluster

Monitor Cluster Status

The dashboard provides an overview of your KubeMQ components, essential for real-time system monitoring.

Namespace: Kubemq

Explore Bridges, Targets, and Sources

KCC has advanced features like Bridges, Targets, and Sources, which serve as different types of connectors between KubeMQ clusters, external messaging systems, and external cloud services. These tools will come in handy when you have complex data flows and system integrations, as many microservices architectures do.

Conclusion

That wraps up our journey through KubeMQ's Control Center. Dealing with the complexities of microservice communication can be a burden, taking the developer away from core business development. Developers can offload that burden to KCC. With its intuitive UI and suite of features, KCC helps developers be more efficient as they build their applications on microservice architectures.

Of course, we’ve only scratched the surface here. Unlocking the true potential of any tool requires deeper exploration and continued use. For that, you can check out KubeMQ’s docs site. Or you can build on what we’ve shown above, continuing to play around on your own. With the right tools in your toolbox, you’ll quickly be up and running with a fleet of smoothly communicating microservices!

Have a really great day!

UI Docker (software) microservice

Opinions expressed by DZone contributors are their own.

Related

  • Fast Deployments of Microservices Using Ansible and Kubernetes
  • Components of Container Management: Strategizing Beyond Build and Run
  • Redefining DevOps: The Transformative Power of Containerization
  • Optimizing Pgbench for CockroachDB Part 2

Partner Resources


Comments

ABOUT US

  • About DZone
  • Send feedback
  • Community research
  • Sitemap

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 100
  • Nashville, TN 37211
  • support@dzone.com

Let's be friends: