85CHAPTER4|Cloud - nativecommunicationpatternsNoteinthepreviousfigurehowmessagesareinterceptedbyaproxythatrunsalongsideeachmicroservice.Eachproxycanbeconfiguredwithtrafficrulesspecifictothemicroservice.Itunderstandsmessagesandcanroutethemacrossyourservicesandtheoutsideworld.Alongwithmanagingservice - to - servicecommunication,theServiceMeshprovidessupportforservicediscoveryandloadbalancing.Onceconfigured,aservicemeshishighlyfunctional.Themeshretrievesacorrespondingpoolofinstancesfromaservicediscoveryendpoint.Itsendsarequesttoaspecificserviceinstance,recordingthelatencyandresponsetypeoftheresult.Itchoosestheinstancemostlikelytoreturnafastresponsebasedondifferentfactors,includingtheobservedlatencyforrecentrequests.Aservicemeshmanagestraffic,communication,andnetworkingconcernsattheapplicationlevel.Itunderstandsmessagesandrequests.Aservicemeshtypicallyintegrateswithacontainerorchestrator.Kubernetessupportsanextensiblearchitectureinwhichaservicemeshcanbeadded.Inchapter6,wedeep - diveintoServiceMesh
id: 5a70e9807930ca605455db28c54ff9c9 - page: 95
SummaryInthischapter,wediscussedcloud - nativecommunicationpatterns.Westartedbyexamininghowfront - endclientscommunicatewithback - endmicroservices.Alongtheway,wetalkedaboutAPIGatewayplatformsandreal - timecommunication.Wethenlookedathowmicroservicescommunicatewithotherback - endservices.WelookedatbothsynchronousHTTPcommunicationandasynchronousmessagingacrossservices.WecoveredgRPC,anupcomingtechnologyinthecloud - nativeworld.Finally,weintroducedanewandrapidlyevolvingtechnologyentitledServiceMeshthatcanstreamlinemicroservicecommunication.SpecialemphasiswasonmanagedAzureservicesthatcanhelpimplementcommunicationincloud - nativesystems: AzureApplicationGateway
id: 9c6158c00e4cd1590356d2ca1c554808 - page: 95
AzureSignalRService AzureAPIManagement AzureServiceBus DesigningInterserviceCommunicationforMicroservices AzureSignalRService,afullymanagedservicetoaddreal - timefunctionality gRPCDocumentation AboutIngressinAzureKubernetesService(AKS) BuildinggRPCServiceswith.NETvideo 86CHAPTER4|Cloud - nativecommunicationpatterns AzureAPIGatewayIngressController gRPCforWCFDevelopers ComparinggRPCServiceswithHTTPAPIs CHAPTER
id: aca89588f9038b80fb14bd772b381cd5 - page: 95
5Cloud - nativedatapatternsAsweveseenthroughoutthisbook,acloud - nativeapproachchangesthewayyoudesign,deploy,andmanageapplications.Italsochangesthewayyoumanageandstoredata.Figure5 - 1contraststhedifferences.Figure5 - 1.Datamanagementincloud - nativeapplicationsExperienceddeveloperswilleasilyrecognizethearchitectureontheleft - sideoffigure5 - 1.Inthismonolithicapplication,businessservicecomponentscollocatetogetherinasharedservicestier,sharingdatafromasinglerelationaldatabase.Inmanyways,asingledatabasekeepsdatamanagementsimple.Queryingdataacrossmultipletablesisstraightforward.Changestodataupdatetogetherortheyallrollback.ACIDtransactionsguarantee strongandimmediateconsistency.Designingforcloud - native,wetakeadifferentapproach.Ontheright - sideofFigure5 - 1,notehowbusinessfunctionalitysegregatesintosmall,independentmicroservices.Eachmicroserviceencapsulatesaspecificbusinesscapabilityanditsowndata.Themonolithicdatabasedecomposes 87CHAPTER5|Cloud - nativedatapatterns
id: e606fc3b7a36b1ae3fb46db944ca4a3c - page: 97