Eli
167meneos

Programación con sockets y concurrencia

He iniciado un tutorial básico sobre programación con sockets y concurrencia. Por ahora, en la primera entrega, se lleva a cabo del diseño de un protocolo muy simple, un servidor secuencial y un cliente del mismo. Más adelante se desarrollará un servidor concurrente y multithread. Los ejemplos están en Perl, pero el objetivo es introducir los conceptos básicos más allá del lenguaje de implementación. En esta etapa inicial me vendrían muy bien opiniones, críticas y sugerencias.

votos negativos: 2  usuarios: 167  anónimos: 0  
  1. #1   ¡Buen manual!
    votos: 1, karma: 27
    por DZPM el 06-11-2006 22:42 UTC
  2. #2   Espero que esto salga a portada :). gracias por compartirlo
    votos: 1, karma: 17
    por dasddddfsdsfasfdasf33dsf el 06-11-2006 23:14 UTC
  3. #3   Según parece, sale pronto. Gracias a ustedes por el interés :)
    votos: 1, karma: 28
    por javiers el 07-11-2006 00:04 UTC
  4. #4   el voto de Spam, lo comprendo, pero el de Erronea???.

    Bueno, te meneo porque esta bastante chulo... ahora a ver si te saco algun error ;)
    votos: 1, karma: 21
    por Liso el 07-11-2006 09:48 UTC
  5. #5   El único problema, único lenguaje y además es Perl. No estaría mal poner ejemplos para realizar lo mismo en diferentes lenguajes más o menos parecidos.
    votos: 0, karma: 6
    por ant30 el 07-11-2006 10:29 UTC
  6. #6   buena iniciativa, aunque como han dicho, yo optaría por algún otro lenguaje (al menos uno no tan ofuscado como perl :P)
    votos: 0, karma: 6
    por dagi3d el 07-11-2006 10:33 UTC
  7. #7   Mira, te doy mi voto pero que conste que te odio a muerte por no haberlo publicado el año pasado ;-) madre mía, lo bien que me habría ido para hacer las prácticas de la asignatura de sistemas operativos!
    Muchos estudiantes sufridores te lo agradecerán seguro :-)
    votos: 1, karma: 20
    por ergaster el 07-11-2006 10:38 UTC
  8. #8   pal del.icio.us de cabeza.
    Gracias por el manual.
    votos: 1, karma: 18
    por Malolillo el 07-11-2006 10:52 UTC
  9. votos: 1, karma: 20
    por everman el 07-11-2006 11:08 UTC
  10. #10   Algunas dudas que tengo y que igual podrías añadir a esta primera parte del manual.

    1. ¿Qué ocurre si el cliente no cierra la sesión? ¿Debe el servidor encargarse de cerrar las sesiones sin actividad durante un tiempo?
    2. ¿Dónde se define la constante SOMAXCONN? ¿Es una constante ya prefenida por el SO o se puede cambiar?
    votos: 1, karma: 19
    por miwesly el 07-11-2006 11:15 UTC
  11. #11   Lamento lo del lenguaje (realmente, aunque me gusta Perl para ciertas cosas, es poco amigable para un tutorial introductorio). En mi defensa puedo decir que:

    - He tratado de no utilizar construcciones "extrañas" ni ofuscadas.
    - Mas adelante trataré el tema de la concurrencia (con procesos y threads), y en Perl es realmente sencillo hacerlo.

    No crean que no he evaluado qué lenguaje utilizar (pero cualquiera hubiese sido, siempre hubiera tenido varios puntos en contra).

    Nuevamente, gracias por el interés y los comentarios :)
    votos: 0, karma: 11
    por javiers el 07-11-2006 11:16 UTC
  12. #12   Te respondo aquí #10 (luego actualizaré el artículo):

    En una situación real, lo más apropiado sería que el servidor cierre las conexiones inactivas pasado un tiempo.
    SOMAXCONN está definido en el SO (include/linux/socket.h)
    votos: 0, karma: 11
    por javiers el 07-11-2006 11:19 UTC
  13. #13   El enlace ha sido puesto en otros sitios, como el del foro de Perl en Español. Enhorabuena.
    votos: 1, karma: 17
    por jferrero el 07-11-2006 23:33 UTC
  14. #14   Gracias, #13. Ya están la segunda y tercera parte ;) meneame.net/story/programacion-sockets-concurrencia-2da-parte
    votos: 0, karma: 11
    por javiers el 07-11-2006 23:35 UTC
comentarios cerrados

menéame