Professional Documents
Culture Documents
Ch5 - Architecture
Ch5 - Architecture
0
Fundamentals
Architecture
WSO2 Training
Components
WSO2 API Manager consists of an API gateway and collaboration space where API
publishers meet API consumers. The collaboration space consists of an API Store and
API Publisher.
- API Gateway: enables you to secure, protect, manage, and scale API calls.
- API Publisher: enables API providers to easily publish their APIs, share
documentation, provision API keys, and gather feedback on an API’s features,
quality and usage.
- API Store: provides a space for consumers to discover API functionality,
subscribe to APIs, evaluate them and interact with API publishers.
- Traffic Manager: The Traffic Manager helps users to regulate API traffic, make
APIs and applications available to consumers at different service levels, and
secure APIs against security attacks. The Traffic Manager features a dynamic
throttling engine to process throttling policies in real-time, including rate
limiting of API requests
- Analytics: Additionally, monitoring and analytics are provided by the analytics
component, WSO2 API Manager Analytics. This component provides a host
of statistical graphs, an alerting mechanism on pre-determined events and a
log analyzer. For more information
API Publisher
API Manager uses a simplified Web interface called WSO2 API Publisher for API
development, publication and management. It is a structured GUI designed for API
creators to develop, document, scale and version APIs, while also facilitating more
API management-related tasks such as publishing API, monetization, analyzing
statistics, quality and usage and promoting and encouraging potential consumers and
partners to adopt the API in their solutions.
Develop
● Deploy APIs
● Monitor API Behavior ● Associate SLA
● Monitor API Consumers Monitor Publish
● Associate Security Requirements
● Gather Consumer Requirements ● Associate Rate Limits/Throttling
Manage
● API Lifecycle
● API Versions
● API Policies
Using the Publisher you can first develop the API and then publish it while managing
the lifecycle, versions and so on, and monitor how it is used.
API Store
● View top used, new featured APIs
● Search by name, tag or provider
● Save searches
Find
Subscribe
● Register applications
● Obtain key
● Subscribe to API
● Subscribe to API changes
Using the Publisher you can first develop the API and then publish it while managing
the lifecycle, versions and so on, and monitor how it is used.
API Store
API Manager provides a structured Web interface called the WSO2 API Store to host
published APIs. API consumers and partners can self-register to it on-demand to
find, explore and subscribe to APIs, evaluate available resources and collaboration
channels. The API store is where the interaction between potential API consumers
and API providers happen. Its simplified UI reduces time and effort taken when
evaluating enterprise-grade, secure, protected, authenticated API resources.
https://store.apicultur.com
Security Collecting
Security Scaling API
Throttling Caching Statistical
Validations Calls
Policies Data
The API Gateway is a runtime, backend component developed using the WSO2 ESB,
which is proven for its performance capability. API Gateway secures, protects,
manages, and scales API calls. The API gateway is a simple API proxy that intercepts
API requests and applies policies such as throttling and security checks. It is also
instrumental in gathering API usage statistics. We use a set of handlers for security
validation and throttling purposes in the API Gateway. Upon validation, it passes
Web service calls to the actual back-end. If the service call is a token request call, API
Gateway passes it directly to the API Key Manager Server to handle it. By default,
there's a single Gateway instance (deployed either externally or embedded within the
Publisher), but you can also set up multiple Gateways to handle production and
sandbox requests separately.
(https://docs.wso2.com/display/AM260/Maintaining+Separate+Production+and+San
dbox+Gateways)
Key Manager
The Key Manager manages all clients, security and access token-related operations.
The Gateway connects with the Key Manager to check the validity of OAuth tokens,
subscriptions and API invocations. When a subscriber creates an application and
generates an access token to the application using the API Store, the Store makes a
call to the API Gateway, which in turn connects with the Key Manager to create an
OAuth client and obtain an access token. Similarly, to validate a token, the API
Gateway calls the Key Manager, which fetches and validates the token details from
the database.
Key Manager
Get token from Key Manager
Client Application Key Manager
1
Send token
2 in API
Validate
request 3 token
Gateway
Backend Service
4
The Key Manager manages all clients, security and access token-related operations.
The Gateway connects with the Key Manager to check the validity of OAuth tokens,
subscriptions and API invocations. When a subscriber creates an application and
generates an access token to the application using the API Store, the Store makes a
call to the API Gateway, which in turn connects with the Key Manager to create an
OAuth client and obtain an access token. Similarly, to validate a token, the API
Gateway calls the Key Manager, which fetches and validates the token details from
the database.
Traffic Manager
Backend Service
Backend Service
Send events to
Analytics
Summarize API asynchronously
data for reporting API Analytics
Common User Roles
Admin
Creator Publisher
Subscriber
These user roles are common and standard in a typical enterprise setting. But they
are not mandatory. Users can change them according to their unique requirements.