Wat is Azure Functions?

Voltooid

U volgt het Tailspin Space Game-webteam terwijl ze bespreken hoe ze het beste kunnen voldoen aan nieuwe marketingvereisten op basis van management. Het team moet een aantal serverloze technologie, met name Azure Functions, integreren in hun DevOps-proces.

Laten we terugkeren naar het team.

De nieuwe vereisten

Irwin: Bedankt voor de vergadering op zo'n korte termijn. De zaken worden opgewarmd en het marketingteam heeft enkele beloftes gedaan die het voor ons allemaal bemoeilijken. Ze vinden onze site echt leuk. Ze denken dat het leaderboard kan worden gebruikt om het spel te promoten terwijl we naar de laatste lancering en verder gaan. Ze willen het uitschalen buiten wat we oorspronkelijk gepland hebben.

Mara: Dat is geweldig, toch? We bevinden ons in Azure, zodat we de service zoveel mogelijk kunnen uitschalen als nodig is.

Irwin: Ze willen alleen dat iedereen leaderboard-gegevens kan integreren in hun eigen toepassingen. Ze denken dat het echt cool zou zijn om dezelfde leaderboard-opties op onze site, in het spel, op gaming-reviewsites en zelfs op externe blogs en persoonlijke sites te hebben. Een uitdaging is dat het team van de game-engine momenteel eigenaar is van de productiedatabase waaruit we leaderboardgegevens ophalen. Ze denken dat ze de API moeten bouwen en er eigenaar van moeten zijn.

Andy: Mara, heb je gedachten?

Mara: Ik weet zeker dat we iets kunnen bedenken. Dit zijn mijn notities:

  • We moeten snel leveren, dus we moeten een oplossing vinden waar we onze code en vaardigheden kunnen gebruiken.
  • We moeten een klein stukje functionaliteit herstructureren in een onafhankelijke service.
  • We moeten administratieve overhead in productie minimaliseren.
  • We moeten grootschalige schaal hebben zonder een enorme inzet te maken.

Het team verwijst in overeenstemming.

Het werkt op mijn computer

De vergadering is opgebroken. De volgende ochtend komt Andy enthousiast naar Mara's kantoor voor een geïmproviseerde chat.

Andy: ik heb het. Ik heb een oplossing gevonden die voldoet aan al onze vereisten voor de leaderboard-API. Het is een serverloze aanbieding met de naam Azure Functions.

Mara: Dat is geweldig! Hoe lang voordat we iets hebben dat we kunnen demo's?

Andy: Ik heb al iets uitgepiekt. Ik heb onze GitHub-opslagplaats gesplitst en de leaderboardcode geherstructureerd in een nieuw Azure Functions-project. Hiermee worden de leaderboardgegevens beschikbaar gesteld via een eenvoudige HTTP GET-aanvraag. Ik heb de website ook bijgewerkt om dat eindpunt te gebruiken bij het aanvragen van het leaderboard en iedereen kan hetzelfde doen.

Mara: Dit klinkt als precies wat we nodig hebben. Ik kan helpen bij het uitbreiden van de bestaande CI/CD-pijplijn ter ondersteuning van het bouwen en implementeren zoals we dat doen voor het hoofdsiteproject.

Notitie

In deze module richten we ons niet op het verbinden van uw app met Azure Functions. Als u geïnteresseerd bent, kunt u de broncode bekijken. De code maakt gebruik van de Azure Functions-runtime voor C# om leaderboardgegevens van Azure Functions te lezen.

Wat is Azure Functions?

Azure Functions is een specifiek aanbod binnen het bredere spectrum van serverloze computingtechnologieën van Azure. Het biedt een eenvoudige manier voor ontwikkelaars om eenvoudige functies te bouwen die bestaan in een staatloze, serverloze omgeving. Functies kunnen worden geactiveerd met behulp van verschillende methoden, zoals HTTP-aanvragen, wijzigingen in gegevens in opslag, ontvangst van een bericht uit een wachtrij en meer. Meer informatie over de triggerbindingen vindt u in Azure Functions-triggers en bindingsconcepten.

Het Tailspin-team heeft Azure Functions voor dit scenario geselecteerd omdat het aan al hun behoeften voldoet:

  • We moeten snel leveren, dus we moeten een oplossing vinden waar we onze code en vaardigheden kunnen gebruiken.
    • We kunnen de oplossing snel bouwen als een ASP.NET Core-toepassing die code toepast die we al hebben.
  • We moeten een klein stukje functionaliteit herstructureren in een onafhankelijke service.
    • We kunnen een onafhankelijke functie leveren zonder dat u zich zorgen hoeft te maken over het oppervlak van de toepassing.
  • We moeten administratieve overhead in productie minimaliseren.
    • Met Azure Functions hoeft u zich geen zorgen te maken over hostingomgevingen.
  • We moeten grootschalige schaal hebben zonder een enorme inzet te maken.
    • Serverloze technologieën hebben vrijwel onbeperkte schaal die sneller omhoog en omlaag kan gaan dan virtuele machines of app-services.

Azure Functions en andere serverloze technologieën zijn niet altijd de juiste oplossing. Verderop bespreken we waar u resources kunt vinden om u te helpen de juiste technologie voor de taak te selecteren.

Test uw kennis

1.

Welke van deze projecten is een goede kandidaat voor serverloze computing?

2.

Welke van de volgende is geen goede reden om Azure Functions te gebruiken?

3.

Welke van de volgende is geen ondersteunde manier om een Azure Functions-app rechtstreeks te activeren?