Autor
|
Tema: [Rendimiento] ejecucion de un script por mucho tiempo !??? (Leído 5,666 veces)
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Buenas. Tengo un servidor el cual realiza ciertas tareas y hasta ahorita todo marcha bien... El detalle es que estoy por implementar una nueva actividad, por lo cual requiero que mi servidor ejecute algo durante 12 horas, pero no es una ejecucion constante del archivo (que este procesando), sino que de esas 12 horas, va a ejecutarse digamos 1 minutos y va a dormir 11 minutos, despues ejecuta otra vez 1 minutos y dormir 11 minutos, al completarse 6 horas (la mitad) dormira por 30 minutos (1 hora), y se volve a ejecutar una tarea de 1 minutos y dormir 11 minutos, etc, etc.... finalizara a las 12 horas de ejecucion. Tengo el codigo en dos lenguajes, en PHP y en C, en ambos para dormir uso "sleep()", el detalle es que, nose si esto vaya a afectar a mi servidor, ya que este mismo server me sirve de DNS y HTTP.... ya que no tengo un segundo server que haga esta tarea. Ya sea el code en PHP o C, estos se piensan invocar automaticamente a la misma hora usando CRON y el modo de ejecucion a realizar es: # usando el code PHP shell# php /root/public_html/tareas.php usuario clave mi_tarea
# o bien usando el code en C shell# /root/public_html/mitarea -u usuario -p clave -d mi_tarea Actualmente mi server atiende aproximadamente 2,500 visitas mensuales. Ustedes que opinan ? NOTA: ya se como hacerlo, solo quiero su recomendacion si el proceso se ejecuta tanto tiempo, consumira mi server ?Saludos !
|
|
« Última modificación: 19 Marzo 2012, 14:33 pm por Diabliyo »
|
En línea
|
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Por que no usas mejor las Tareas Programadas?
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Por que no usas mejor las Tareas Programadas?
??? no te entiendo, porfavor explicate mas... es dificil para mi bola magica leer la realidad del mensaje xD
|
|
|
En línea
|
|
|
|
Pablo Videla
|
??? no te entiendo, porfavor explicate mas... es dificil para mi bola magica leer la realidad del mensaje xD crontab, busca sobre eso, puede que te ayude
|
|
|
En línea
|
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
crontab, busca sobre eso, puede que te ayude
Ya se que es crontab, y se como usarlo, la pregunta va sobre recomendacion... Lee bien mi post porfavor, no busco me digan como hacer las cosas, sino su opinion sobre si lo hago, se consumira mucho el server ? Saludos !
|
|
|
En línea
|
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Ya se que es crontab, y se como usarlo, la pregunta va sobre recomendacion...
Lee bien mi post porfavor, no busco me digan como hacer las cosas, sino su opinion sobre si lo hago, se consumira mucho el server ?
Saludos !
Claro que se consumiría el server, eso dejando a un lado en donde lo ejecutarías, es decir, si tienes tu propio server que obviamente tiene que estar up las 24hrs ps no le veo mucho problema pero intenta dejar un programa corriendo por 12 hrs seguidas haciendo sleep varias veces y ve la memoria que esta ocupando la tarea, vamos tío, con CronJobs te ahorarrias muchas cosas, solo tendrías que hacer que se ejecute el programa de 1 minuto cada determinado tiempo y te ahorras el sleep y tanta cagada... Y si sabes bien sobre CronJobs sabes que aparte de que puedes poner diferentes tareas hasta cada minuto y no hay ningún problema ya que tiene un muy buen manejo de recursos (a menos de que quieras hacer el tuyo xD). Mas claro: mi recomendación -> UsaCronJobs(!!); Salduos!
|
|
« Última modificación: 19 Marzo 2012, 16:58 pm por mokoMonster »
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
~ Yoya ~
Wiki
Desconectado
Mensajes: 1.125
|
Supongo que si o por lo menos memoria. Recuerda que PHP librera memoria automáticamente al finalizar el script, una opción también es comenzar a liberar memoria antes de entrar al sleep.
|
|
|
En línea
|
Mi madre me dijo que estoy destinado a ser pobre toda la vida. Engineering is the art of balancing the benefits and drawbacks of any approach.
|
|
|
Diabliyo
Desconectado
Mensajes: 1.441
shell# _
|
Supongo que si o por lo menos memoria. Recuerda que PHP librera memoria automáticamente al finalizar el script, una opción también es comenzar a liberar memoria antes de entrar al sleep.
Esa si no me la sabia, me darias mas info de esto ? Crees que seria el mismo problema si corriese el script de C ? Claro que se consumiría el server, eso dejando a un lado en donde lo ejecutarías, es decir, si tienes tu propio server que obviamente tiene que estar up las 24hrs ps no le veo mucho problema pero intenta dejar un programa corriendo por 12 hrs seguidas haciendo sleep varias veces y ve la memoria que esta ocupando la tarea, vamos tío, con CronJobs te ahorarrias muchas cosas, solo tendrías que hacer que se ejecute el programa de 1 minuto cada determinado tiempo y te ahorras el sleep y tanta cagada... Y si sabes bien sobre CronJobs sabes que aparte de que puedes poner diferentes tareas hasta cada minuto y no hay ningún problema ya que tiene un muy buen manejo de recursos (a menos de que quieras hacer el tuyo xD).
Mas claro: mi recomendación -> UsaCronJobs(!!);
Salduos!
Usaria cronjobs el detalle es que el programa en PHP o C (lo tengo en ambos lenguajes), consulta de la BDD y segun el numero de tareas, realiza un calculo asi como: $cons= consultar( "NOTIFICACIONES" ); # obtiene todas las notificaciones $cont= mysql_num_rows($cons); # numero de notificaciones del dia a realizar $horas= 6; # en solo 6 horas deben salir todas las notificaciones $rango= (($horas*60)*60)/($cont); # tiempo de espera (en segundos) entre cada notificacion { enviar_notificacion_por_socket( $buf ); }
Podrian opinar que envie todas las notificaciones de palmo, pero no puedo, tengo que hacerlo paulatinamente ! Como ven es impredecible el numero de notificaciones que el sistema tendria que hacer, igual y es solo 1, o bien podrian ser 100 (o mas)... Les repito, el codigo lo tengo en C y PHP, si corro el script con cron, veo que muchos opinan que el script en PHP consumira ram, pero... si fuese en C, creen que seria mejor ? o seria lo mismo ? Que me recomiendan ?
|
|
« Última modificación: 21 Marzo 2012, 01:16 am por Diabliyo »
|
En línea
|
|
|
|
~ Yoya ~
Wiki
Desconectado
Mensajes: 1.125
|
pues eliminando variables, arrays, recursos, etc... Asi liberas memoria.
Quizas muestro un PoC pero de momento no tengo mi fedora para probar y paso de hacerlo en window.
Igual, si lo tienes en c y php, yo elejiria C...
saludos.
|
|
|
En línea
|
Mi madre me dijo que estoy destinado a ser pobre toda la vida. Engineering is the art of balancing the benefits and drawbacks of any approach.
|
|
|
mokoMonster
Desconectado
Mensajes: 301
<? ...
|
Esa si no me la sabia, me darias mas info de esto ? Crees que seria el mismo problema si corriese el script de C ? Usaria cronjobs el detalle es que el programa en PHP o C (lo tengo en ambos lenguajes), consulta de la BDD y segun el numero de tareas, realiza un calculo asi como: $cons= consultar( "NOTIFICACIONES" ); # obtiene todas las notificaciones $cont= mysql_num_rows($cons); # numero de notificaciones del dia a realizar $horas= 6; # en solo 6 horas deben salir todas las notificaciones $rango= (($horas*60)*60)/($cont); # tiempo de espera (en segundos) entre cada notificacion { enviar_notificacion_por_socket( $buf ); }
Podrian opinar que envie todas las notificaciones de palmo, pero no puedo, tengo que hacerlo paulatinamente ! Como ven es impredecible el numero de notificaciones que el sistema tendria que hacer, igual y es solo 1, o bien podrian ser 100 (o mas)... Les repito, el codigo lo tengo en C y PHP, si corro el script con cron, veo que muchos opinan que el script en PHP consumira ram, pero... si fuese en C, creen que seria mejor ? o seria lo mismo ? Que me recomiendan ? Y que pasa cuando acaba con la primera "notificacion"? Si sigue con la segunda o se queda en sleep?
|
|
|
En línea
|
"Se necesitaron unos instantes para cortarle la cabeza, pero se necesitara un siglo para producir otra igual." Lagrange
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Calcular tiempo de ejecución de un script en PHP
PHP
|
madpitbull_99
|
2
|
3,662
|
19 Abril 2011, 18:46 pm
por [u]nsigned
|
|
|
rendimiento peticiones/segundo y tiempo de respuesta de...
Desarrollo Web
|
Kase
|
2
|
4,451
|
20 Abril 2011, 08:43 am
por Kase
|
|
|
Duda ejecución script php
PHP
|
Kaxperday
|
6
|
1,982
|
17 Septiembre 2014, 19:27 pm
por MinusFour
|
|
|
Ver rendimiento de CPU y tiempo de demora en proyecto
GNU/Linux
|
etillo
|
3
|
2,305
|
9 Abril 2015, 00:52 am
por MinusFour
|
|
|
El HDR afecta mucho al rendimiento de juegos, sobre todo en tarjetas de NVIDIA
Noticias
|
wolfbcn
|
0
|
1,386
|
25 Julio 2018, 21:41 pm
por wolfbcn
|
|