This blog provides a high-level overview of Steeltoe, and discusses reference application that utilizes Steeltoe to build resilient Cloud native .NET applications, and deployment to Pivotal Cloud Foundry.
Why should you use Steeltoe?
Steeltoe makes developing microservices for .NET platform painless. For all their benefits, microservice architectures expose many distributed computing problems that traditional monoliths avoided. Steeltoe brings the power of resilient, scalable microservices to .NET developers, without all the headache.
Steeltoe Music Store Example
Steeltoe Music Store Application Supports the following:
As you can see from the snippet, appsettings.json references localhost for Config Server and Eureka. However, as soon as the app is bound to Config Server settings (provided using environment variables), the local settings will be overridden.
As you can see from the snippet above, manifest.yml , when cf push command is executed, the command will automatically locate the manifest and deploy the application to Pivotal Cloud Foundry.
Clone the application repo. (i.e. git clone)
Setup Services on CloudFoundry
As mentioned above, the application is dependent on the following services:
Note: Redis Cache is required if you want to scale the MusicStoreUI app to multiple instances (e.g. cf scale musicui-sa -i 2+). Redis is not required to scale other microservices.
This will create all of the services needed by the application. Specifically, it creates:
Building & Pushing App — CloudFoundry
Once the services have been created and ready on CloudFoundry (i.e. check via cf services) then you can push the 4 applications:
Once you have pushed all the applications to Cloud Foundry, if you do a cf a, you should see the following applications:
Another way to confirm is by logging into Pivotal Web Services and checking the existence of each service, etc.
Senan Almosawie is an Enterprise Architect at TribalScale with over 18 years of solid work experience in designing and architecting enterprise software solutions. Senan has previous experience in areas, including Point of Sale, Telecommunications, Health Care Systems, Financial applications, Microservice architecture and development on Cloud Foundry, Google Cloud, AWS, and more. He has strong Agile transformation expertise for Fortune 100 clients. He has a strong passion for architecture and performance oriented design. He’s a full stack technology expert who is always looking to connect with like-minded individuals.