As many or our customers have found in recent years, cloud native microservice-based applications improve IT operations efficiency and security along with developer speed and productivity. When data is at the heart of those mission-critical applications, Tanzu Data Services, a portfolio of popular enterprise-grade cloud native data solutions for data in motion and at rest, can help. If your portfolio includes Java, Kotlin, or .NET applications, your digital transformation and modernization initiatives can benefit from using Tanzu Data Services, along with Spring and Steeltoe, for these data microservices.
What are Spring and Steeltoe?
Spring is the world’s most popular portfolio of projects for building applications written in Java Virtual Machine (JVM) languages, such as Java and Kotlin. In particular, the Spring Boot project is a proven method for building cloud native microservices.
Steeltoe is a collection of .NET libraries with tens of millions of downloads. It has been helping developers build .NET cloud native microservice applications since 2017.
Why Tanzu Data Services for modern microservices?
These are a few of the benefits of using Tanzu Data Services with microservice frameworks such as Spring and Steeltoe:
-
Simplified data development
-
Best practice cloud native data microservices
-
Data resiliency for mission-critical applications
-
Data scalability to handle peak loads
-
Enterprise support
Simplified data development
Using Spring and Steeltoe together makes it super easy to get started using the most popular data services. Visit start.spring.io to generate a Spring application in a few clicks.
.NET developers can visit start.steeltoe.io to start building a compliant cloud native .NET application.
Best practice cloud native data microservices
With the help of Spring and Steeltoe, developers do not need to be experts in every aspect of application infrastructure to build production-ready applications that use popular data services. Developers can instead focus on implementing the required business logic. Low-level details like data service connection management, thread pooling, and configurations can be left to Spring and Steeltoe.
Data resiliency for mission-critical apps
Most of the customers I talk with cannot tolerate any outages. They need business continuity. Using Spring and Steeltoe with Tanzu Data Services’ resiliency means you have fault tolerance and high availability for not only your Spring and Steeltoe applications but also their data on your cloud platforms.
Data scalability to handle peak loads
The Tanzu Data Services portfolio is built with scalability in mind for modern applications. If you do not know the production capacity needed for day one, you can start with assumptions. You can scale your applications and supporting data services using various cloud native platforms, such as Kubernetes, Cloud Foundry, and virtualization such as vSphere with the portfolio.
Enterprise support
With Tanzu by Broadcom as a trusted provider, companies have full-stack support from a single vendor. Companies have seen a benefit from world-class support for virtualization, platform, app, and data services for mission-critical systems.
Let’s dive deeper into the potential application use cases of Tanzu Data Services.
Cloud native data in motion
Tanzu RabbitMQ
Imagine you’re modernizing or breaking down a monolith JEE to Spring Boot or .NET Framework to .NET Core microservices to run in containers. When cloud native applications need reliable communication, using a messaging solution is a safe bet. RabbitMQ is one of the most widely deployed open source message brokers.
Configure the following Spring app code to a RabbitMQ quorum queue or stream for the consumption of reliable high-throughput event streaming.
Or add a few attributes in the following .NET code, and Steeltoe does the rest!
Cloud native data at rest
Tanzu SQL
SQL is a very popular data interface language for C# applications. Postgres and MySQL are the two most popular databases, and developers love creating applications with these databases. Tanzu SQL and Data Service Manager make it easier to run enterprise-grade deployments of Postgres and MySQL on cloud native platforms at scale.
Why would you want to use Spring and Steeltoe for this? Again, Spring and Steeltoe is like an “Easy button” for incorporating Postgres and MySQL. Steeltoe has connectors for Postgres and MySQL.
Spring has Spring Data JPA where the low-level details to Create, Read, Update, and Delete (CRUD) domain data (such as bank details below) in Postgres/MySQL are implemented by the framework.
Tanzu Greenplum
Recently, there has been an explosion of interest in ML/AI. Greenplum is a leading open source-based massively parallel processing (MPP) database built for ML/AI analytics. Greenplum Database helps companies like Morgan Stanley solve for massive scale while lowering costs for financial reporting and risk management. Being an MPP database, Greenplum can scale to petabytes of data. Greenplum allows you to run performant ML/AI workloads with various models, such as large language models (LLMs).
For Spring and Steeltoe applications, Greenplum looks like Postgres.
Spring and Steeltoe help you bring the power of Greenplum’s analytic capabilities at scale to the Java Virtual Machine and .NET runtime.
Tanzu GemFire
GemFire is a product that I love, yet many people have not heard about it. Thanks to my dear friend Gideon Low, we know that MasterCard credit card transactions benefit from the power of GemFire, processing beyond a billion transactions per day. GemFire is extremely fast and scalable. If you have performance or scalability database issues, GemFire deserves a good look.
GemFire can be a great improvement for .NET and Spring applications that use open source Redis. For example, if you have multiple applications sharing a Redis environment that has become a bottleneck, GemFire can act as a Redis cluster for Redis .NET application clients. GemFire with Steeltoe brings improvements for fault tolerance, scalability, and data consistency to Redis for mission-critical .NET applications. With Spring Data for Tanzu GemFire, developers do not need to worry about implementing write/read operations. Just like Spring Data JPA, all they need to do is define an interface and Spring does the rest.
Summary
Java is a proven programming language and has been used to develop applications since 1995. .NET (in particular, C#) continues to gain in popularity. You can benefit from the simplicity of Spring and Steeltoe when building microservice applications in these languages. These applications typically use SQL databases such as Postgres and MySQL, caching solutions like Redis, or messaging solutions like RabbitMQ. Whether you need SQL, caching, or ML/AI at scale, Spring and Steeltoe along with Tanzu Data Services can provide a great benefit. Check out these Spring reference implementations along with these Steeltoe and data solutions examples. Consider the modern platforms Tanzu Application Service for Cloud Foundry or Tanzu Application Platform for Kubernetes to simplify the provisioning and management of your data microservices.