Course Outline

    Sockets Datagramsockets maken Gegevens ontvangen en verzenden TCP-verbindingen maken en accepteren Sockets sluiten Fouten afhandelen Meer dan één client op een eenvoudige manier afhandelen Prefork-model, zoals gevonden in Apache Een nieuw proces per client forken Opruimen na voltooide processen Threads Inetd, systemd units Wachten voor gegevens Sockets blokkeren Niet-blokkerende sockets en selecteren Selecteer als een manier om te wachten op "een van deze sockets" Lezen en schrijven organiseren Omgaan met korte lees- en schrijfbewerkingen Lezen tot aan een scheidingsteken Pijplijnverzoeken Buffers op applicatieniveau Gebeurtenisgestuurde architectuur Select gebruiken voor het multiplexen van alle clientverbindingen in één thread State machines Callback hell Gebeurtenisbibliotheken "Groene" threads Probleem van 10.000 verbindingen Problemen met prefork-model en op selectie gebaseerde loop poll als alternatief voor het selecteren van Realtime signalen en waarom je ze niet zou moeten gebruiken Epoll (linux ) en kqueue (BSD) Waarom en wanneer epoll en kqueue sneller zijn dan poll/select Time-outs en timers SIGALARM Time-out als selectieargument Een eenvoudig geval van volledig gelijke time-outs Prioriteitswachtrij als een abstracte gegevensstructuur Binaire heap als prioriteitswachtrij-implementatie Timer wheel timerrfd Integratie met het besturingssysteem Traditionele daemons Systemd socket-activering Logging Verwerking van signalen Prestatie- en schaalbaarheidsoptimalisaties De juiste architectuur kiezen Socket-opties instellen

 

Requirements

  • C-taal
  • Linux gebruikersvaardigheden
 14 Hours

Getuigenissen (5)

Related Courses

Related Categories