Programar en Linux

Rodrigo Fuentealba darkprox en gmail.com
Sab Oct 21 21:33:29 CLST 2006


El 21/10/06, Horst H. von Brand<vonbrand en inf.utfsm.cl> escribió:
> Rodrigo Fuentealba <darkprox en gmail.com> wrote:
> > 2006/10/21, Franco Catrin <fcatrin en tuxpan.com>:
> > > Si me quedo corto de maquina con una aplicacion PHP, tendre que botar mi
> > > maquina actual y buscar una suficientemente grande, cuando llegue a los
> > > limites de esa maquina tendre que reescribir mi aplicacion para que se
> > > pueda distribuir, ademas seguramente tendre que crear o habilitar algun
> > > framework para que todo siga funcionando (transacciones distribuidas por
> > > ejemplo).
>
> > Nada que ver. Una aplicación java la cargas casi completa en memoria,
> > incluyendo el JRE (aunque puedes cargar cosas dinámicamente). En PHP,
> > de una aplicación completa, cargas sólo la página y los componentes
> > relacionados que tengas, si al final PHP no se compila, a menos que
> > tengas la costumbre de cargar todo un framework solamente para dibujar
> > un botoncito que dice "continuar".
>
> Nunca has escuchado hablar de "memoria virtual"?

Sí sé lo que es. Los programas en PHP en un servidor bien configurado
difícilmente se van a la swap, (y si lo hacen es que la página en sí
tiene que ser enorme!!!). Existe una directiva para definir el límite
de memoria por script cargado, que puede ser ajustada en el php.ini.
No existe persistencia de datos (salvo con $_SESSION del lado del
servidor y $_COOKIE del lado del cliente), y el objeto mod_php carga
dinámicamente los módulos que necesita, si es que al perejil de la
distribución no se le ocurre meterlos todos en el libphp5.so.

Si a un programa se le arrancan los pollitos del canasto, muere con un
mensaje de error, y si fuera poco, también hay un límite en tiempo de
ejecución para quitar a la página de memoria, manteniendo únicamente
los datos de $_SESSION (por conexión) y de $_SERVER (compartidos para
todos los usuarios) cargadas.

http://cl.php.net/manual/es/ini.core.php#ini.memory-limit
http://cl.php.net/manual/es/ref.info.php#ini.max-execution-time

Los que trabajamos o hemos usado PHP para hacer trabajo en serio,
conocemos las mañas para sacarle lo mejor y hacer que el lenguaje no
sea tan malo... Lo mismo en Python, Ruby, o para cualquier lenguaje...
Inclusive en .NET

BTW, no he visto OpenSolaris, ¿en qué lenguaje están escritas las
aplicaciones que usa?

-- 
Rodrigo Fuentealba Cartes



Más información sobre la lista de distribución Linux