Skip to content

bug: bug,Why does the overall average response time for long connections (keep-alive) exceed that for short connections (close) in performance tests? #12927

@fairyqb

Description

@fairyqb

Current Behavior

Is there an existing issue for this?

  • I have searched the existing issues

aspsix version ($ aspsix version)

3.9.0

Current Behavior

Why does the overall average response time for long connections (keep-alive) exceed that for short connections (close) in performance tests? Why is this?

average response time:

14.01ms > 9.76ms (keepalive > close)

wrk:
Image

iftop:
Image

Expected Behavior

Long connections perform better than short connections.

Error Logs

no error

Steps to Reproduce

command:

1.post 500KB,connection:keepalive

wrk -t8 -c16 -d1m -s post.lua --latency --timeout 5s http://10.129.9.39:5074/user (apisix)

  1. post 500KB,connection:close

wrk -t8 -c16 -d1m -s post_close.lua --latency --timeout 5s http://10.129.9.39:5074/user (apisix)

client post 500KB, server returned the string "ok".

post.lua

wrk.method = "POST"
wrk.headers["Content-Type"] = "application/json"
wrk.headers["Connection"] = "keep-alive"
local file = io.open("/root/tls/500kb.json", "rb")
wrk.body = file:read("*all")
file:close()

post_close.lua

wrk.method = "POST"
wrk.headers["Content-Type"] = "application/json"
wrk.headers["Connection"] = "close"
local file = io.open("/root/tls/500kb.json", "rb")
wrk.body = file:read("*all")
file:close()

Anything else?

500kb-json.zip

Environment

  • APISIX version (run apisix version):3.9.0
  • Operating system (run uname -a): 3.10.0-1160.59.1.el7.x86_64 GNU/Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionlabel for questions asked by users

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    ✅ Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions