Entries by Jonathan Schabowsky

Event-Driven Microservices: What Enterprise Architects Need To Know

Event-driven microservices give you the power to quickly create and modify components in a way that offers bottom-line business value, which is mission critical in a world where your competitors are a click away and time to market is everything.

What’s not to love, right?

But the speed with which you develop components is just one piece of the puzzle.

  • How quickly can you integrate them with the rest of your system?
  • How completely can you embrace innovative new techniques and technologies?

In my new whitepaper for architects, I explain the benefits of combining event-driven architecture and microservices and how decomposing applications admittedly makes life a little more… interesting.

Event-driven microservice white paper

Breaking monolithic applications into distributed components introduces many complexities and challenges associated with a set of incorrect assumptions referred to as The Fallacies of Distributed Computing.

Simply put, many developers assume that the network used to establish communications between components is homogenous, reliable, real-time, unchanging, etc.… Read the rest

How to Maximize Performance and Maintain Agility in PCF with Solace Messaging Appliance

The Solace Message Router Appliance is a high performance hardware-based message broker that supports higher throughput with lower, more predictable latency than any other messaging technology. For use cases where applications or microservices running in Pivotal Cloud Foundry (PCF) require exceptional performance and/or “five nines” reliability  the appliance can be a perfect fit. With this post I’ll explain how the integration works, and provide step-by-step instructions to make it happen.

Architecture and Background:

Since the Solace appliances run outside of the PCF ecosystem they don’t appear as part of the PCF marketplace, but cloud operators or developers can create user-provided service instances that enable applications to use services not natively available in the marketplace.

The user-provided service instances will deliver service credentials to the applications at runtime, which mimics the functionality provided by our Solace Messaging for PCF Tile. The diagram below illustrates how this integration enables messaging between an application running in PCF and a hardware appliance located outside PCF.… Read the rest

How to Enable Any Hybrid Cloud Architecture with Solace and PCF

Is there a “best way” to enable various types of hybrid cloud architecture?

One of my favorite things about my role at Solace is listening to the daunting challenges many of our prospective customers face, helping them (if I can) find solutions to their questions, and of course hearing about the innovative ways they’ve applied those solutions.

Many of them are addressing challenges by leveraging microservices architectures and platforms as a service such as Pivotal Cloud Foundry (PCF), but they find themselves unable to innovate at the pace they expected.

The problem doesn’t lie with microservices in general or PCF in particular, but with the challenge of getting business events to the right application at the right time. This is where so many questions about hybrid cloud architecture arise. Sound familiar?

The challenge of hybrid cloud migration

Today, we as architects are faced with the challenge of creating more business capabilities faster, but with the added reality of reducing costs.… Read the rest

How to Unlock Low-Latency Microservices with Pivotal Cloud Foundry and Solace

So you’re excited and ready to unlock low-latency microservices. And you’ve chosen Pivotal Cloud Foundry as the foundation for your microservices and digital transformation.

You’ve broken down your monolithic e-commerce application and created a new environment composed of small, independent, single purpose microservices. Time for a well-earned swig of that single malt whiskey you’ve been saving for just the occasion, right? Sorry, not just yet.

Because now you’re watching load and latency increase with spikes in usage—is it Black Friday? User experience is suffering! Messages and transactions are getting lost! You’re not going to meet your SLAs! How and why is this happening?

Microservice architecture patterns and latency challenges

You’re not alone. Many organizations are leveraging microservice architecture patterns to build their next-generation enterprise and deliver business value at a faster pace, but they’re realizing that maintaining responsiveness at scale can be tricky. When it comes to building out low-latency microservices, it’s important to step back and consider what will happen under heavy loads.… Read the rest

How to Create Production-Ready Microservices with Spring Boot and Cloud Foundry

Solace makes it easy to implement production-ready microservices using Spring Boot and Cloud Foundry.

Write Once, Run Anywhere (WORA) was a slogan coined by Sun Microsystems to illustrate the cross-platform benefits of Java.

While in many cases Java lived up to this promise, today we need to Write Once, Deploy/Scale Anywhere.

The bane of many developers (including myself) is the inability to inject operating environment properties into applications. This problem becomes even more pronounced when trying to develop production-ready microservices in the most agile way possible.

Why? Simply put, there are external dependencies (such as messaging) whose information can only be known at runtime.

Imagine creating a simple Spring Boot application that runs on your laptop. This application receives product information from a JMS Queue, does an inventory query and republishes the data to a JMS Topic. Everything works fine so it’s time to integrate it into your Cloud Foundry development environment and let it live in the broader enterprise ecosystem.… Read the rest

New Solace PCF Tile, What’s the Big Deal?!

Solace recently released a new version of the Solace Messaging Tile for Pivotal Cloud Foundry (PCF). The Enterprise Edition of the tile supports fault tolerance and high availability, and it includes some game-changing features like TCP Routes and support for AMQP 1.0 that I wanted to share my excitement about.

TCP Routes: Integrating the Real World with PCF

PCF, and more generally all platforms as a service, have changed the way we view the development, deployment and scalability of applications. The ability to deploy applications on-prem or in any cloud provides the flexibility and freedom to meet today’s business needs, while on-demand implementation saves organizations money with “right size” scaling.  PCF is not an island, as applications running in the cloud must be fed data to provide business value. What if sensor data could be streamed into PCF? What if you could connect your legacy systems to new microservices running in PCF?… Read the rest

Message Exchange Patterns for Event-Driven Microservices

Whether organizations turn to microservices to solve issues with existing applications or build greenfield applications, creating applications that consist of many single purpose microservices introduces the need for those individual services to interact in real-time to provide value to the end user.

Today REST is most commonly used for these interactions, and it works fine for some situations, but as discussed in my previous blog post there are many advantages to using messaging instead, not the least of which is the ability to use a wide range of synchronous and asynchronous message exchange patterns.

Note: I explored this topic on a deeper level in my latest guide:

These patterns, such as publish/subscribe, request/reply, one-way notification and multi-request/single-response have been a staple of enterprise architecture for many years, and they are ideal for microservices since they are inherently distributed. To prove this point, lets look at  problem.

A Real-World Example: Meet Sol-Beer

The problem I have chosen to solve is near and dear to my heart (as I hope it is to yours!).… Read the rest

NMS API + AMQP: The Benefits of Open Source and Open Wireline Protocols

In 2001, the first Java Message Service (JMS) specification revolutionized the message oriented middleware space by offering a standard API for the sending and receiving of messages, thus freeing application developers and architects from being locked into vendor specific APIs. More recently,  the Apache community created the .NET Message Service API (NMS) which offers a vendor agnostic .NET interface to a variety of messaging systems. The NMS API gives the flexibility to write .NET applications in C#, VB or any other .NET language, all while using a single API to connect to any number of messaging providers.

While these API’s have helped to reduce the code changes required when switching messaging implementations, they’re only a first step to achieving independence and freedom from all lock-in. Because NMS simply provides a set of .NET interfaces, it is up to each vendor or open source project’s community to match the interface to their wireline protocol (which is frequently non-standard) and the message broker it connects to.… Read the rest

REST vs Messaging for Microservices – Which One is Best?

Microservices are extremely popular these days, and for good reason. They provide a blueprint that makes it easier for developers to repeatedly create robust and scalable applications. While there is no official industry-adopted definition of microservices, there are some generally accepted attributes that make up a microservice:

  • Small and single in purpose
  • Communicate via technology agnostic protocols
  • Support continuous integration
  • Independently deployable.

Many of these attributes are interrelated – since services are to be small and single in purpose, they must communicate with each other to provide real business value, and to be independently deployable they need to be small and single in purpose. While each of these are vital attributes, the ability to communicate without being tightly coupled to one another is a critical aspect of microservices architecture.

Note: For a deeper read you can take offline, get our latest paper on event-driven microservices:

Smart Endpoints and Dumb Pipes

Well-known author and developer Martin Fowler advocates what he calls “smart endpoints and dumb pipes” for microservices communication.… Read the rest