U lançua serveri HTTP hinsightd, duke përdorur nën-sistemin io_uring të Linux

është publikuar serveri i kompakt HTTP hinsightd, i njohur për përdorimin e ndërfaqes asinkrone të hyrjes/daljes io_uring të siguruar nga bërthama Linux. Serveri mbështet protokollin HTTP/1.1 dhe është projektuar për konsum të ulët burimesh, duke ofruar njëkohësisht funksionalitete të kërkuara. Për shembull, hinsightd mbështet TLS, proksimin e kundërt (rproxy), ruajtjen e përmbajtjes gjithnjë e në gjenerim në sistemin lokal të skedarëve, kompresimin në kohë reale të të dhënave të dërguara, ripërshtatjen pa ndarje të lidhjeve të vendosura, lidhjen e trajtuesve të kërkesave dinamike përmes mekanizmave FastCGI dhe CGI. Kodi i projektit është shkruar në gjuhën C dhe shpërndahet nën licencën BSD.

PĂ«r trajtimin e konfiguracionit, shkruan shtesa dhe krijimin e trajtuesve tĂ« kĂ«rkesave, ofrohet mundĂ«sia e pĂ«rdorimit tĂ« gjuhĂ«s Lua, me qĂ«llim qĂ« tĂ« tilla trajtues mund tĂ« pĂ«rcaktohen direkt nĂ« skedarin konfigurimin e serverit. MĂ«nyrat e plugin-eve ofrojnĂ« mundĂ«si tĂ« tilla si ndryshimi i formatit tĂ« shĂ«nimeve nĂ« log, lidhja e shkallĂ«ve tĂ« veçanta nĂ« hostet virtualĂ«, pĂ«rcaktimi i strategjive tĂ« balancimit tĂ« ngarkesĂ«s, autentikimi HTTP, ndryshimi i URL-ve dhe kryerja e punĂ«ve tĂ« planifikuara sipas njĂ« skedari (pĂ«r shembull, rinovimi i sertifikatave Let’s Encrypt).

Bashkë me serverin shkurtim biblioteka për integrimin e funksioneve të hinsightd në aplikacionet tuaja. Hinsightd gjithashtu përfshin funksionalitet të integruar për dërgimin e kërkesave HTTP nga linja e komandës, për shembull, për të shkarkuar një faqe, mund të ekzekutoni komandën "hinsightd -d URL". Serveri është shumë kompakt dhe zë rreth 200KB në format të kompiluar (100KB skedari ekzekutiv dhe 100KB bibliotekë e ndarë). Nga varësitë e jashtme, vetëm libc, lua, liburing dhe zlib janë të pranishme, si edhe opsionalisht openssl/libressl dhe ffcall.

Në planet për zhvillimin e mëtejshëm përmendet mundësia e ruajtjes në cache të skedarëve të kompresuar, izolimi sandbox mbi bazën e filtrimit të thirrjeve sistemike dhe përdorimit të hapësirave të emrave, menaxhimi i kapacitetit të kalimit (traffic shaping), shumëfishtëzimi, përmirësimi i trajtimit të gabimeve dhe përcaktimi i hosteve virtualë në bazë të maskave.

Rezultatet e testimit sintetik të performancës (pa optimizime në konfigurim siç janë) me mjetin ab, duke drejtuar 250 dhe 500 (në pranga) kërkesa paralele ("ab -k -c 250 -n 10000 http://localhost/"):

  • hinsightd/0.9.17 — 63035.01 kĂ«rkesa pĂ«r sekondĂ« (54984.63)
  • lighttpd/1.4.67 — 53693.29 kĂ«rkesa pĂ«r sekondĂ« (1613.59)
  • Apache/2.4.54 — 37474.10 kĂ«rkesa pĂ«r sekondĂ« (34305.55)
  • Caddy/2.6.2 — 35412.02 kĂ«rkesa pĂ«r sekondĂ« (33995.57)
  • nginx/1.23.2 — 26673.64 kĂ«rkesa pĂ«r sekondĂ« (26172.73)

Burimi: opennet.ru

Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Bleni hostim tĂ« besueshĂ«m pĂ«r faqe me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster