Articulo de referencia

Base de datos como IPC

En programación informática , el uso de bases de datos como comunicación entre procesos ( IPC) puede considerarse un antipatrón, donde una tabla persistente en disco se utiliza ...

En programación informática , el uso de bases de datos como comunicación entre procesos ( IPC) puede considerarse un antipatrón, donde una tabla persistente en disco se utiliza como cola de mensajes para la comunicación rutinaria entre procesos (IPC) o el procesamiento de datos suscritos. Si el rendimiento de la base de datos es una preocupación, existen alternativas como los sockets , los sockets de red o las colas de mensajes .

El científico informático británico Junade Ali definió el antipatrón de base de datos como comunicación entre procesos (IPC) como el uso de una base de datos para "programar trabajos o poner en cola tareas para su finalización", señalando que este antipatrón se centra en el uso de una base de datos para mensajes temporales en lugar de datos persistentes. [ 1 ]

Controversia

El problema surge cuando hay un problema de rendimiento y se justifica la incorporación de sistemas (y servidores) adicionales. En cuanto al rendimiento, los avances recientes en sistemas de bases de datos proporcionan mecanismos más eficientes para la señalización y la mensajería, y estos sistemas también admiten tablas en memoria (no persistentes).

Existen bases de datos con mecanismos de notificación integrados, como PostgreSQL, [ 2 ] [ 3 ] SQL Server, [ 4 ] y Oracle. [ 5 ] Estos mecanismos y las futuras mejoras de los sistemas de bases de datos pueden hacer que la gestión de colas sea mucho más eficiente y evitar la necesidad de configurar un sistema de cola de señalización o mensajería independiente, junto con la sobrecarga del servidor y la administración.

Aunque MySQL no ofrece soporte directo para notificaciones, [ 6 ] existen algunas soluciones alternativas. Sin embargo, estas se considerarían no estándar y, por lo tanto, más difíciles de mantener. [ 7 ]

Véase también

Referencias

  1. Ali, Junade (septiembre de 2016). Dominando los patrones de diseño de PHP . Birmingham, Inglaterra: Packt Publishing Limited. págs. 45–46 . ISBN  978-1-78588-713-0Archivado del original el 1 de junio de 2020. Consultado el 11 de diciembre de 2017 .
  2. Postgresql.org 9 de septiembre de 2020
  3. Postgresql.org 9 de septiembre de 2020
  4. Nic Ferrier. 15 de agosto de 2018
  5. docs.oracle.com. 9 de septiembre de 2020
  6. MaríaDB Jira. 2020 septiembre 09
  7. 5 formas sutiles en las que estás usando MySQL como una cola y por qué te perjudicará Archivado el 12 de junio de 2018 en Wayback Machine Schwartz, Baron. 14 de septiembre de 2011.