PHP, memcached + DB en general, escala bien, pero puede haber maneras de hacerlo con menores costos, es decir, una pila que puede manejar más solicitudes concurrentes por máquina.
Dada su comentario aquí ...
Mi objetivo no es un sistema escalable grande, sólo un simple conjunto de tecnología. No estoy creando una base de datos, una búsqueda, un rastreador, etc. Solo una simple solicitud, consulta, responde y almacena. ¿Alguna recomendación para la tecnología apilada para mi propósito?
.. parece que la parte de la base de datos puede ser solucionada por Amazon's S3 ([¿qué?!?] [1]), suponiendo que solo necesita localizar elementos por clave. Eso también le daría Cloudfront para lecturas, si no le importa el eventual consistency.
Mientras que algo del lado del servidor que usa async IO para manejar las solicitudes debe aumentar significativamente el número de solicitudes concurrentes que cada máquina puede manejar. Como otro cartel ya dijo tornado (bret.appspot.com/entry/tornado-web-server) valdría la pena echarle un vistazo aquí - no he visto una API para async IO que sea más amigable.
Es probable que todavía necesite memcached para mantener las lecturas rápidas, pero desea ver que el cliente de memcached no va a terminar bloqueando el proceso del servidor mientras intenta hacer solicitudes concurrentes - PHP normalmente no tendría este problema ya que cada proceso PHP (o Apache) tiene su propia conexión memcached y solo está haciendo una cosa a la vez. This python client - debe admitir async IO - la libmemcached subyacente tiene soporte para solicitudes asincrónicas.
Lo mismo ocurre con las solicitudes HTTP del servidor a S3. ¿Cómo maneja las solicitudes simultáneas allí? boto parece usar un grupo de conexiones para eso, cada conexión tiene un socket diferente abierto. ¿Uso de memoria?
Descargo de responsabilidad: Estoy siendo un arquitecto de sillón aquí - en realidad no he hecho esto y el consejo más inteligente podría ser terminar el proyecto a tiempo con la pila que conoces bien y que no van a fallar.
Lo sentimos acerca de los vínculos
[1] - http://www.nektoon.com/t/1Z99Daaa
Mi objetivo no es un gran sistema escalable, solo una simple tecnología. No estoy creando una base de datos, Búsqueda, rastreador, etc. Solo una simple solicitud, consulta, responde y almacena. ¿Alguna recomendación para la tecnología apilada para mi propósito? –
Por lo que he visto, puedes construir un sistema escalable con cualquier pila de tecnología. "De miles a diez- miles de consultas por segundo "es realmente alto, por lo que para mí es un" gran sistema escalable ". Cualquier acumulación de tecnología tiene su historia de éxito. Si desea soportar este cargo, debe leer este sitio web (y tal vez considere usar un clave/valor almacenar como CouchDB en lugar de una base de datos relacional) –