Foros del Web » Programando para Internet » PHP » CodeIgniter »

Codeigniter, rendimiento

Estas en el tema de Codeigniter, rendimiento en el foro de CodeIgniter en Foros del Web. Hola a todos, espero que estén bien, hace cosa de 2 meses me pasaron un proyecto ya avanzado para retocar errores y arreglar cosas, etc ...
  #1 (permalink)  
Antiguo 10/09/2012, 11:08
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Codeigniter, rendimiento

Hola a todos, espero que estén bien, hace cosa de 2 meses me pasaron un proyecto ya avanzado para retocar errores y arreglar cosas, etc etc.
Está realizado con Codeigniter, es una red social bastante compleja y extensa.
Estoy usando la función $this->output->enable_profiler(TRUE);
para ver que cantidad de consultas se realizan al entrar al sitio, y mi sorpresa viene cuando veo que me dice que se están realizando mas de 2000 (dos mil) consultas mysql :o jotes:
La mayoria de estas consultas solo duran 0.0001 segundos, la pagina carga rápido, tiene un servidor dedicado muy potente.

Mi pregunta es: es correcto hacer 2000 consultas?????
o esto es un resultado que me tira codeigniter calculando los JOIN y demás?
Digo, quizás codegniter toma como una consulta cada pasada que se realiza en un JION, no se si me hago entender..

El sitio tiene siempre mas de 500 usuarios online, a veces llega a 1500 o mas

Saludos
y gracias
__________________
la la la
  #2 (permalink)  
Antiguo 10/09/2012, 17:19
Avatar de abimex
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: ~
Mensajes: 751
Antigüedad: 17 años, 9 meses
Puntos: 137
Respuesta: Codeigniter, rendimiento

pues si eso depende de cuantos datos se manejan, pero para un proyecto de ese tamaño yo hubiera optado por un framework mas optimizado y con mas herramientas como Symfony
  #3 (permalink)  
Antiguo 10/09/2012, 18:24
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Codeigniter, rendimiento

Pero 2000 consultas? cada vez que se entra a una sección del sitio? es normal? 2000????
__________________
la la la
  #4 (permalink)  
Antiguo 10/09/2012, 19:41
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 11 meses
Puntos: 845
Respuesta: Codeigniter, rendimiento

Pero ese número es por request ?, estas seguro que estas interpretando correctamente la data que te da el profiler ?
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 10/09/2012, 20:01
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Codeigniter, rendimiento

Dice que las QUERYS son 2000 , en otro sector del sitio tira 1375 , otro 900, y así
no se si estoy interpretando mal pero dice QUERY y me muestra la consulta

"SELECT * FROM .... etc etc "

jeje y hay 2000 de esas , yo creo que hay algo mal
__________________
la la la
  #6 (permalink)  
Antiguo 11/09/2012, 16:44
Avatar de SetheR  
Fecha de Ingreso: enero-2009
Mensajes: 265
Antigüedad: 15 años, 11 meses
Puntos: 44
Respuesta: Codeigniter, rendimiento

Sí, los estás interpretando bien. El profiling lo hace cada request (docs).

Revisa como te conectas a la base de datos (ORM, PDO, otros...). Puede que estén pidiendo a la BD pequeñas porciones de datos en tablas distintas. Si dices que tardan 0.0001 segundos puede que incluso ni se necesiten algunas de ellas

También deberías mirar si hay algún query que se repita (por ejemplo alguno metido en un bucle defectuoso).

Aunque 2000 me parecen bastante cantidad, sí.
  #7 (permalink)  
Antiguo 11/09/2012, 18:35
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Codeigniter, rendimiento

Cita:
Iniciado por SetheR Ver Mensaje
Sí, los estás interpretando bien. El profiling lo hace cada request (docs).

Revisa como te conectas a la base de datos (ORM, PDO, otros...). Puede que estén pidiendo a la BD pequeñas porciones de datos en tablas distintas. Si dices que tardan 0.0001 segundos puede que incluso ni se necesiten algunas de ellas

También deberías mirar si hay algún query que se repita (por ejemplo alguno metido en un bucle defectuoso).

Aunque 2000 me parecen bastante cantidad, sí.
Gracias. entonces no estoy loco, es mucho 2000.
Si, yo también creo que hay metidas consultas dentro de bucles, lo que pasa es que rastrearlas está bastante difícil ya que el programador que lo hizo no dejó ni siquiera un comentario en el code
las funciones van vienen suben bajan de un lado a otro, no entiendo como una persona pudo haber hecho algo tan entreverado, en fin, seguiré navegando por el mar de código, jeje saludos y gracias
__________________
la la la
  #8 (permalink)  
Antiguo 12/09/2012, 17:22
Avatar de Ronruby  
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 16 años, 5 meses
Puntos: 416
Respuesta: Codeigniter, rendimiento

Por mas grande que sea el proyecto, 2,000 consultas es mucho. Demasiado. A menos que sea una página que realice algo pesado, y no creo que todas las vistas de esa aplicación deban hacer tantas consultas.

Definitivamente hay que echarle un vistazo.
  #9 (permalink)  
Antiguo 12/09/2012, 19:14
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 10 meses
Puntos: 177
Respuesta: Codeigniter, rendimiento

Cita:
Iniciado por Ronruby Ver Mensaje
Por mas grande que sea el proyecto, 2,000 consultas es mucho. Demasiado. A menos que sea una página que realice algo pesado, y no creo que todas las vistas de esa aplicación deban hacer tantas consultas.

Definitivamente hay que echarle un vistazo.
Esa era la respuesta qu esperaba jejeje gracias
__________________
la la la

Etiquetas: Ninguno
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 09:02.