It is incredibly easy to build your own API Gateway with the ASP.Net Core framework. We provide the infrastructure and tools with Linux. Build an awesome API Gateway with the open source tools you love.

API Gateway Requirements

We thought we would use the list as Key Performance Indicators (KPI) to how we measure up.

Reliability, availability, scalability : We use Amazon Web Services and Vultr for the computing instances. The entire Gateway is backed up daily and two consecutive backups are maintained at all times. Each microservice can be “scaled” vertically i.e. the number of instances and horizontally i.e. the memory. Furthermore, the Gateway itself can be “upgraded” to scale to increasing demand.

Declarative configuration : Our API Gateway can be configured declaratively via the deploy tool or imperatively using the API. The API Gateway Wiki given below provides more details on configuration.

Easy introspection : It is very easy to introspect the gateway when something doesn’t work. The Gateway logs and performance metrics can be queried remotely via SQL. The API provides access to metrics such as CPU load, memory use, available disk space and many more.

Easy to use : The Gateway is easily configurable via the Nester Deploy tool. The .NET Framework updates are easy to apply. The API allows further customization and the Nester Library is provided for client-side apps to get started easily.

Authentication : The ASP.NET Core tools provide extensive support for authentication and samples exist to guide the implementation of authentication services.

Performance : Your API Gateway is installed on a dedicated server. The performance is dependent on the configuration selected, usage level among other factors.

Features for a modern distributed application : Rate limiting is provided by the .NET Framework and circuit breaking is provided by the end user software. The API Gateway can be integrated with Slack for health monitoring and alerts for observability.

Getting Started

Configuring the REST API Backend

Manage a Team

The platform makes it easy to manage a team. The solution owner invites a member by their email. The member can then join the team the invitation is active.

The owner sets the permissions when a new member is invited. The owner can remove the member or the member is able to voluntarily leave the team anytime afterwards.

It makes things easy for project managers to employ temporary contractors to fix issues with the site and allow access only when the work is performed.

Develop the Site

The developers can request a DevKit to begin developing the website. Each developer can download and clone the site on their desktop to update the site. Once the work is complete simply push the assets to the site and check in the code to the Git repository provided.