By on August 24, 2016

Kong 0.9.0 Released

As we’re approaching 1M downloads we wanted to be sure to build for the long term and support the community with an API Gateway focused on reliability, efficiency and speed. We are happy to announce that Kong 0.9 has been released after a few months of intense refactoring and improvements. This is the biggest release since we started the project, and will set a solid foundation for the months to come.

Check the full changelog.

New CLI and Configuration

We are introducing a new CLI and a new configuration format to make Kong easier to use in a bigger variety of deployments. No more YAML for the configuration file, and native support for ENV variables for every property of the configuration file: just prefix the environment variable name with “KONG_{PROPERTY_NAME}“. For example:

$ KONG_DATABASE=postgres KONG_PG_HOST= kong start

PostgreSQL is the new default

When Kong was born a little bit more than a year ago we only supported Cassandra. Then starting from v0.8 we introduced support for PostgreSQL, and since then the adoption of Kong+Postgres has been rapidly increasing.

Starting from Kong 0.9 PostgreSQL is the default datastore for Kong, so if you were using Cassandra and you are upgrading, please make sure to explicitly set Cassandra as your datastore. You can do that in the configuration file, or by setting the “KONG_DATABASE=cassandra” environment variable before starting Kong.

Rate-Limiting Policies + Redis Support

The Rate-Limiting and Response Rate-Limiting plugins now support different policies that determine how they should retrieve and increase the counters to optimize for speed. You can choose between:

  • local: stores and retrieves the counters locally in-memory. The fastest option available.
  • redis: counters are stored in a third-party Redis instance, that can also be shared with other Kong nodes.
  • cluster: the default behavior, where counters are stored and retrieved from the underlying datastore, either Cassandra or Postgres

You can learn more by reading the plugin’s documentation. New versions of Kong will ship with new policies, and you can also create your own in a custom plugin.

New Bot Detection Plugin

Protect your APIs from the most common bots, with the possibility of whitelisting and blacklisting custom clients. Take a look Here!

Last but not least

We made many improvements to the official Docker image, plus we have released an Docker Compose stack that you can use to deploy Kong.

We consider 0.9.0 as an important milestone for the foundations of Kong, and now that it’s done we can move on to build other exciting features such plugins applied per HTTP Methods and new plugins, including Load Balancing support, Deployment Plugins (Canary Releases, Blue/Green Deployments) and third-party integrations like InfluxDB and AWS Lambda.

Upgrading from < 0.9.x

If you are migrating from an older version of Kong < 0.9.x, then follow the migration instructions in order to make your Kong cluster functioning after updating to 0.9.x.

Curious about the new version?