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 2015/05/08 15:30:59 UTC

[jira] [Commented] (TS-2994) Make use of SO_REUSEPORT socket option

    [ https://issues.apache.org/jira/browse/TS-2994?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14534550#comment-14534550 ] 

Leif Hedstrom commented on TS-2994:
-----------------------------------

Yeah, I think we should do this for both of our accept cases:

1) Accept on ET_NET

2) Dedicated accept thread (when m > 1  of course).


#2 becomes even more important if/when we go to a model of one accept thread per NUMA node. I read the HTTPD dev@ mailing list thread, and they are seeing some amazing performance improvements. From my own experience, since we epoll() on the FD when we accept in ET_NET, we sometimes (often?) seem to do a lot of expensive accept() for no good reason.

There's an Intel article on the subject as well:

http://www.intel.ie/content/dam/www/public/us/en/documents/white-papers/scaling-apache-server-performance-paper.pdf


> Make use of SO_REUSEPORT socket option
> --------------------------------------
>
>                 Key: TS-2994
>                 URL: https://issues.apache.org/jira/browse/TS-2994
>             Project: Traffic Server
>          Issue Type: New Feature
>          Components: Core
>            Reporter: Yunkai Zhang
>            Assignee: Phil Sorber
>             Fix For: 6.0.0
>
>
> "One of the features merged in the 3.9 development cycle was TCP and UDP support for the SO_REUSEPORT socket option; that support was implemented in a series of patches by Tom Herbert. The new socket option allows multiple sockets on the same host to bind to the same port, and is intended to improve the performance of multithreaded network server applications running on top of multicore systems." --[The SO_REUSEPORT socket option|http://lwn.net/Articles/542629/]



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)