Een nieuwe API in API Management maken op basis van een functie-app
Met de Azure API Management-service kunt u een API maken op basis van een set verschillende microservices.
In uw online winkel wordt elk deel van de toepassing geïmplementeerd als een microservice: één voor de productgegevens, één voor ordergegevens, enzovoort. Een afzonderlijk team beheert elke microservice en elk team maakt gebruik van continue ontwikkeling en levering om hun code regelmatig bij te werken en te implementeren. U wilt een methode waarmee u deze microservices in één product kunt samenvoegen en dat product vervolgens centraal kunt beheren.
In deze les leert u hoe Azure API Management nuttig is in een serverloze architectuur door afzonderlijke API's van afzonderlijke microservices te bouwen.
Serverloze architectuur en microservices
Microservices zijn een populaire benadering van de architectuur van gedistribueerde toepassingen. Wanneer u een toepassing bouwt als een verzameling microservices, maakt u veel verschillende kleine services. Elke service is verantwoordelijk voor bepaalde functies en wordt onafhankelijk ontwikkeld, geïmplementeerd en geschaald. Deze modulaire architectuur resulteert in een eenvoudiger te begrijpen, te verbeteren en te testen toepassing. Het maakt continue levering ook eenvoudiger, omdat u slechts een klein deel van de hele toepassing wijzigt wanneer u een microservice implementeert.
Een andere trend in de ontwikkeling van gedistribueerde software is de serverloze architectuur. Hierbij publiceert een hostorganisatie een reeks services waarmee ontwikkelaars hun code kunnen uitvoeren. De ontwikkelaars hoeven zich niet bezig te houden met de ondersteunende hardware, besturingssystemen, onderliggende software en andere infrastructuur. In plaats daarvan wordt de code uitgevoerd in staatloze computingresources die worden geactiveerd door aanvragen. Er worden alleen kosten gemaakt wanneer de services worden uitgevoerd, dus u betaalt niet veel voor services die zelden worden gebruikt.
Azure Functions
Azure Functions is een service die serverloze architecturen in Azure mogelijk maakt. U kunt functies schrijven zonder dat u zich zorgen hoeft te maken over de ondersteunende infrastructuur in veel verschillende talen, waaronder C#, Java, JavaScript, PowerShell en Python. U kunt ook bibliotheken van NuGet en node Pakketbeheer (npm) gebruiken en gebruikers verifiëren met de OAuth-standaard van providers zoals Active Directory, Facebook, Google en Microsoft-account.
Wanneer u een functie schrijft, kiest u de gewenste sjabloon op basis van hoe u uw code wilt activeren. Als u de functie bijvoorbeeld wilt uitvoeren als reactie op een HTTP-aanvraag, gebruikt u de sjabloon HTTPTrigger. U kunt andere sjablonen gebruiken en deze uitvoeren wanneer er nieuwe berichten in een wachtrij, een blobopslagcontainer of een vooraf gedefinieerd schema zijn.
Wanneer u Azure Functions in een verbruiksabonnement gebruikt, worden er alleen kosten in rekening gebracht voor de tijd dat uw code wordt uitgevoerd.
Azure API Management
Azure API Management is een volledig beheerde cloudservice die u kunt gebruiken om API's te publiceren, beveiligen, transformeren, onderhouden en bewaken. Het helpt organisaties bij het publiceren van API's naar externe, partner- en interne ontwikkelaars om het potentieel van hun gegevens en services te ontsluiten. API Management verwerkt alle taken die betrokken zijn bij het mediateren van API-aanroepen. Inclusief verificatie en autorisatie aanvragen, frequentielimiet en quota afdwingen, transformatie van aanvragen en antwoorden, logboekregistratie en tracering en API-versiebeheer. Met API Management kunt u moderne API-gateways maken en beheren voor bestaande back-endservices, ongeacht waar ze worden gehost.
Omdat u Azure Functions kunt publiceren via API Management, kunt u deze gebruiken om een microservicesarchitectuur te implementeren; elke functie implementeert een microservice. Door verschillende functies toe te voegen aan één API Management-product, kunt u deze microservices inbouwen in een geïntegreerde gedistribueerde toepassing. Zodra de toepassing is gemaakt, kunt u API Management-beleid gebruiken om caching te implementeren of om te voldoen aan beveiligingsvereisten.
Api Management-verbruikslaag
Wanneer u een gebruiksplan voor API Management kiest, kunt u de verbruikslaag kiezen. De verbruikslaag is met name geschikt voor op microservices gebaseerde architecturen en gebeurtenisgestuurde systemen. Het is bijvoorbeeld een fantastische keuze voor onze web-API voor onlinewinkels.
De verbruikslaag maakt gebruik van dezelfde onderliggende serviceonderdelen als de vorige lagen, maar maakt gebruik van een volledig andere architectuur op basis van gedeelde, dynamisch toegewezen resources. De verbruikslaag is perfect afgestemd op serverloze computingmodellen. Er is geen infrastructuur om te beheren en geen niet-actieve capaciteit. Het biedt hoge beschikbaarheid, automatisch schalen en prijzen op basis van gebruik. Dit maakt de verbruikslaag allemaal een bijzonder goede keuze voor oplossingen die betrekking hebben op het beschikbaar maken van serverloze resources als API's.
In de volgende eenheid maakt u een exemplaar van API Management en voegt u er een functie aan toe.