You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@trafficserver.apache.org by "Leif Hedstrom (JIRA)" <ji...@apache.org> on 2011/09/04 18:22:09 UTC

[jira] [Updated] (TS-924) Performance improvements with second request on same keep-alive connection

     [ https://issues.apache.org/jira/browse/TS-924?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Leif Hedstrom updated TS-924:
-----------------------------

    Attachment: TS-924.diff

Here's a preliminary proposed patch. I know, there's a lot of indentation changes as well, but the two fundamental changes are:

1) Fix the memory allocations for both the server and client sessions.

2) Add a new option, that allows us to specify that each net-thread should keep its own pool of origin connections.

#2 Can have slight performance drawbacks if there's very little traffic against the origin. Therefore, I'm making this option overridable per remap rule (or from a plugin via the existing APIs).

The options to enable #2 is the same as enable shared origin connections, I'm overloading it with a value of "2" meaning share connections, but per net-thread.

{code}
   # Share server connections
   #  0 - Never
   #  1 - Share, with a single global connection pool
   #  2 - Share, with a connection pool per worker thread
CONFIG proxy.config.http.share_server_sessions INT 1
{code}

I'm leaving the default as it was before, and the fixed memory allocations will help a little bit here too. But to get full benefit here, you have to set the config to 2.

Many thanks to William and weijin for doing all the work on figuring out the real problems going on here. I still think it might be worthwhile to allow for origin connections to move between net-threads, but this solution fixes that, and has some other benefits (keeping "memory" tied on the owning thread).

> Performance improvements with second request on same keep-alive connection
> --------------------------------------------------------------------------
>
>                 Key: TS-924
>                 URL: https://issues.apache.org/jira/browse/TS-924
>             Project: Traffic Server
>          Issue Type: Improvement
>          Components: Core
>            Reporter: Leif Hedstrom
>             Fix For: 3.1.1
>
>         Attachments: TS-924.diff
>
>
> This is a continuation of TS-880, it has more details. The idea is that we committed the safe, but less optimal fix already with TS-880. Ideally though, we should do something like William's first approach, and migrate origin VConns to the same EThread as the UA VConn.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira