sql >> Base de Datos >  >> RDS >> Mysql

¿Matriz masiva de PHP frente a base de datos MySQL?

Las otras respuestas son correctas, pero por las razones equivocadas.

Mantener los datos en una matriz de PHP será mucho más rápido de obtener que desde una base de datos, incluso si el conjunto de datos está almacenado en la memoria caché. El problema es que en las arquitecturas PHP normales, cada solicitud es manejada por un proceso separado. Por lo tanto, cada solicitud que necesite acceso a los datos deberá cargar todo el conjunto de datos en la memoria. Esto lleva tiempo. El punto en el que se vuelve más costoso realizar esta operación en lugar de recuperar elementos de una base de datos depende de muchos factores diferentes, pero como regla general, se trata de alrededor de 100 registros. Hay aplicaciones en las que este modelo tiene sentido, pero se basan en volúmenes de datos muy pequeños y en un proceso controlado de cambio/gestión de datos.

Su próximo problema es que probablemente querrá registrar algunas transacciones contra el stock, eso significa cambiar los datos, y eso significa serializar el acceso para garantizar que no ocurran 2 transacciones separadas al mismo tiempo. Es imposible implementar esto en PHP (sin un demonio dedicado para adjudicar) mientras no haya interbloqueos.

Si le está cobrando a alguien por implementar el código, debería ser absolutamente obvio que tratar de implementar esto en la memoria es una muy, muy mala idea.