Aplicación de consola que se lleva todo el tiempo de procesador

17/05/2006 - 11:20 por Jesús Bosch | Informe spam
Buenos días,

Tengo una aplicación de consola que hace un uso intensivo de la BD, y se
ejecuta cada X tiempo con el programador de tareas.

El problema es que cuando se ejecuta, ocupa el 80% del tiempo de procesador.

Me gustaría saber si existe el modo de hacer que el proceso no pueda superar
un determinado porcentaje de los recursos del sistema o algo por el estilo,
para no perjudicar al resto de servicios en el servidor donde se ejecuta.

Gracias y saludos,

Jesús

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
17/05/2006 - 13:05 | Informe spam
"Jesús Bosch" wrote in message
news:
Tengo una aplicación de consola que hace un uso intensivo de la BD, y se
ejecuta cada X tiempo con el programador de tareas.

El problema es que cuando se ejecuta, ocupa el 80% del tiempo de
procesador.

Me gustaría saber si existe el modo de hacer que el proceso no pueda
superar un determinado porcentaje de los recursos del sistema o algo por
el estilo, para no perjudicar al resto de servicios en el servidor donde
se ejecuta.



Cámbiale la prioridad. Si lo ruedas con prioridad baja
(Process.PriorityClass=BelowNormal), solo consume tiempo de procesador
cuando no lo necesita ningún otro proceso de mayor prioridad, con lo que no
te tienes que preocupar si ocupa el 80% de cpu, porque en caso de que
consiga ocupar ese porcentaje significa que ningún otro proceso la necesita.
Sin embargo, si hace uso intensivo de la BD y la BD está en la misma
máquina, puede ser que la cpu te la esté consumiendo el programa servidor de
BD, con lo que sería inútil bajarle la prioridad a tu aplicación de consola.
En este caso, lo que puedes hacer es meterle a tu programa un Sleep entre
llamada y llamada a la base de datos para que ceda ciclos de cpu a otras
aplicaciones.
Respuesta Responder a este mensaje
#2 Jesús Bosch
18/05/2006 - 10:54 | Informe spam
gracias, me ha sido muy útil tu consejo

JB

"Alberto Poblacion"
escribió en el mensaje news:
"Jesús Bosch" wrote in message
news:
Tengo una aplicación de consola que hace un uso intensivo de la BD, y se
ejecuta cada X tiempo con el programador de tareas.

El problema es que cuando se ejecuta, ocupa el 80% del tiempo de
procesador.

Me gustaría saber si existe el modo de hacer que el proceso no pueda
superar un determinado porcentaje de los recursos del sistema o algo por
el estilo, para no perjudicar al resto de servicios en el servidor donde
se ejecuta.



Cámbiale la prioridad. Si lo ruedas con prioridad baja
(Process.PriorityClass=BelowNormal), solo consume tiempo de procesador
cuando no lo necesita ningún otro proceso de mayor prioridad, con lo que
no te tienes que preocupar si ocupa el 80% de cpu, porque en caso de que
consiga ocupar ese porcentaje significa que ningún otro proceso la
necesita.
Sin embargo, si hace uso intensivo de la BD y la BD está en la misma
máquina, puede ser que la cpu te la esté consumiendo el programa servidor
de BD, con lo que sería inútil bajarle la prioridad a tu aplicación de
consola. En este caso, lo que puedes hacer es meterle a tu programa un
Sleep entre llamada y llamada a la base de datos para que ceda ciclos de
cpu a otras aplicaciones.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida