Udgivelse af Varnish-Cache 8.0. Projektets navn er ændret på grund af varemærker.

Poul-Henning Kamp, en af de kendte udviklere af FreeBSD, som har deltaget i oprettelsen af systemer som MD5crypt, GEOM, GBDE og FreeBSD Jail, har præsenteret udgivelsen af Varnish-Cache 8.0, en højtydende cache-proxy designet til at fungere som en HTTP-accelerator. Projektet distribueres under BSD-licensen og har tidligere været brugt i projekter som Facebook, Wikimedia, Twitter, Vimeo, Tumblr, New York Times og Guardian.

Den høje ydeevne opnås gennem brugen af flertrådethed, multiplexing af forbindelser ved hjælp af epoll/kqueue-opkald og anvendelse af systemopkald som sendfile og madvise. På almindeligt udstyr kan den håndtere en strøm på 20 Gbps og give en hastighedsforøgelse på 300-1000 gange. Cachen opbevares i virtuel hukommelse. En særlig funktion ved Varnish er evnen til at samle de leverede sider i dele på frontend-siden, hvilket definerer logikken for samlingen på ESI (Edge Side Includes) sprog.

Varnish tilbyder også et fleksibelt konfigurationssystem, som tillader brug af indsatser i C-sprog. Konfigurationen anvender et specielt VCL-sprog, som derefter kompileres til eksekverbar binær kode. VCL gør det muligt at beskrive politikken for behandlingen af forespørgsler: at definere det behandlede indhold, hvor det skal hentes fra, og hvordan det skal transformeres før levering. Den grundlæggende funktionalitet kan udvides via moduler. Der er mekanismer til belastningsbalancering, overvågning af tilstand og responstid fra backend.servere.

Sammen med meddelelsen om den nye version blev der annonceret en forestående ændring af projektets navn. Fra og med den næste udgivelse vil "Varnish Cache" blive omdøbt til "Vinyl Cache" på grund af krav relateret til varemærket Varnish, der er registreret af Varnish Software, som deltog i udviklingen og finansierede det åbne projekt "Varnish Cache". For 22 år siden blev udviklingen af Varnish Cache finansieret af den norske avis Verdens Gang, som ansatte Poul-Henning Kamp til at skrive koden og Linpro til support. Senere blev Linpro til virksomheden Varnish Software. Det endte således med, at navnet Varnish Cache blev forbundet med det åbne projekt, mens Varnish Software blev forbundet med den kommercielle virksomhed.

Muligheden for at bruge navnet Varnish i titlen på det åbne projekt blev givet på baggrund af en mundtlig aftale, og Paul-Henning Kamp gjorde ikke krav på at få indgået en skriftlig aftale. Indtil for nylig levede virksomheden og det åbne projekt fredeligt side om side, men så blandede intellektuelle ejendom advokaterne sig ind, hvis position er, at man ikke kan bruge navnet Varnish Cache i nogen sammenhæng uden udtrykkeligt tilladelse.

Da behovet for at få tilladelse fra Varnish Software forhindrede nogle deltagere i at deltage i udviklingen, blev der gjort et forsøg på at forhandle, men advokaterne fortsætter med at hævde, at navnet Varnish Cache tilhører Varnish Software, og de tillader dets brug af det åbne projekt under visse begrænsninger og mulighed for at nedlægge veto. Varnish Cache er ikke klar til at acceptere disse begrænsninger, da det har til hensigt at fortsætte med at udvikle sig som et uafhængigt projekt.

Efter navneændringen planlægger man at oprette et non-profit partnerskab for yderligere koordinering af udviklingen, som vil operere under Danmarks jurisdiktion. I vedtægterne er det fastslået, at organisationen ikke må eje og forvalte penge. I blandt målene er der angivet: udvikling, vedligeholdelse og distribution af software. Enhver, der ønsker det, kan tilslutte sig organisationen efter godkendelse fra de eksisterende deltagere. Der vil blive dannet et udvalg til at styre, valgt af deltagerne.

De vigtigste nyheder i Varnish-Cache 8.0:

  • I det baggrundsprocess, varnishd, som modtager anmodninger fra kunder, videresender anmodninger til backend og cacher svar, er parameteren «uncacheable_ttl» implementeret til at bestemme levetiden (TTL) for objekter, der er markeret som ikke-cachebare.
  • Standardværdien for parameteren ban_any_variant er sat til 0, hvor bloklisten kun anvendes på matchende objekter.
  • Overførsel af stop-kommandoen fører nu til ventetid indtil alle kørende transaktioner (VCL-behandlere) er afsluttet.
  • Der er tilføjet understøttelse af at tilgå visse runtime-parametre fra VCL-kode ved hjælp af syntaksen «param.».
  • Der er tilføjet mulighed for at overskrive logikken for dannelse af svar «304 Not Modified».
  • Forældede VMOD-funktioner std.real2integer(), std.real2time(), std.time2integer() og std.time2real() er blevet fjernet, og i stedet bør syntaksen «std.integer(real=std.round(…), fallback=…)» eller «std.integer(time=…, fallback=…)» bruges. Funktionen format_rfc1123() er omdøbt til cookie.format_date().
  • I VUT og varnishtest er der tilføjet logning af stack traces til loggen efter et krasj.
  • Der er tilføjet variablen «obj.last_hit» til værktøjet varnishadm, som kan bruges til at organisere sletning af objekter fra cachen, som ikke har været tilgået i lang tid.
  • Der er tilføjet nye statistiske tællere i værktøjet varnishstat: VCP.ref_hit, VCP.ref_miss, transit_stored og transit_buffered.

Kilde: opennet.ru

Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere 🔥 Køb pålidelig webhosting med DDoS-beskyttelse, VPS VDS-servere | ProHoster