🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: chile.comp.programacion
2 messages
2 total messages Started by +mArkO+ Sat, 21 Jun 2008 23:29
PHP: Mitos o realidades?
#523
Author: +mArkO+
Date: Sat, 21 Jun 2008 23:29
75 lines
3824 bytes
Esto lo encontre en una web
http://informatica-practica.net/solocodigo/index.php/2007/10/16/trucos-para-optimizacion-de-codigo-en-php

===================================
TRUCOS PARA OPTIMIZAR EL CODIGO PHP
===================================

1)Si un m�todo puede ser static, decl�ralo como static.

2)echo es m�s r�pido que print.

3)Utiliza m�ltiples echo�s en lugar de concatenar cadenas.

4)Fija el valor m�ximo para los bucles antes del loop, y no estando ya 
dentro de �l.

5)Utiliza unset para las variables que ya no van a ser usadas, especialmente 
arrays cargados, de forma que liberes memoria.

6)require_once() es demasiado lenta y poco rentable.

7)Utiliza rutas absolutas en includes y requires, reduciendo 
considerablemente el tiempo de carga.

8)Si necesitas saber cuando comenz� a ejecutarse un script, $_SERVER['REQUEST_TIME'] 
es preferible a time().

9)str_replace es mucho m�s r�pida que preg_replace, pero strtr es a�n m�s 
r�pida que str_replace.

10)Es mejor utilizar una estructura condicional switch-case que m�ltiples 
if-else anidados.

11)Omitir errores mediante el uso de @ es bastante lento.

12)Activa en Apache el modo mod_deflate.

13)Cierra la conexi�n con la base de datos cuando ya no sea necesaria.

14)$row['id'] es 7 veces m�s r�pido que $row[id].

15)No utilices funciones dentro de bucles, como por ejemplo en ($x=0; $x < 
count($array); $x) La funci�n count() es ejecutada en cada pasadas.

16)Utiliza variables locales. Incrementar una variable gloval es el doble de 
lento que hacerlo con una local.

17)Incrementar una propiedad de un objeto (ej. $this->prop++)es 3 veces m�s 
lento que el uso de una variable local.

18)Inicializa las variables. Aunque no es necesario en PHP, incrementar una 
variable no declarada es entre 9 y 10 veces m�s lento que hacerlo con una ya 
declarada.

19)Utiliza la comilla simple ' en lugar de la doble comilla " ya que PHP no 
busca variables entre comillas simples, y el tiempo de carga puede verse 
reducido.

20)No utilices scripts PHP si puedes usar HTML est�tico, ya que �ste �tlimo 
carga entre 9 y 10 veces m�s r�pido.

21)Instala alg�n sistema de cach� para que tus scripts no deban ser 
ejecutados cada vez que se carga una p�gina. �ste punto reduce 
considerablemente el tiempo de carga de una p�gina y el uso de CPU del 
servidor.

22)++$i es m�s r�pido que $i++ en PHP.

23)No utilices todas las estructuras como clases, el uso de arrays en muchos 
casos tambi�n es adecuado.

24)Trata de hacer tu c�digo reutilizable y evitar redundancias.

25)Puedes utilizar compresi�n Gzip para aumentar la velocidad de 
transferencia. 
Re: PHP: Mitos o realidades?
#314
Author: Sebastian E. Castro Avila
Date: Mon, 23 Jun 2008 23:46
108 lines
5028 bytes
In chile.comp.unix +mArkO+ <kitim@porta.com> wrote:
m> Esto lo encontre en una web

m> ===================================
m> TRUCOS PARA OPTIMIZAR EL CODIGO PHP
m> ===================================

m> 1)Si un m?todo puede ser static, decl?ralo como static.

m> 2)echo es m?s r?pido que print.

Ese lo habia leido.

m> 3)Utiliza m?ltiples echo?s en lugar de concatenar cadenas.

m> 4)Fija el valor m?ximo para los bucles antes del loop, y no estando ya 
m> dentro de ?l.

m> 5)Utiliza unset para las variables que ya no van a ser usadas,
m> especialmente arrays cargados, de forma que liberes memoria.

Esto es cierto en cualquier lenguaje, pero a menos que tengas centenas
de variables con mucho contenido y un script que corre miles de veces
por minuto, no lo vas a notar.

m> 6)require_once() es demasiado lenta y poco rentable.

m> 7)Utiliza rutas absolutas en includes y requires, reduciendo 
m> considerablemente el tiempo de carga.

m> 8)Si necesitas saber cuando comenz? a ejecutarse un script,
m> $_SERVER['REQUEST_TIME'] es preferible a time().

Esto es cierto porque time es una llamada a sistema y REQUEST_TIME es
una variable que ya esta en la memoria: te ahorras algunas
instrucciones.

m> 9)str_replace es mucho m?s r?pida que preg_replace, pero strtr es a?n m?s 
m> r?pida que str_replace.

Nada nuevo, en Perl tambien se recomienda evitar los reemplazos via
regex por rendimiento.

m> 10)Es mejor utilizar una estructura condicional switch-case que m?ltiples 
m> if-else anidados.

m> 11)Omitir errores mediante el uso de @ es bastante lento.

m> 12)Activa en Apache el modo mod_deflate.

m> 13)Cierra la conexi?n con la base de datos cuando ya no sea necesaria.

m> 14)$row['id'] es 7 veces m?s r?pido que $row[id].

m> 15)No utilices funciones dentro de bucles, como por ejemplo en ($x=0; $x < 
m> count($array); $x) La funci?n count() es ejecutada en cada pasadas.

m> 16)Utiliza variables locales. Incrementar una variable gloval es el
m> doble de lento que hacerlo con una local.

m> 17)Incrementar una propiedad de un objeto (ej. $this->prop++)es 3
m> veces m?s lento que el uso de una variable local.

Esto es cierto en C++ tambien.

m> 18)Inicializa las variables. Aunque no es necesario en PHP,
m> incrementar una variable no declarada es entre 9 y 10 veces m?s lento
m> que hacerlo con una ya declarada.

m> 19)Utiliza la comilla simple ' en lugar de la doble comilla " ya que
m> PHP no  busca variables entre comillas simples, y el tiempo de carga
m> puede verse reducido.

m> 20)No utilices scripts PHP si puedes usar HTML est?tico, ya que ?ste
m> ?tlimo carga entre 9 y 10 veces m?s r?pido.

m> 21)Instala alg?n sistema de cach? para que tus scripts no deban ser 
m> ejecutados cada vez que se carga una p?gina. ?ste punto reduce 
m> considerablemente el tiempo de carga de una p?gina y el uso de CPU del 
m> servidor.

Proxy reverso le llaman algunos.

m> 22)++$i es m?s r?pido que $i++ en PHP.

Esto es cierto tambien en C++ (y se nota si haces millones de sumas por
segundo), debido a que $i++ requiere hacer una copia de $i, la otra
actua sobre una referencia.

m> 23)No utilices todas las estructuras como clases, el uso de arrays en
m> muchos casos tambi?n es adecuado.

m> 24)Trata de hacer tu c?digo reutilizable y evitar redundancias.

Esto es cierto en cualquier lenguaje y no solo por 'performance' sino
para ahorrar horas hombre y hacer el desarrollo mas profesional.

m> 25)Puedes utilizar compresi?n Gzip para aumentar la velocidad de 
m> transferencia. 

Esta no es siempre conveniente: si tus scripts generan un output
peque~no, tomas mas tiempo y recursos en comprimir la salida. Esto es
util cuando la cantidad de datos a transferir es alta, no es llegar y
utilizar.

Saludos
-- 
Sebastian E. Castro Avila        ReQuiN        secastro@dcc.uchile.cl
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads