Første udgave af wZD 1.0.0, servere til kompakt opbevaring af små filer

Tilgængelig første udgave wZD 1.0.0 — servere til effektiv opbevaring af et stort antal filer i kompakt format, som udefra ligner en almindelig WebDAV-server. Til opbevaring anvendes en modificeret version BoltDB. Projektkoden er skrevet i Go-sproget og distribueres under BSD-licensen.

Server det muligt kan betydeligt reducere antallet af små filer på almindelige eller klyngede filsystemer med fuld understøttelse af låsning. Den understøttede wZD-klynge opbevarer omkring 250 millioner små filer fordelt på 15 millioner mapper i klynge-FS MooseFS.

wZD giver mulighed for at flytte (arkivere) indholdet af mapper til arkiver i BoltDB-format og derefter distribuere disse filer fra disse arkiver (eller indsætte filer i arkiverne med PUT-metoden), hvilket væsentligt reducerer antallet af filer i FS og mindsker overhead-omkostningerne til opbevaring af metadata. For at forbedre effektiviteten af behandlingen af store filer kan sådanne filer opbevares separat fra Bolt-arkiverne. En sådan tilgang muliggør opbevaring af et enormt antal små filer uden at ramme grænsen for antallet af inode i filsystemet.

Første udgave af wZD 1.0.0, servere til kompakt opbevaring af små filer

Serveren kan også bruges som NoSQL-database til nøgle/værdi-data (med sharding baseret på mappestrukturen) eller til at distribuere forudgenererede HTML- eller JSON-dokumenter fra databasen. I forhold til ydeevne fører brug af Bolt-arkiver til en stigning i latensen på cirka 20-25% ved læsning og 40-50% ved skrivning. Jo mindre filen er, desto mindre er forskellene i latens.

Første udgave af wZD 1.0.0, servere til kompakt opbevaring af små filer

Vigtige muligheder:

  • Multitrådning;
  • Multiserveropsætning, der sikrer fejl tolerance og belastningsbalancering;
  • Maksimal gennemsigtighed for brugerne eller udvikleren;
  • Understøttede HTTP-metoder: GET, HEAD, PUT og DELETE;
  • Styring af adfærd ved læsning og skrivning gennem klientoverskrifter;
  • Understøttelse af fleksibelt konfigurerbare virtuelle værter;
  • Understøttelse af CRC-integritet ved skrivning/læsning;
  • Halvdynamiske buffere for minimal hukommelsesforbrug og optimal justering af netværksydelse;
  • Forsinket pakning af data;
  • Derudover tilbydes en multitrådet arkiveringsfunktion wZA til at flytte filer til Bolt-arkiver uden at stoppe tjenesten.

Nogle begrænsninger i den nuværende version: ingen støtte til Multipart, POST-metoden, HTTPS-protokollen, bindings til programmeringssprog, rekursiv sletning af mapper, ingen støtte til montering af strukturen i filsystemet via WebDAV eller FUSE, filer gemmes under en enkelt systembruger. Lagringsformatet er bundet til arkitekturen og er ikke portabelt mellem Little Endian og Big Endian-systemer. Selvom serveren wZD implementerer støtte til HTTP-protokollen, skal den køres bag en reverse proxy, såsom nginx og haproxy.

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