Tal,
 
My view is that Directory is such a critical piece of Restlet that if we
find serious performance issues with it, we should fix them as soon as
possible rather than spending time working around. If somebody would have
time to do serious comparisons, that would help us realize how far behind
alternatives we are.
 
>From a high level design, there is nothing I see that creates a bottleneck.
Used in combination with the Grizzly connector, you can even achieve direct
disk to socket transfer using NIO. All extra features that could slow down
the serving should have a flag.
 
Best regards,
Jerome Louvel
--
Restlet ~ Founder and Lead developer ~  <http://www.restlet.org/>
http://www.restlet.org
Noelios Technologies ~ Co-founder ~  <http://www.noelios.com/>
http://www.noelios.com
 

  _____  

De : Tal Liron [mailto:tal.li...@threecrickets.com] 
Envoyé : mercredi 8 avril 2009 19:36
À : discuss@restlet.tigris.org
Objet : Re: DirectoryResource throws/logs useless exceptions for CLAP
protocol


This is something that concerns me, too, as I'd much rather have my
applications purely in the Restlet API without reverting specifically to the
connector. I've been using Directory, too, in production and without any
issue except my uneasiness about performance. I have not dared use it (yet)
in performance-intensive situation.

I'm wondering if it's worth, in addition to Restlet's Directory, to support
a simple connector-agnostic wrapper that would use the underlying
DefaultServlet or whatever. The Grizzly and Jetty projects already are doing
superb work on optimization of serving static files, and we might as well
wrap it! I see it as a lowest-common-denominator kind of API, which just
sets up a filesystem-to-HTTP server and offers minimal fiddling.

Of course, I'm not expecting such a wrapper to return nice Restlet
representations which we can Filter. It would be a "black box" as far as the
Restlet API is concerned. Still, I think this would be very useful. Many
users (myself included) turn to Restlet in order to create performative
applications. Serving static files should be part and parcel of this.

-Tal

Jerome Louvel wrote: 

Dave,
 
Thanks for looking at the details on Directory implementation. This are
certainly opportunities to refactor and optimize this class. As you found
out, it is handling pretty complex stuff. We would welcome some
contributions in this area. 
 
We have also received a report regarding performance issue of Directory used
with the WAR client that we need to inspect. This might be due to the same
reason:
 
"Improve performance of WAR client"
http://restlet.tigris.org/issues/show_bug.cgi?id=736
 
Regarding the production ready status, we have been using this class on all
our Web sites with no trouble so far.
 
Would you mind creating a bug report for what you found?

 

Best regards,
Jerome Louvel
--
Restlet ~ Founder and Lead developer ~  <http://www.restlet.org/>
http://www.restlet.org
Noelios Technologies ~ Co-founder ~  <http://www.noelios.com/>
http://www.noelios.com
 

  _____  

De : Rob Heittman [mailto:rob.heitt...@solertium.com] 
Envoyé : mardi 7 avril 2009 14:26
À : discuss@restlet.tigris.org
Objet : Re: DirectoryResource throws/logs useless exceptions for CLAP
protocol


I also wish it were a bit faster. We do serve several hundred thousand
impressions out of Directory every month, but we serve several million using
thinner Resources not wrapped in Directory -- not sure what would happen if
we wrapped those in Directory.


On Tue, Apr 7, 2009 at 1:58 AM, David Fogel <carrotsa...@gmail.com> wrote:


The Directory class is the only built-in way for plain, non-servlet,
Restlet apps to serve static content. Should we consider it
"production"-ready w.r.t. performance under load? Another way of
asking this: is the Directory class a reasonable substitute for, e.g.
Jetty's DefaultServlet?

------------------------------------------------------
http://restlet.tigris.org/ds/viewMessage.do?dsForumId=4447&dsMessageId=1633509

Reply via email to