Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document/benchmark #171

Merged
merged 1 commit into from
Apr 28, 2015
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 29 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
- Mailing List: [Google Groups](https://groups.google.com/forum/#!forum/konglayer)
- Gitter Chat: [mashape/kong](https://gitter.im/Mashape/kong)

**Kong is next-generation software for securing, managing and extending APIs & Microservices**. If you're building for web, mobile or IoT you will likely end up needing to implement common functionality on top of your actual software. Kong can help by acting as a gateway for any HTTP resource while providing logging, authentication and other functionality through plugins.
**Kong was built for securing, managing and extending APIs & Microservices**. If you're building for web, mobile or IoT you will likely end up needing to implement common functionality on top of your actual software. Kong can help by acting as a gateway for any HTTP resource while providing logging, authentication and other functionality through plugins.

Powered by NGINX and Cassandra with a focus on high performance and reliability, Kong runs in production at [Mashape](https://www.mashape.com) where it has handled billions of API requests for over ten thousand APIs.

Expand Down Expand Up @@ -38,6 +38,34 @@ Full versioned documentation is available at [GetKong.org](http://getkong.org):
- [API Reference](http://getkong.org/docs/latest/admin-api)
- [Configuration](http://getkong.org/docs/latest/configuration/)

## Benchmarks

We set Kong up on AWS and load tested it to get some performance metrics. The setup consisted of three `m3.medium` EC2 instances; one for Kong, another running Cassandra and a third acting as the target API powered by Lwan. All servers were tuned with the following:

1) Added `fs.file-max=80000` to `/etc/sysctl.conf`

2) Added the following lines to: `/etc/security/limits.conf`
```
* soft nproc 80000
* hard nproc 80000
* soft nofile 80000
* hard nofile 80000
```

We then load tested the Kong server ramping up from 100 to 1000 concurrent connections. The benchmark generating 65,084 requests over 120 seconds with an average of 542 req/second or about 46,860,480 req/day.

#### Response Data:

- Success: 100.00%
- Error: 0.00%
- Timeout: 0.00%

- Fastest Response: 4 ms
- Slowest Response: 31 ms
- Average Response: 6 ms

![](http://i.imgur.com/ROxu4AP.png)

## Development

Please see the [CONTRIBUTING.md][kong-contrib] if you would like to have your changes merged into Kong.
Expand Down