martes, 15 de abril de 2008

Apuntes de clase 15/04/08

Empezamos la clase recordando lo visto en la clase anterior gracias al resumen de un compañero (aqui el resumen) y vemos un interesante articulo sobre gráficas manipuladas tomando como ejemplo el ultimo anuncio de movistar.

Seguimos viendo un ejercicio de autoevaluacion del tema 3 (bloque 3.1).Uno de los ejemplos que ha puesto no funciona con kubuntu, parece que solo funciona con gentoo. El resto de ejercicios que ha hecho el compañero estan bien.

Seguimos con el Tema 3 por donde lo dejamos el otro dia...

3.2 Gestión de carga y prestaciones en el sistema operativo

Un administrador tiene que mantener a sus usuarios felices y satisfacer sus peticiones. Por tanto la gestión debe plantearla de la siguiente forma:

- Planificación y definición de la carga del sistema: Es conveniente acordar de antemano qué se consideran unas prestaciones aceptables. Una vez llevada a cabo esta planificación, hay que comprobar si, con el sistema tal como está, se puede llevar a cabo ese acuerdo y si en el futuro previsible, con los usuarios y la carga pico prevista, se va a poder cumplir.

Ejemplo: Adquisición de un servidor web

Basándose en el número de peticiones por minuto y la hora a las que se van a recibir, habrá que estimar el tamaño de la memoria necesaria, el ancho de banda necesario en función de las peticiones que se van a servir y el tamaño de disco duro. Además, el administrador deberá comprobar la evolución del número de peticiones y prever los picos para, si es necesario, solicitar más ancho de banda (bandwidth-on-demand; algunos servidores permiten solicitar en un momento determinado más ancho de banda que el que se tiene asignado; algunos te cobrarán por ancho de banda adicional con sumido, y la mayoría, directamente te cortan la conexión con un error 509) o una ampliación del sistema; o bien cambiar la configuración para que soporte el pico de demanda.


A raiz del ejemplo del servicio web, vemos los tipos de hosting que puede proporcionar una empresa que presta ese servicio, y bajo que condiciones se contrata el servicio (espacio disponible, ancho de banda,numero de bases de datos o de cuentas de correo...).

Un truco para no consumir tanto ancho de banda es utilizar el modulo de apache mod_rewrite para que si se procede de una pagina externa al sitio (google por ejemplo) se redireccione a otro sitio.

- Configurar las herramientas de monitorización del sistema: Como por ejemplo para controlar el ancho de banda o el nivel de paginas servidas por un servidor para que alerte cuando se llegue a un nivel no deseable. Un ejemplo de herramienta de este tipo es Logwatch. Tambien es posible utilizar scripts del sistema (de hecho el lenguaje Perl se creó con este fin). Otro lenguaje de este tipo es AWK

- Tratar de resolver problemas mediante políticas de gestión del sistema: Limitación de uso interactivo, limitación de uso de disco mediante cuotas...

- Ampliar el sistema: Si todo lo anterior falla (y dentro de las posibilidades que haya).

3.3 Políticas de gestión del sistema

Tanto el usuario como el administrador pueden tomar medidas para mejorar el sistema. Algunas medidas que pueden tomar los usuarios son:

- Usar comandos internos de shell en vez de los de Unix (por ejemplo utilizar el comando echo en vez de ls, echo $PWD y no pwd)

- Evitar los caminos largos, que hacen que el ordenador tenga que leer muchos directorios cada vez que se ejecuta un comando.

- Evitar los directorios con muchos ficheros.

- Usar las versiones mas eficientes de cada tipo de programa.

- Eliminar daemons inútiles para la máquina.

- Limitar tiempos de ejecución interactivos, y renicear procesos a discreción.Se puede limitar el tiempo de ejecución con el comando limit (o ulimit, que es el comando interno del bash).

- Modificar los parámetros del sistema operativo.Para eso hace falta conocer la estructura del kernel.

Terminamos por hoy el temario y pasamos a explicar la Practica 5.

Practica 5 - Mejora de las prestaciones de un Sistema


Esta practica es importante ya que constituye el primer "ensayo" para el trabajo final. En esta practica hay que definir un objetivo (ejemplo: quiero que compilar el programa tarde un 5% menos). Por tanto hay que plantearse el sistema antes y despues del cambio. Si decidimos hacerlo con un servidor web es útil el programa Apache benchmark.

Los cambios que realicemos pueden ser tanto software como hardware. Es importante tener en cuenta que la mejora debe realizarse sin tener en cuenta la carga del sistema para medir las prestaciones.

Plantilla de la practica

Fecha de entrega: 7 de Mayo.


Acabamos como siempre con el video del dia: Overclocking extremo.

No hay comentarios: