logging-log4net-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Nicko Cadell" <ni...@neoworks.com>
Subject RE: RemotingAppender and threads
Date Sun, 26 Mar 2006 23:42:56 GMT
The ASP.NET and RemotingAppender use the same shared thread pool. Using
the built-in thread pool it is not possible to prevent thread starvation
as it is not possible to prioritise work items or provide any QOS like
functionality. If many remoting appender calls are made from different
threads at the same time, and the remoting server is not responding then
this may cause resource starvation in the thread pool that affects the
ASP.NET page rendering.

Using another thread pool is an option, which should alleviate this
problem, however a thread pool is relatively complex to implement and
test.

Nicko

> -----Original Message-----
> From: Simon Wallis [mailto:mailing@wallis.ca] 
> Sent: 03 March 2006 17:52
> To: log4net-user@logging.apache.org
> Subject: RemotingAppender and threads
> 
> Hi,
> 
> I've been doing some research on the .NET thread pool, which 
> is used by the Remoting appender in log4net 1.2.9. If I 
> understand correctly, the thread pool is also used to service 
> ASP.NET page requests. Right now I'm using log4net in an 
> enterprise trading application, so the load and amount of 
> information logged can be pretty high. 
> 
> My question is, won't log4net's use of the ThreadPool 
> adversely affect ASP.NET page performance? It seems a bit 
> dangerous to be taking up threads used for pages, especially 
> when the load on log4net could be substantial. I am using log 
> event buffering to try and minimize the number of Remoting 
> calls that need to be made, but we've still had performance 
> problems when the CPU usage is not very high.
> 
> Has anyone else used the Remoting appender under heavy load? 
> I'm considering updating the appender to use a custom thread 
> pool such as that by Mike Woodring (see 
> http://www.bearcanyon.com/dotnet/#threadpool). That way I can 
> isolate the number of threads used for logging from those 
> used to process ASP.NET pages.
> 
> Anyone have any comments on this?
> Simon.
> 
> 

Mime
View raw message