Steeltoe: Simplify building .NET cloud microservices

The .NET Foundation is the home for more than .NET. It’s the open source hub for languages and frameworks to help you build on top of the various .NET runtimes and compilers, with contributions from companies and individuals around the world.

One of the more popular tools came out of Pivotal (now part of VMware again). Intended to help developers build better .NET microservices, Steeltoe serves as a bridge between .NET and Pivotal’s Spring Cloud and Cloud Foundry platforms, as well as to Kubernetes and other containers, with a set of libraries that speed up application development. Now that it’s open, it’s receiving code contributions from across the .NET community, including teams at Microsoft, and building on work done in Netflix’s open-source libraries. You can find its repository on GitHub.

Microservices with Steeltoe

By building on familiar ways of working, Steeltoe can also be used as a springboard into .NET development from Java and other enterprise languages. You can take work you’ve done in Java on Spring Cloud and port it to .NET, or use Steeltoe connectors to mix different technologies so existing applications can be enhanced with .NET microservices. Project managers will find this approach helpful, as they can mix and match available resources as necessary without having to worry about compatibility issues.

Steeltoe can create a cloud microservice using its initialization tool, adding providers for different cloud services and automatically configuring code for deployment. Configuration can be easily stored outside your code, so you can keep tokens and other important authentication details in secure services such as Hashicorp’s Vault without exposing them in code repositories.

Its biggest advantages are its libraries, which prepackage useful cloud design patterns ready for use in your code. These include support for service discovery, with Eureka and Consul clients, along with distributed tracing to help debug code. Other key elements support messaging by working with network file shares and provide connectors to the cloud services you’re going to use. Cloud-native microservices need to be stateless, easy to compose, and well-defined, and Steeltoe’s libraries help build code that supports cloud-native design patterns without changing how you write your .NET Core applications.

The latest release is Steeltoe 3.0. This moves support away from the .NET Framework to .NET Core, ready for .NET 5 and future .NET Core-based releases. It’s added support for other distributed application platforms, such as Kubernetes, and for messaging-based architectures. That has meant changes in package naming, so code will need some refactoring when you upgrade to the new releases.

Copyright © 2020 IDG Communications, Inc.

Source link