Foros del Web » Programando para Internet » PHP »

Limite de memoria - optimización

Estas en el tema de Limite de memoria - optimización en el foro de PHP en Foros del Web. Buenas, les cuento mi inconveniente: Tengo una función que es bastante costosa ya que actualiza todos los procesos de produccion de una planta. Es una ...
  #1 (permalink)  
Antiguo 23/06/2011, 11:30
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 11 meses
Puntos: 6
Limite de memoria - optimización

Buenas, les cuento mi inconveniente:
Tengo una función que es bastante costosa ya que actualiza todos los procesos de produccion de una planta.
Es una función recursiva, con 3 funciones recursivas dentro de ella.
En este momento me arroja un error fatal de memoria exhausta, sin estar en un bucle infinito y teniendo en el php.ini un limite de memoria de 16MB .
Lo que queria saber es si esto es poco y hasta que cantidad de memoria puede usar una función sin tener q pensar en rediseñarla por los recursos q consume.

Desde ya, muchas gracias.
  #2 (permalink)  
Antiguo 23/06/2011, 11:58
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Limite de memoria - optimización

"Es una función recursiva, con 3 funciones recursivas dentro de ella."
" sin estar en un bucle infinito"
cómo sabes que no es infinito ??
  #3 (permalink)  
Antiguo 23/06/2011, 12:06
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Limite de memoria - optimización

Porque verifique en profundidad las 3 y todas retornan algo si o si, o true o false.
Al margen, la pregunta es sobre la cantidad de memoria no sobre mi función jeje aclaro para no centrar la discusión en ese punto.
  #4 (permalink)  
Antiguo 23/06/2011, 12:40
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Limite de memoria - optimización

ok, me ajusto a tu pregunta

límite de tiempo de proceso de un script php
set_time_limit

Límite de memoria usado por un script
ini_set('memory_limit','64M');
  #5 (permalink)  
Antiguo 23/06/2011, 12:59
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Limite de memoria - optimización

Agradezco tu ayuda, pero o me exprese mal o no me entendés adonde apunto.
Se que ese parámetro se puede modificar, el tema es que quería saber hasta donde es optimo estirar ese limite.
Es relativo pero, por ahi alguien con conocimientos de utilizacion de recursos y experiencia puede decirme : "Mira si una función esta consumiendo mas xxMB evidentemente esta mal diseñada y hay q repensarla ya que afecta al funcionamiento" .
Espero haber sido mas claro.
Saludos!
  #6 (permalink)  
Antiguo 23/06/2011, 13:25
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: Limite de memoria - optimización

mira nosotros usamos 256mb, y nos trae ese mismo error cuando cargamos muchos datos en memoria justamente.

una solucion es x ej si traes 100.000 registros los traigas paginados, de a poco uso lo que necesito y voy liberando lo que ya no es instanciado.
  #7 (permalink)  
Antiguo 23/06/2011, 13:31
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años, 6 meses
Puntos: 322
Respuesta: Limite de memoria - optimización

Por qué en tu función no divides procesos?
Es decir, se procesan por ejemplo 100 datos, sleep 5 o 10 segundos, otros 100 datos, sleep, etc...
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #8 (permalink)  
Antiguo 23/06/2011, 13:32
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: Limite de memoria - optimización

igual es super raro tener 3 funciones recursivas en la misma funcion!!!
  #9 (permalink)  
Antiguo 23/06/2011, 14:14
 
Fecha de Ingreso: diciembre-2008
Mensajes: 190
Antigüedad: 15 años, 11 meses
Puntos: 6
Respuesta: Limite de memoria - optimización

Gracias por sus aportes.
Patriarka, puede parecer raro para programar un foro, pero en un sistema de producción no creo que sea tan raro.
  #10 (permalink)  
Antiguo 23/06/2011, 14:18
Avatar de Patriarka  
Fecha de Ingreso: enero-2011
Ubicación: Moreno, Buenos Aires, Argentina
Mensajes: 2.851
Antigüedad: 13 años, 9 meses
Puntos: 288
Respuesta: Limite de memoria - optimización

resuminos que hace esa funcion tan recursiva para ponernos en contexto

Etiquetas: limite, memoria, optimización
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 22:27.