Programa del Curso
-
Sockets
Creación de sockets de datagramas
Recepción y envío de datos
Creación y aceptación de conexiones TCP
Cierre de enchufes
Manejo de errores
Gestionar más de un cliente de forma sencilla
Modelo de prebifurcación, como se encuentra en Apache
Bifurcación de un nuevo proceso por cliente
Limpieza después de los procesos terminados
Hilos
Inetd, unidades systemd
A la espera de datos
Bloqueo de enchufes
Sockets sin bloqueo y seleccione
Seleccione como una forma de esperar "cualquiera de estos sockets"
Organización de lecturas y escrituras
Lidiar con lecturas y escrituras cortas
Lectura hasta un delimitador
Solicitudes canalizadas
Búferes de nivel de aplicación
Arquitectura basada en eventos
Uso de select para multiplexar todas las conexiones de cliente en un subproceso
Máquinas de estado
Infierno de devolución de llamada
Bibliotecas de eventos
Hilos "verdes"
Problema de 10000 conexiones
Problemas con el modelo de prebifurcación y el bucle basado en selección
Encuesta como alternativa a la selección
Señales en tiempo real y por qué no deberías usarlas
Epoll (linux) y kqueue (BSD)
¿Por qué y cuándo epoll y kqueue son más rápidos que poll/select?
Tiempos de espera y temporizadores
SIGALARM
Tiempo de espera como argumento de selección
Un caso simple de tiempos de espera iguales
Cola de prioridad como un stracture de datos abstracto
Almacenamiento dinámico binario como implementación de cola de prioridad
Rueda del temporizador
timerfd
Integración con el sistema operativo
Demonios tradicionales
Activación del socket Systemd
Registro
Manejo de señales
Optimizaciones de rendimiento y escalabilidad
Elegir la arquitectura adecuada
Configuración de las opciones de socket
Requerimientos
- Lenguaje C
- Linux Habilidades de usuario
Testimonios (5)
The breadth of the topis covered was quite a bit and the trainer tried to do justice to that.
Lakshmipriya Sivakumar - Deque Systems Inc
Curso - Spring Boot, React, and Redux
I like the professionality of the trainer, he really knows what he is talking about and able to explain almost even the simple subjects on the topic which is great.
Marlon - National Confederation of Cooperatives
Curso - React with Next.js
trainer very knowledgeable clear classes explains the importance of learn the topic gives enough background on topic
Li Fang Bren Ong - DBS Bank Limited
Curso - Ant Design
Aprendí mucho sobre el tema
Zsolt Langviser - Accenture Industrial SS
Curso - NestJS: Beginner to Advanced
Traducción Automática
The labs were interesting and probably the most useful learning tool to me. Anything I missed or forgot about was relearned or reinforced in the labs.