Expectations
Most, if not all the Software solutions from LINAGORA, expose and consume REST APIs.
There are many concerns related to REST APIs, but the first concerns are for exploitation:
- Distinguish between public and private REST APIs.
- Protect these API from too-many requests (rate-limit, black-list clients, etc).
- Make load-balancing among back-end instances (those that serve the REST API).
- Secure / restrain access to some IPs or domains (internal use).
- Get statistics about external (web) use.
- Get statistics about internal (inter-application) use.
All of these issues are generally addressed through API Management solutions.
Comparative studies have been made LINAGORA customers. Based on these documents
and fresh information, the idea is to identify a solution LINAGORA could use for all its web solutions.
The following constraints will have to be respected:
- The use cases described above must be covered by the solution.
- The gateway and management (administration) components must be open-source.
- There must be a way to provision rules for providers and customers programmatically (file configuration, REST API…) or in an automated fashion (not by hand).
- Metrics must be stored about various access.
- The solution must use one of the following databases: MongoDB, PostgreSQL or Elastic Search.
- Compliant with Debian and CentOS systems.
The following criteria must be considered:
- Software components entropy: how many Software dependencies?
- Ease of installation: existing packages.
- Documentation of the solution.
- Project activity (frequence of releases, community…).
- Dashboards and web interface.
Study
See here.
