Hola lista, Espero se encuentren muy bien, les escribo porque tengo una duda con respecto a si estoy realizando bien las actualizaciones en una tabla o tal vez sea algo del diseño de la solución. Tengo una tabla A que busca llevar el inventario de productos, que podría describirse así:
Id int nombre text precio numeric(8,2) cantidad int disponibilidad int Cada vez que se crea un nuevo registro se define la cantidad y la disponibilidad que son las mismas. También se tiene un check constraint donde cantidad >= disponibilidad. Por otro lado cuando se tiene otra tabla B que representa las compras: Id int producto_id int Cada vez que se agrega un registro en B se ejecuta un trigger que hace un update a A para restar disponibilidad con un: UPDATE A SET disponibilidad = disponibilidad - 1 WHERE id = New.id El problema es que estas tablas pueden tener mucha concurrencia, muchos usuarios finales intentando comprar y por temporalidad compran el mismo producto y cuando hay picos de usuarios el update puede llegar a tardar hasta 60 segundos o mas en completarse. Mi duda es si hay alguna forma de mejorar el rendimiento de este update. De antemano muchas gracias. --