Foros del Web » Programación para mayores de 30 ;) » Programación General »

Método de pooling más eficiente

Estas en el tema de Método de pooling más eficiente en el foro de Programación General en Foros del Web. El problema es el siguiente: Tenemos una máquina de producción y un sensor de la misma conectado a un pc. Cada vez que un pedido ...
  #1 (permalink)  
Antiguo 20/07/2005, 21:24
 
Fecha de Ingreso: julio-2005
Mensajes: 3
Antigüedad: 18 años, 9 meses
Puntos: 0
Método de pooling más eficiente

El problema es el siguiente: Tenemos una máquina de producción y un sensor de la misma conectado a un pc.
Cada vez que un pedido entra a fabricarse, el sensor lee el número de pedido. En el pc existe una base de datos en access (mdb) con una lista de pedidos que van a fabricarse en el día. Para cada pedido se almacena un registro en una tabla, con cierta información, pero nos importa un campo que indica si está en proceso de fabricación o no.
El caso es que yo me encuentro con este sistema, y me piden desarrollar un programa que cada vez que entre un nuevo pedido a fabricar, muestre un mensaje determinado (que tengo que buscar en la BD de un servidor etc..). Como parece ser que no hay manera de que una BD access (mediante un trigger, macro o lo que fuese) ejecute un comando, lance un programa, comience una conversación DDE (cualquier cosa que sirva para notificar de forma asíncrona) cuando cambie el campo de estado de un pedido, me he visto en dos posibles alternativas:

1. Consultar la BD cada cierto tiempo y ver si ha entrado un nuevo pedido.
2. Mirar la fecha de modificación del fichero *.mdb y si ha cambiado mirar si ha entrado un nuevo pedido.

La mejor opción hubiera sido utilizar el sensor, pero claro, ni tengo manual, ni software ni nada, ahora msimo el sensor lo lee un programa totalmente cerrado para hacer sus cosas, y de cuyo código no dispongo.

Decir que el responsable de sección me ha dicho que los pedidos entran con una frecuencia de una hora, pero claro, yo no puedo arriesgarme a poner un temporizador de una hora. Pondría un temporizador algo menor y el resto del tiempo me pasaría haciendo consultas (opción 1 o 2) hasta que llegara el pedido.
La opción 2 parece en principio más eficiente si se va a iterar mucho, ya que supongo que cuesta menos ver la fecha de modificación de un fichero que hacer una consulta a una base de datos de búsqueda por un campo que ni siquiera está indexado. ¿Es así? ¿Qué opinais?.

Saludos.
  #2 (permalink)  
Antiguo 20/07/2005, 23:39
Avatar de Eternal Idol  
Fecha de Ingreso: mayo-2004
Ubicación: Lucentum
Mensajes: 6.192
Antigüedad: 19 años, 11 meses
Puntos: 74
Tal vez podes crear un hilo que ejecute el codigo de la 2 opcion cada 2 minutos por ejemplo. En teoria esta operacion es bastante rapida como para poder hacerla sin afectar en lo absoluto al rendimiento de la maquina.
__________________
¡Peron cumple, Evita dignifica! VIVA PERON CARAJO
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:07.