2011-01-14 19 views
6

Tengo RewriteMap configurado para usar una aplicación externa para reescribir la URL entrante. Funciona genial. Mi preocupación ahora es el enhebrado y el rendimiento. ¿Hay alguna forma de que la solicitud externa procese solicitudes múltiples? Estamos usando un RewriteLock ahora, de modo que solo un hilo a la vez envía una solicitud a la aplicación externa, pero esto parece un cuello de botella de rendimiento.mod_rewrite, RewriteMap, RewriteLock y threading

Cualquier orientación sería apreciada. Gracias

+0

Estoy subiendo su pregunta, porque * RewriteLock * fue la respuesta a mi pregunta :-D ¡Gracias! – commonpike

+0

Habría sido bueno si hay algún tipo de soporte de agrupación. –

Respuesta

0

me ha encontrado interesante esta dicussion con un revelador Apache: http://www.webmasterworld.com/apache/3124928.htm

El efecto cuello de botella no hace miedo de ellos. Si su programa de mapeo es rápido, debería estar bien. Quizás puedas probar si existe este efecto de cuello de botella.

El bloqueo se utiliza para evitar que las solicitudes de subprocesos utilicen el código fuente de su prg al mismo tiempo. Parece difícil cambiar la forma en que funciona.

Nunca he usado reescribirMap de esta manera, prefiero usar archivos hash con él. ¿Tu redirección interna es dinámica? Si no, podrías hacer un archivo hash.

+0

Sí, es dinámico. Depende de una búsqueda en la base de datos, y la base de datos se actualiza constantemente, lo que dificulta el almacenamiento en caché. La aplicación externa que tengo es bastante rápida. – MonkeyWrench

+0

Así que tendrás que hacer pruebas, ¿cuál es tu tráfico? con un tráfico muy alto, puede paralelizar este cuello de botella potencial mediante el uso de varios servidores Apache, con varios servidores físicos o virtuales y balanceadores de carga. – regilero

+0

Probablemente tenga que ir por esa ruta, pero eso niega todas las razones para usar un servidor web multihilo como apache en primer lugar. Podría tener que escribir nuestro propio módulo. – MonkeyWrench