Implication of API Gateway‑Sprawl
Around 10 years back I was
assigned to rationalize the Enterprise Service Bus Portfolio (Primarily BizTalk
Servers) of an American investment bank and financial services holding company. This specific customer was experiencing ESB hell or ESB Mess. Each project/product and
Business unit had their own ESB, hence managing ESB portfolio was costlier. Now
when I see API management trends, I do smell similar challenge on our customer
and enterprise too. Hence I thought writing some of my opinion based on prior experience on what value it
brings for having multiple APIM products.
As per CAGR report, the
global APIM market is expected to grow
from USD 5.1 Billion by 2023. The key driving factors for the API
Management market are as below.
- Growing Demand for API-Led Connectivity
- Need for Public and Private APIs to Accelerate Digital Transformation
- Opportunities for the API Management market
- Low-code platform for API development
- API Management solutions powered with advanced analytics capabilities
Though
enterprises are ending up adopting multiple APIM for several very good reasons
and it is becoming a trend now, but the same time It’s becoming more expensive
to run multiple API gateways and management. This blog discuss some of the subject
around,
- What are the possible reason for Heterogeneous and diversified API gateways?
- What challenges have we created for ourselves by using Multiple API gateways on enterprise?
- How can we deal with the complexities of
“API Gateway‑sprawl”?
- Can we consolidate without compromising performance, stability, and functionality?
Why heterogeneous API gateways?
1. Two-Tier Gateway: Two‑Tier (multi‑layer) gateway pattern
enable clear separation of roles for multiple gateways. An
external gateway that controls the traffic between the enterprise and the
outside world, and an internal gateway for various applications and systems
flows inside organizations. Key solution rationale behind this approach are,
- Cyber Security: An
external-facing API gateway can have stringent security policies in terms of
compliances and best practices whereas the internal API gateway may have
different set of policies for internal applications and APIs. For example, the
API Trust level for Vendor and Customer may not be the same for the internal
API developer.
- Many independent points of failure in
case of breach: In the case of a breach or cyberattack on
one, the other can keep running so all applications don’t come to a complete
halt hence increasing the availability of SLA.
- Cost Optimization: Use
of open source reverse proxy for internal gateway for instance Ocelot /NGINX
may provide less features but can reduce a lot of cost.
- API-first externally, but not at all
internally: As part of legacy modernization journey, enterprise
core business logics may have behind API and a Gateway, but in order to expose
it to external consumer, creating another layer of API Gateway make sense.
2. Cloud Transformations: While
transitioning to cloud, major of enterprise prefer to use Cloud native gateway
over legacy or traditional gateways. Also certain cloud native service come as
a pre-packaged API gateway for instance Azure IOT central comes with Azure APIM
which is an integral part.
3. Organizational Structures: For
ease of management and operation, major of enterprise have multiple Lines of
Business or Business Unit. The supporting applications and LOB’s IT investment
depends on nature of business and it have a direct impact of API gateway too.
There are quite possibilities that, API gateways used for Manufacturing LOB may
not have the same API gateway for Marketing LOB. Also inorganic business growth
strategies like merger and acquisitions too one of the important factor for
having Gateway‑sprawl.
4. Filling Gap of Modern need: It
is evident that, not all API gateway product provide or meet all the need of
enterprise or the product chosen may not evolved over a period of time. For
example, if a Solution evolved over a period of time using Azure API gateway
needed to support grpc routing which is not supported by Azure, then as an
alternate solution use to have another API Gateway like Nginx or Kong accepting
grpc request and routing to API gateway.
5. Vendor Lock-In: The
vendor lock-in problem in cloud computing is the situation where customers are
dependent (i.e. locked-in) on a single cloud provider technology implementation
and cannot easily move in the future to a different vendor without substantial
costs, legal constraints, or technical incompatibilities. In order to mitigate
the Risk CXO always prefer to have multiple cloud gateway pertaining to the
solutions need.
6. True Containerization: Looking
to the advantages of containerizations and hybrid clouds, the API and API
gateways can be containerized and deploy as an independent unit. This is now becoming a trend on AKS creating
possibilities of having heterogeneous API gateways
7. Types of Environment: Historically it has been always recommended to segregate different type of environment as Dev, Test, Staging and Production. As part of best practices there are many enterprises who segregate the API gateways according to the environment. This benefit to apply a group of policies based on specific environment.
8. Microservice Architecture: In a microservices architecture, the client apps usually need to consume functionality from more than one Microservice. If that consumption is performed directly, the client will need to handle multiple Microservice endpoints to call.
An API gateway try to solve following architectural challenges listed as below ,
- Coupling with each Microservice
- Too many round trips
- Security issues
- Cross-cutting concerns
Key Implications of APIM Mess
Having multiple API gateways will typically increase the operational cost and governance overhead. Some of pain points of having fragmented API gateways as listed below:
- High cost of managing API lifecycles
- Time-consuming and inflexible to API driven development.
- Partners may have to use multiple gateways to complete transactions.
- Duplicate of efforts on configuration and management of policies
- Inconsistent branding across channels
- Retention of multiple skills
- Dissatisfied customer experience
- No single source of truth for API policies
- Lack of centralized visibility into who is consuming APIs
- Resists Reuse.
- Fragmented view on API economy
- Issue on Troubleshooting or doing Root cause of API failure.
- Reduced support efficiency
- Data inconsistency across systems.
- Developers onboarding, off boarding and their management in different portal
How to Deal with “API Gateway‑sprawl”?
Though
existence or embarking on multiple API gateways for a cause is not at all a bad
practice the same time standardizing on a single gateway is not realistic for
largest organizations. This paper
recommend that the enterprises should understand the implication of having
multiple gateway and should avoid or eliminate. It is good to be aware and
provide key guidelines as part of Enterprise Architecture on when and what
circumstance solution should use Single Gateway Vs multiple gateway solutions.
It is always an obvious question is When
one API gateway is adequate? If the reasons and situation are offered on
Why Section of this paper is not your organization’s situations, then you may
wish to start with a single API gateway segment, then re-evaluate the need for
multiple segments in the future. This not only simplifies your automated
deployments; it will also reduce operating costs by limiting your API gateway
footprint. Consider the reasons for multiple API
gateways with a clear weigh on the benefits and challenges to determine what
the right approach is for your organization.
Another
options to deal with Multiple API gateways is to invest on an Enterprise API
gateway Enterprise Hub or similar pattern. There are few products in this
category which are evolving are,
- Rapid API Enterprise Hub
- AMPLIFY
- SAP API Business Hub
Below
diagram provide a high level reference architecture most of these product
adheres.
The
value Proposition of API Enterprise Hub revolve around
- Governance and safety
- Consumption visibility
- Cost
- Debugging and monitoring
Summary
A majority of IT leaders
today are using API first development approach or are planning to invest on an
API Management Product as a handy tool for competitive distinction. Whether you
are looking to simplify ‘traditional’ approach having few manageable API
gateways or seeking to solve governance and cost optimization challenges you really
need to think and justify the business benefit of having multiple APIM.
1.


Comments
Post a Comment