Schița de curs

    Socket-uri Crearea socket-urilor de datagramă Primirea și trimiterea datelor Crearea și acceptarea conexiunilor TCP Închiderea socket-urilor Gestionarea erorilor Manipularea mai multor clienți într-un mod simplu Model Prefork, așa cum se găsește în Apache Forking un nou proces per client Curățare după procesele terminate Threads Inetd, unități systemd Așteptare pentru date Socket-uri de blocare Socket-uri care nu blochează și selectați Selectați ca modalitate de a aștepta „oricare dintre aceste socluri” Organizarea citirilor și scrierilor Gestionarea citirilor și scrierilor scurte Citirea până la un delimitator Solicitări pipeline Buffer-uri la nivel de aplicație Arhitectură bazată pe evenimente Utilizarea selectării pentru multiplexarea tuturor conexiunilor client într-un singur fir Mașini de stat Callback hell Biblioteci de evenimente Fire „verzi” Probleme cu 10000 de conexiuni Probleme cu modelul prefork și sondajul de buclă bazat pe selecție ca alternativă la selectarea semnalelor în timp real și de ce nu ar trebui să le utilizați Epoll (linux ) și kqueue (BSD) De ce și când epoll și kqueue sunt mai rapide decât sondaj/selectare Timeouts și cronometre SIGALARM Timeout ca argument de selectare Un caz simplu de timeout-uri egale Coada prioritară ca structură abstractă de date Heap binar ca implementare prioritară a cozii Timer wheel timerfd Integrare cu sistemul de operare Demoni tradiționali Activare socket Systemd Înregistrare Gestionarea semnalelor Optimizări de performanță și scalabilitate Alegerea arhitecturii potrivite Setarea opțiunilor de socket

 

Cerințe

  • Limbajul C
  • Linux competențe de utilizare
  14 ore
 

Numărul de participanți


Dată început

Dată sfârșit


Dates are subject to availability and take place between 09:30 and 16:30.
Open Training Courses require 5+ participants.

Mărturii (5)

Cursuri înrudite

Categorii înrudite