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

Leif Hedstrom updated TS-307:
-----------------------------

    Fix Version/s: 2.3.0

> Possible performance problem: DNS lookup continuation is using first Network 
> ethread for all operations
> -------------------------------------------------------------------------------------------------------
>
>                 Key: TS-307
>                 URL: https://issues.apache.org/jira/browse/TS-307
>             Project: Traffic Server
>          Issue Type: Improvement
>            Reporter: Miles Libbey
>            Priority: Minor
>             Fix For: 2.3.0
>
>
> (from yahoo bug 989959)
> Original description
> by Vladimir Legalov  3 years ago at 2006-12-18 11:57
> All DNS lookup operations are executing on the first Network thread. Since 
> each Network thread is already responsible
> for NetAccept & NetHandler continuation processing, DNS processing can cause 
> extra CPU usage and additional delays
> for
> this particular thread. It make sense to extract DNS processing as absolutely 
> independent thread (ethread) to avoid
> possible performance problem related to
> DNS lookups. 
> Such performance problem can be visible only in "no caching" mode with very 
> high rate of OS requests.
> Additional performance testing is required to clarify visibility of this 
> problem.
> (It looks like htop is not an appropriate tool to catch precise CPU usage per 
> thread.)
>               
>  
> Comment 1
>  by Leif Hedstrom  3 years ago at 2006-12-26 13:41:10
> I think it's highly unlikely that DNS will ever become a bottleneck. Even 
> under extreme cases, like say 300 Origin
> Servers all with a TTL of 5 minutes (we rarely have anything shorter), we're 
> looking at one DNS lookup per second
> (assuming there are no cache hits, as pointed out already).
> I'm closing this bug until we have some real evidence that DNS lookups is 
> ever going to be any sort of bottleneck.
>               
> Comment 2
>  by Vladimir Legalov  3 years ago at 2006-12-26 20:31:17
> I don't understand why we should not keep this RFE open. I would prefer to 
> keep DNS lookup code as separate thread not
> because of a huge performance impact but because the DNS lookup continuation 
> is activated every 11 milliseconds (just
> to verify the status of the 32 UDP sockets) even if we don't need to do 
> perform a DNS lookup. One more thing - this
> continuation is impacting eThread scheduling for first NetHandler 
> continuation.
> I am 100% sure that all NetHandler continuations must be symmetrical/equal 
> and have similar scheduling. I would prefer
> to reopen this RFE.
>               
>  
> Comment 3
>  by Ryan Troll 3 years ago at 2006-12-27 06:47:47
> Reopened, with *very low* priority.
> I'd recommend waiting until the bigger items are done before tackling this.  
> Yes, we may be spending time in DNS in
> this thread when we don't need to; and maybe a single DNS thread is the right 
> answer.  Or maybe modifying the DNS code
> to not bother with DNS continuations unless there are outstanding DNS 
> requests makes more sense.
> However, I'd wait on this until we have time to go back and tune it.  It may 
> squeeze a little more performance out of
> the stack, but I suspect there are bigger wins to be gained through 
> enhancements that are being actively requested by
> properties; or through enhancements we've already identified.
> It makes sense to keep this open so we don't forget about it.  Hopefully 
> we'll get to it later this year.
>               
> Comment 4
>  by Leif Hedstrom  3 years ago at 2006-12-27 07:42:47
> The reason I closed this bug was that the bug report indicated that this 
> would be a problem under heavy load, with no
> caching. I don't believe that to be the case. In best case DNS lookups will 
> be of O(1) complexity, and worst case it'd
> be O(n), where n is the number of origin servers. In either of those case, 
> performing the actualy DNS lookups will be
> negligible as far as CPU consumption is concerned.
> However, with the comment from Vlad, it seems the concern is about wasting 
> time on the DNS continuation, which I agree
> might be worth investigating. But I'd also like to see some benchmarks on how 
> much this does affect us today. I'm not
> sure exactly how to test this. Vlad, is it possible to increase the timer for 
> the DNS continuation to get scheduled,
> e.g. have it run every 1 second? Then we could easily benchmark what effect 
> that has on performance.
>               
>  
> Comment 5
>  by Vladimir Legalov  3 years ago at 2006-12-27 19:09:23
> The existence of this RFE does not mean that it will be taken on our 
> development table immediately. It is a reminder
> only.
> As I already mentioned in the initial comments for this RFE: "Additional 
> performance testing is required to
> clarify visibility of this problem."
> We have plenty of similar  RFE's by priority and severity, which are not in 
> active development. I was sure that P4 is
> clear evidence of such 'dormant' status.
>               

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to