Re: "RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-16 Thread Ganesha Shanmuganathan
Hi Dieter,

On Fri, 2004-07-16 at 13:10, Dieter Maurer wrote:
> Ganesha Shanmuganathan wrote at 2004-7-15 15:57 -0500:
> > ... RewriteMap files with the same name are identified ...
> >That is strange! It looks like a bug in mod_rewrite then. I checked the
> >source and found that it does compare by map name. Thanks for your
> >feedback
> 
> But the cache is not taken from a global variable but resolved
> via a local resource.
> 
> I am not sure what this local resource is (I am no Apache expert).
> But, I expect that it is virtual host specific.

>From what I understand, it is stored as static global (as APR table with
APR mutex control for accessing by threads).

I changed it to use key,map_file_name and it works for me. I have a
writeup at http://www.izpug.org/Members/zeomega/mod_rewrite, for more
information in case you are interested.

thanks,
ganesh

Zeomega LLC
Open minds' Open Solutions

Plano, Texas, USA
Bangalore, India
phone: 972-731-6750
http://www.zeomega.com

___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


Re: "RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-16 Thread Dieter Maurer
Ganesha Shanmuganathan wrote at 2004-7-15 15:57 -0500:
> ... RewriteMap files with the same name are identified ...
>That is strange! It looks like a bug in mod_rewrite then. I checked the
>source and found that it does compare by map name. Thanks for your
>feedback

But the cache is not taken from a global variable but resolved
via a local resource.

I am not sure what this local resource is (I am no Apache expert).
But, I expect that it is virtual host specific.

-- 
Dieter
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


Re: "RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-15 Thread Ganesha Shanmuganathan
Hi,

On Thu, 2004-07-15 at 15:28, Dieter Maurer wrote:
> Ganesha Shanmuganathan wrote at 2004-7-14 17:26 -0500:
> > ...
> >> Now, we use RewriteMaps only when the map files are very small
> >> (not more than some dozen entries).
> >That is interesting to know. Right now, we use multiple map files but
> >each is small. Is there anyother way to do load balncing with Zope
> >without Rewrite ?
> 
> We use a load balancer (a piece of hardware) for this.
> 
> Alternatively, "pond" (or similar) is a software load balancer
> implemented in Python.
> 
Thanks . I will be sure to check out pond and backhand as well as
mentioned by Jan-Wijbrand.
> >> 
> >> > ... maps with the same name ...
> >> >The problem is the cache treats both the file as the same since they
> >> >have the same name! Hence if you visit foo.com first, the data stored in
> >> >foomap.txt is returned from the cache next time you visit foo.com or
> >> >bar.com. This causes apache to redirect into the wrong zope site.
> >> 
> >> We did not observe this behaviour...
> >btw, Did you use the same map name (like, in different sections maybe)
> >for the different map files.
> 
> Yes. The same map file name mapping to different files in different
> virtual hosts.

That is strange! It looks like a bug in mod_rewrite then. I checked the
source and found that it does compare by map name. Thanks for your
feedback

ganesh

Zeomega LLC
Open minds' Open Solutions

Plano, Texas, USA
Bangalore, India
phone: 972-731-6750
http://www.zeomega.com

___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


Re: "RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-15 Thread Dieter Maurer
Ganesha Shanmuganathan wrote at 2004-7-14 17:26 -0500:
> ...
>> Now, we use RewriteMaps only when the map files are very small
>> (not more than some dozen entries).
>That is interesting to know. Right now, we use multiple map files but
>each is small. Is there anyother way to do load balncing with Zope
>without Rewrite ?

We use a load balancer (a piece of hardware) for this.

Alternatively, "pond" (or similar) is a software load balancer
implemented in Python.

>> 
>> > ... maps with the same name ...
>> >The problem is the cache treats both the file as the same since they
>> >have the same name! Hence if you visit foo.com first, the data stored in
>> >foomap.txt is returned from the cache next time you visit foo.com or
>> >bar.com. This causes apache to redirect into the wrong zope site.
>> 
>> We did not observe this behaviour...
>btw, Did you use the same map name (like, in different sections maybe)
>for the different map files.

Yes. The same map file name mapping to different files in different
virtual hosts.

-- 
Dieter
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


Re: "RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-14 Thread Ganesha Shanmuganathan
Hi,

On Wed, 2004-07-14 at 13:50, Dieter Maurer wrote:
> Ganesha Shanmuganathan wrote at 2004-7-13 16:40 -0500:
> > ...
> >The directive RewriteMap has unexpected behavior when it is used to
> >define more than one map with same map name in diffrent places. Normally
> >all the directives within a tag applies only to that tag. 
> 
> There are more strange things with Apache's "RewriteMap"s.
> Be warned: they are very inefficiently implemented for large maps!
> 
>   We used such maps to let Apache serve static CMF content
>   as folkore reports that Apache is an order of magnitude
>   faster than Zope in serving static content.
> 
>   It turned out that the solution using Apache RewriteMaps was 
>   slower than directly serving this content from Zope --
>   by a factor of 5!
> 
>   The explanation: Apache caches only single successful lookups
>   in the map file. Each access to a key not in the cache
>   results in parsing the map file until the key is found -- the
>   whole map file when it does not contain the key.
>   For larger map files, this has desastrous effects.
> 
> Now, we use RewriteMaps only when the map files are very small
> (not more than some dozen entries).
That is interesting to know. Right now, we use multiple map files but
each is small. Is there anyother way to do load balncing with Zope
without Rewrite ?
> 
> > ... maps with the same name ...
> >The problem is the cache treats both the file as the same since they
> >have the same name! Hence if you visit foo.com first, the data stored in
> >foomap.txt is returned from the cache next time you visit foo.com or
> >bar.com. This causes apache to redirect into the wrong zope site.
> 
> We did not observe this behaviour...
btw, Did you use the same map name (like, in different sections maybe)
for the different map files. That is what is causing it to fail. It is
not a big issue but just wanted to confirm. Directives within one
 tag should not have any effect on others. 

thanks,
ganesh

Zeomega LLC
Open minds' Open Solutions

Plano, Texas, USA
Bangalore, India
phone: 972-731-6750
http://www.zeomega.com

___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )


"RewriteMap"s inefficient (was: [Zope-dev] Apache Mod_rewrite question)

2004-07-14 Thread Dieter Maurer
Ganesha Shanmuganathan wrote at 2004-7-13 16:40 -0500:
> ...
>The directive RewriteMap has unexpected behavior when it is used to
>define more than one map with same map name in diffrent places. Normally
>all the directives within a tag applies only to that tag. 

There are more strange things with Apache's "RewriteMap"s.
Be warned: they are very inefficiently implemented for large maps!

  We used such maps to let Apache serve static CMF content
  as folkore reports that Apache is an order of magnitude
  faster than Zope in serving static content.

  It turned out that the solution using Apache RewriteMaps was 
  slower than directly serving this content from Zope --
  by a factor of 5!

  The explanation: Apache caches only single successful lookups
  in the map file. Each access to a key not in the cache
  results in parsing the map file until the key is found -- the
  whole map file when it does not contain the key.
  For larger map files, this has desastrous effects.

Now, we use RewriteMaps only when the map files are very small
(not more than some dozen entries).

> ... maps with the same name ...
>The problem is the cache treats both the file as the same since they
>have the same name! Hence if you visit foo.com first, the data stored in
>foomap.txt is returned from the cache next time you visit foo.com or
>bar.com. This causes apache to redirect into the wrong zope site.

We did not observe this behaviour...

-- 
Dieter
___
Zope-Dev maillist  -  [EMAIL PROTECTED]
http://mail.zope.org/mailman/listinfo/zope-dev
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://mail.zope.org/mailman/listinfo/zope-announce
 http://mail.zope.org/mailman/listinfo/zope )