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

Benchmarking against other proxies #6

Closed
thibaultcha opened this issue Jan 30, 2015 · 15 comments
Closed

Benchmarking against other proxies #6

thibaultcha opened this issue Jan 30, 2015 · 15 comments
Milestone

Comments

@thibaultcha
Copy link
Member

A benchmark against other proxies (Umbrella, Tyk...) is required before launch along with a blogpost probably.

@thibaultcha thibaultcha added this to the v1.0.0 (release) milestone Jan 30, 2015
@subnetmarco
Copy link
Member

In regard to benchmarking, I think it would make sense to have a distributed multi-client benchmarking tool that we can start also for benchmarking the performance between critical code changes, something like http://www.process-one.net/en/tsung/

Distributed: the load can be distributed on a cluster of client machines (http://www.process-one.net/docs/tsung/user_manual.pdf)

@SGrondin
Copy link
Contributor

There's a SAAS for that.

@SGrondin
Copy link
Contributor

@subnetmarco
Copy link
Member

SAAS services could be an option, but they are very expensive with many concurrent requests so we need to evaluate that.

@mschurenko
Copy link

I'm not sure why we need a "distributed multi-client benchmarking tool". Why can't we just run something like siege on a large ec2 instance and use a lot of threads? We only have to benchmark one instance of kong. As long as the instance used to run siege has more threads than the one running kong I don't see why that wouldn't be fine.

@subnetmarco
Copy link
Member

Benchmarking the interaction between Kong and Cassandra requires lots of incoming requests.

siege will work for benchmarking a single nginx server on one machine, but it wouldn't work when we want to simulate a bigger load on Cassandra that requires multiple nginx servers.

We can start with siege (and an easy way to launch it and retrieve benchmarking information), but keep in mind that for deeper benchmarking we would need more than one client (and more than one nginx server to simulate lots of incoming connections on Cassandra).

@montanaflynn
Copy link

Besides Tsung there is also http://locust.io

@subnetmarco
Copy link
Member

Sounds good, can we set something up @mschurenko @ataner ?

@montanaflynn
Copy link

@mschurenko @ataner Can we get Kong running on AWS? This would serve for both benchmarking and learning more about how different settings (OS, nginx, kong, cassandra) and architectures (cassandra on the same box vs external vs clusters) effect performance.

When we have that we need to benchmark the following scenarios:

  1. Kong vs Nginx vs Tyk proxies
  2. Kong Proxy vs Direct API

So that means we also need to set up an AWS instance for raw nginx and tyk using the same instance type and applicable configurations.

@thibaultcha
Copy link
Member Author

+1 we need to know where we're at now. Also Umbrella

We should talk about setups (docker and cassandra)

@thibaultcha thibaultcha changed the title Benchmarking Benchmarking testimony against other proxies Mar 18, 2015
@thibaultcha thibaultcha removed this from the 0.1.0-beta milestone Mar 18, 2015
@thibaultcha thibaultcha changed the title Benchmarking testimony against other proxies Benchmarking against other proxies Mar 18, 2015
@thibaultcha thibaultcha modified the milestone: 1.0.0 Mar 27, 2015
@thibaultcha
Copy link
Member Author

So are those finished? Published? Please update the issue @SGrondin

@SGrondin
Copy link
Contributor

I'm still waiting on your Tyk instructions to remove all rate limiting. I couldn't figure it out whatsoever. By default it has some rate limiting and the docs are unclear about wheter it's even possible.

@thibaultcha
Copy link
Member Author

My Tyk instructions? For 2 weeks? I don't have such thing lol. i never removed the rate limiting from Tyk.

@hbakhtiyor
Copy link

@thibaultcha any updates? what's the results of kong vs tyk?

@hadifarnoud
Copy link

updates on this? very crucial for decision making

bungle added a commit that referenced this issue Sep 16, 2020
### Summary

#### [0.6.4] - 2020-08-27
##### feat
- **x509.csr:** finish {set,add}_extension functions [d34b702](fffonion/lua-resty-openssl@d34b702)
- **x509.extension:** add ability to convert to other data type [15a5c7f](fffonion/lua-resty-openssl@15a5c7f)

#### [0.6.3] - 2020-08-10
##### feat
- ***:** support reset for hmac and digest [37ba4b0](fffonion/lua-resty-openssl@37ba4b0)
- ***:** initial support for OpenSSL 3.0 [be5dc10](fffonion/lua-resty-openssl@be5dc10)
- **x509.csr:** add get_extension and get_extensions function [638ca46](fffonion/lua-resty-openssl@638ca46)
- **x509.extensions:** finish the stack implementation [f4cf725](fffonion/lua-resty-openssl@f4cf725)
- **x509.revoked:** add the x509.revoked module [58f0ce1](fffonion/lua-resty-openssl@58f0ce1)

##### fix
- ***:** cleanup and centralize ffi.typeof [5cbc247](fffonion/lua-resty-openssl@5cbc247)
- ***:** remove hack for openssl 3.0 around broken EVP_PKEY_base_id [33181c3](fffonion/lua-resty-openssl@33181c3)
- **cipher:** use CipherFinal_ex and make test more robust [61fa022](fffonion/lua-resty-openssl@61fa022)
- **openssl:** correctly check error for getting version num ([#6](fffonion/lua-resty-openssl#6)) [6a4b9e6](fffonion/lua-resty-openssl@6a4b9e6)
- **tests:** pin lua-nginx-module and lua-resty-core [010b37e](fffonion/lua-resty-openssl@010b37e)
- **tests:** make pkey parameter test less flaky [d023edc](fffonion/lua-resty-openssl@d023edc)
- **x509.*:** pass correct digest parameter to sign [982ad48](fffonion/lua-resty-openssl@982ad48)
bungle added a commit that referenced this issue Sep 16, 2020
### Summary

#### [0.6.5] - 2020-09-16
##### fix
- ***:** x509.* set should return true on success [2a09575](fffonion/lua-resty-openssl@2a09575)

#### [0.6.4] - 2020-08-27
##### feat
- **x509.csr:** finish {set,add}_extension functions [d34b702](fffonion/lua-resty-openssl@d34b702)
- **x509.extension:** add ability to convert to other data type [15a5c7f](fffonion/lua-resty-openssl@15a5c7f)

#### [0.6.3] - 2020-08-10
##### feat
- ***:** support reset for hmac and digest [37ba4b0](fffonion/lua-resty-openssl@37ba4b0)
- ***:** initial support for OpenSSL 3.0 [be5dc10](fffonion/lua-resty-openssl@be5dc10)
- **x509.csr:** add get_extension and get_extensions function [638ca46](fffonion/lua-resty-openssl@638ca46)
- **x509.extensions:** finish the stack implementation [f4cf725](fffonion/lua-resty-openssl@f4cf725)
- **x509.revoked:** add the x509.revoked module [58f0ce1](fffonion/lua-resty-openssl@58f0ce1)

##### fix
- ***:** cleanup and centralize ffi.typeof [5cbc247](fffonion/lua-resty-openssl@5cbc247)
- ***:** remove hack for openssl 3.0 around broken EVP_PKEY_base_id [33181c3](fffonion/lua-resty-openssl@33181c3)
- **cipher:** use CipherFinal_ex and make test more robust [61fa022](fffonion/lua-resty-openssl@61fa022)
- **openssl:** correctly check error for getting version num ([#6](fffonion/lua-resty-openssl#6)) [6a4b9e6](fffonion/lua-resty-openssl@6a4b9e6)
- **tests:** pin lua-nginx-module and lua-resty-core [010b37e](fffonion/lua-resty-openssl@010b37e)
- **tests:** make pkey parameter test less flaky [d023edc](fffonion/lua-resty-openssl@d023edc)
- **x509.*:** pass correct digest parameter to sign [982ad48](fffonion/lua-resty-openssl@982ad48)
bungle added a commit that referenced this issue Sep 16, 2020
### Summary

#### [0.6.5] - 2020-09-16
##### fix
- ***:** x509.* set should return true on success [2a09575](fffonion/lua-resty-openssl@2a09575)

#### [0.6.4] - 2020-08-27
##### feat
- **x509.csr:** finish {set,add}_extension functions [d34b702](fffonion/lua-resty-openssl@d34b702)
- **x509.extension:** add ability to convert to other data type [15a5c7f](fffonion/lua-resty-openssl@15a5c7f)

#### [0.6.3] - 2020-08-10
##### feat
- ***:** support reset for hmac and digest [37ba4b0](fffonion/lua-resty-openssl@37ba4b0)
- ***:** initial support for OpenSSL 3.0 [be5dc10](fffonion/lua-resty-openssl@be5dc10)
- **x509.csr:** add get_extension and get_extensions function [638ca46](fffonion/lua-resty-openssl@638ca46)
- **x509.extensions:** finish the stack implementation [f4cf725](fffonion/lua-resty-openssl@f4cf725)
- **x509.revoked:** add the x509.revoked module [58f0ce1](fffonion/lua-resty-openssl@58f0ce1)

##### fix
- ***:** cleanup and centralize ffi.typeof [5cbc247](fffonion/lua-resty-openssl@5cbc247)
- ***:** remove hack for openssl 3.0 around broken EVP_PKEY_base_id [33181c3](fffonion/lua-resty-openssl@33181c3)
- **cipher:** use CipherFinal_ex and make test more robust [61fa022](fffonion/lua-resty-openssl@61fa022)
- **openssl:** correctly check error for getting version num ([#6](fffonion/lua-resty-openssl#6)) [6a4b9e6](fffonion/lua-resty-openssl@6a4b9e6)
- **tests:** pin lua-nginx-module and lua-resty-core [010b37e](fffonion/lua-resty-openssl@010b37e)
- **tests:** make pkey parameter test less flaky [d023edc](fffonion/lua-resty-openssl@d023edc)
- **x509.*:** pass correct digest parameter to sign [982ad48](fffonion/lua-resty-openssl@982ad48)
gszr pushed a commit that referenced this issue Jun 17, 2021
This commit integrates the `liamp` plugin with the `aws-lambda` plugin.

The `liamp` plugin will be renamed back to `aws-lambda`, stay in its
own external repo, and then the upstream changes would be to remove
Lambda there, and update the rockspec to include this external one.

We're bumping from 0.2.0 to 3.0.0 to supersede the `aws-lambda` plugin
in the Kong/kong open source repository (which was already at 2.0.0).
gszr pushed a commit that referenced this issue Aug 18, 2021
gszr pushed a commit that referenced this issue Aug 30, 2021
docs(grpc-web) fix plugin config in README
hutchic added a commit that referenced this issue Jun 10, 2022
* feat(RHEL) add the ability to build RHEL rpm packages

* feat(rhel) setup rhel package naming

* feat(rhel) setup release scripts for RHEL

* misc(docs) Update the readme to detail RHEL and releasing to bintray

* feat(centos) ability to release centos to bintray

* feat(alpine) alpine openssl needs no-async

* feat(alpine) setup packaging the alpine tar.gz
hutchic pushed a commit that referenced this issue Jun 10, 2022
### Summary

Before this commit:

```
patching file LuaJIT-2.1-20190507/src/lj_tab.c
patching file LuaJIT-2.1-20190507/src/lj_asm_arm.h
patching file LuaJIT-2.1-20190507/src/lj_api.c
patching file LuaJIT-2.1-20190507/src/lj_arch.h
patching file LuaJIT-2.1-20190507/src/lj_cconv.c
patching file LuaJIT-2.1-20190507/src/lj_obj.h
patching file LuaJIT-2.1-20190507/src/lj_state.c
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/ngx/balancer.lua
patching file lua-resty-websocket-0.07/lib/resty/websocket/client.lua
patching file nginx-1.15.8/src/http/ngx_http_upstream.c
Hunk #2 succeeded at 1691 (offset -3 lines).
Hunk #4 succeeded at 1768 (offset -7 lines).
patching file nginx-1.15.8/src/http/ngx_http_special_response.c
patching file nginx-1.15.8/src/stream/ngx_stream_proxy_module.c
Hunk #2 succeeded at 802 (offset 20 lines).
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
Hunk #5 succeeded at 1556 (offset 48 lines).
Hunk #6 succeeded at 1626 (offset 48 lines).
Hunk #7 succeeded at 1726 (offset 48 lines).
Hunk #8 succeeded at 1749 (offset 48 lines).
Hunk #9 succeeded at 1760 (offset 48 lines).
Hunk #10 succeeded at 1775 (offset 48 lines).
Hunk #11 succeeded at 1816 (offset 48 lines).
Hunk #12 succeeded at 1827 (offset 48 lines).
Hunk #13 succeeded at 1849 (offset 48 lines).
Hunk #14 succeeded at 1868 (offset 48 lines).
Hunk #15 succeeded at 1878 (offset 48 lines).
Hunk #16 succeeded at 2008 (offset 48 lines).
Hunk #17 succeeded at 6101 (offset 62 lines).
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.h
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
Hunk #1 succeeded at 1647 (offset 48 lines).
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
Hunk #3 succeeded at 1579 (offset 48 lines).
Hunk #4 succeeded at 1644 (offset 48 lines).
Hunk #5 succeeded at 1668 (offset 48 lines).
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
Hunk #1 succeeded at 1756 (offset 48 lines).
patching file ngx_lua-0.10.15/src/ngx_http_lua_balancer.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_common.h
patching file ngx_lua-0.10.15/src/ngx_http_lua_module.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_string.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_control.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_variable.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_common.h
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_util.c
patching file ngx_stream_lua-0.0.7/src/api/ngx_stream_lua_api.h
```

vs. (after this commit)

```
patching file LuaJIT-2.1-20190507/src/lj_tab.c
patching file LuaJIT-2.1-20190507/src/lj_asm_arm.h
patching file LuaJIT-2.1-20190507/src/lj_api.c
patching file LuaJIT-2.1-20190507/src/lj_arch.h
patching file LuaJIT-2.1-20190507/src/lj_cconv.c
patching file LuaJIT-2.1-20190507/src/lj_obj.h
patching file LuaJIT-2.1-20190507/src/lj_state.c
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/resty/core.lua
patching file lua-resty-core-0.1.17/lib/resty/core/socket_tcp.lua
patching file lua-resty-core-0.1.17/lib/ngx/balancer.lua
patching file lua-resty-websocket-0.07/lib/resty/websocket/client.lua
patching file nginx-1.15.8/src/http/ngx_http_upstream.c
patching file nginx-1.15.8/src/http/ngx_http_special_response.c
patching file nginx-1.15.8/src/stream/ngx_stream_proxy_module.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.h
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_socket_tcp.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_balancer.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_common.h
patching file ngx_lua-0.10.15/src/ngx_http_lua_module.c
patching file ngx_lua-0.10.15/src/ngx_http_lua_string.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_control.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_variable.c
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_common.h
patching file ngx_stream_lua-0.0.7/src/ngx_stream_lua_util.c
patching file ngx_stream_lua-0.0.7/src/api/ngx_stream_lua_api.h
```
bungle added a commit that referenced this issue Jan 19, 2023
# Summary

- chore(tests): pin third party actions to sha by @ADD-SP in #5
- fix(loop) dynamically sets log level for timers if needed (KAG-326) by @gruceo in #7
- fix: too many scaling logs by @ADD-SP in #6
- chore(rockspec) release 0.2.1 by @gruceo in #8

Full Changelog: Kong/lua-resty-timer-ng@0.2.0...0.2.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants