Google introduserte Knative 1.0 serverløs databehandlingsplattform

Google har presentert en stabil utgivelse av Knative 1.0-plattformen, designet for å lage en serverløs datainfrastruktur utplassert på toppen av et containerisolasjonssystem basert på Kubernetes-plattformen. I tillegg til Google er også selskaper som IBM, Red Hat, SAP og VMware involvert i utviklingen av Knative. Utgivelsen av Knative 1.0 markerte stabiliseringen av applikasjonsutviklings-APIen, som fremover vil forbli uendret og forbli bakoverkompatibel. Prosjektkoden er skrevet i Go og distribuert under Apache 2.0-lisensen.

Den serverløse applikasjonsutviklingsmodellen som tilbys av Knative gir et ekstra abstraksjonsnivå for skysystemer, slik at funksjoner kan utføres som tjenester (FaaS, Functions as a service). Essensen av den serverløse modellen er at utvikleren implementerer logikk på nivå med individuelle funksjoner, uten å bekymre seg for å lage og administrere infrastrukturen for å kjøre applikasjoner, og uten å være knyttet til spesifikke serverapplikasjoner og skymiljøene som er nødvendige for driften.

Utvikling utføres uten å lage monolitiske applikasjoner på nivået med å forberede et sett med små individuelle funksjoner, som hver sikrer behandlingen av en spesifikk hendelse og er designet for å fungere separat uten referanse til miljøet (statløst, resultatet er ikke avhengig av forrige tilstand og innhold i filsystemet). Funksjoner lanseres kun når behovet oppstår og etter å ha behandlet hendelsen kan de umiddelbart fullføre arbeidet sitt, dvs. i motsetning til mikrotjenester, er det ingen krav til konstant tilstedeværelse av løpende miljøer som bruker ledige ressurser.

Knative-plattformen lanserer selv containere etter behov, plasserer forberedte funksjoner i dem, organiserer ledelsen og sørger for skalering av miljøene som kreves for å utføre disse funksjonene. Plattformen kan distribueres på egen hånd uten å være knyttet til eksterne skytjenester. Bare Kubernetes kreves for å kjøre. Verktøy er gitt for å støtte en rekke vanlige rammeverk, inkludert Django, Ruby on Rails og Spring. Kommandolinjegrensesnittet kan brukes til å kontrollere driften av plattformen.

Plattformen har to hovedkomponenter:

  • Servering for å kjøre serverløse beholdere i Kubernetes med automatisk konfigurasjon av nettverkskommunikasjon, ruting, sporing av endringer (opprette øyeblikksbilder av vertskode og innstillinger) og opprettholde det nødvendige skaleringsnivået (opp til å redusere antall pods til null i fravær av aktivitet) . Utvikleren fokuserer kun på logikken alt relatert til utførelse håndteres av plattformen. For å organisere nettverksinteraksjon og ruteforespørsler kan nettverksundersystemene Ambassador, Contour, Kourier, Gloo og Istio brukes. Det er støtte for HTTP/2, gRPC og WebSockets.
  • Eventing er et universelt system for abonnement (tilknytting av behandlere), levering og arrangementshåndtering. Lar deg lage asynkront kjørende applikasjoner ved å knytte dataressurser til datastrømmer ved hjelp av en objektmodell og hendelsesbehandlingsmekanisme.

Kilde: opennet.ru

Kjøp pålitelig hosting for nettsteder med DDoS-beskyttelse, VPS VDS-servere 🔥 Kjøp pålitelig webhotell med DDoS-beskyttelse, VPS VDS-servere | ProHoster