On Thursday, August 27th, I presented to the Online ColdFusion Meetup on modernizing monolithic apps. The presentation had two sections, one relating to the enterprise architecture strategy for monolithic modernization; the other section highlighted the ColdFusion API Manager – a technology-agnostic platform to create REST or SOAP APIs. The presentation was received well by the audience who participated with many comments and questions. The link to my blog post discussing the Strategy And Tactics Of Modernizing Monolithic Applications is here.
What is the ColdFusion API Manager?
The ColdFusion API Manager is a technology-agnostic platform to create, deploy, secure, and manage REST or SOAP APIs. The ColdFusion API Manager is available as a standalone native installation or in a docker configuration. Think of the product as a registry of APIs with centralized configuration, security, SLAs, access policies, and more. You get a license of the ColdFusion API Manager with your ColdFusion Enterprise License. Compared with other similar products on the market, the ColdFusion API Manager is feature-rich and inexpensive.
In the below diagram, you can see where the API manager fits in your application architecture. Since your user-facing applications are not directly connected to the back end applications, the user-facing apps do not get disrupted as things change on the back end. You can change, upgrade, remove, combine, and add new components to the back end at will. As long as you plug in something to the ColdFusion API Manager to handle the functionality, you can avoid changing, building, testing, and deploying the user-facing apps.
It’s like the Enterprise Service Bus, but for APIs
Most Important Feature – It’s All Available As APIs
Below are my current favorite features of the ColdFusion API Manager. You’ll note I have screenshots of the application below. Each capability also has APIs available that you can use to connect to existing systems. This means you can automate the creation and management of any portion of the ColdFusion API manager just by pinging the right API with the right data. This is huge and has the potential to be a big time-saver in your organization as you aren’t required to use the user interface if you don’t need/want to.
Interesting Feature #1 – Many ways to create
There are 5 supported ways to create APIs in the ColdFusion API Manager.
- Create a REST API from a Wizard
- Import a REST API from a ColdFusion instance
- Import a REST API from a Swagger document
- Import a SOAP API and automatically convert to REST
- Import a SOAP API and leave it as SOAP
If you have SOAP APIs and haven’t yet made REST APIs out of them, this feature is worth the price all by itself. Why hand code these things when the computer can do it for you error-free?!
Interesting Feature #2 – Pre/Post Hooks
The ColdFusion API Manager allows you to configure processing items either before or after a request or a response. You can chain items together and process them in a line. The user interface to do this is clear and easy. It’s much simpler to troubleshoot a process configured in the API Manager, rather than dive through code files trying to figure out why a certain task isn’t working well.
Threat Protection, Data Transformation, or both
The processing order is left to right
Interesting Feature #3 – Automatic, Centralized Documentation and Test Harnesses
Each API in the ColdFusion API Manager has its own up-to-date documentation. The documentation is centralized and sharable with API consumers. Additionally, each API has a built-in test harness that you can use to test the different calls. You can view the request, response, and results all from within the browser.
Avoid out-of-sync documentation
Interesting Feature #4 – Centralized Endpoint Security with Load Balancing
Endpoints in the ColdFusion API manager can share authentication. This is configured at the endpoint level in the administration section. You can use your own load balancer or use the built-in Round Robin or Weighted Round Robin strategies.
Interesting Feature #5 – Centralized Key Stores
Why spread out your keystores when you could consolidate them in a single place? The ColdFusion API Manager will register existing keystores or you can create a new keystore. Having the keystores centralized means your certificates are managed in a single place, not spread all over different servers.
Work with what you have in a more organized fashion
Interesting Feature #6 – User Stores and Authentication
Interesting Feature #7 – SLAs and Rate Limits
It’s a good policy to have SLAs and rate limits on your APIs. Even if you only let internal folks connect, you can guard against some other person’s code going haywire and pounding your infrastructure. The ColdFusion API manager has a set of APIs you can use to configure anything, including SLAs. You can wire this feature into other systems to automate SLA creation and management.
Interesting Feature #8 – Built-in Analytics
It is important to keep a handle on the health and metrics of your APIs. The ColdFusion API Manager has a built-in analytics dashboard system that gives you a heads up display of the activities if your APIs. You can drill down into discrete metrics and stay on top of your systems.
Where To Go For More Info
- Watch the recording of the presentation. I cover this topic in the second half.
- Download a version of the presentation files. Be sure and check the notes section for enhanced detail.
- Read the Strategy and Tactics of Modernizing Monolithic Applications
- View the ColdFusion API Manager documentation
- Contact us if you want help understanding your modernization options. We have experience with all sorts of technology and specialize in modernizing important applications.