‫Wat is de beste strategie om uw containers uit te stellen om ze op een specifieke volgorde te houden, zoals het doen
‫van D. B. Webb konijn enzovoort.
‫Dus het belangrijkste is dat dit niet eens een dev-OP is die zegt dat dit een gedistribueerd computergebruik is.
‫Ik neem aan dat je het hebt over productie en niet over lokale ontwikkelingsworkflow met zoiets
‫als Docker compose.
‫Maar je hebt het over productie, al je apps moeten kunnen mislukken of opnieuw proberen.
‫Dus het hele idee of dit al dan niet vóór Docker is, in feite, wat je daar ook gebruikt, het moet op
‫de een of andere manier herstellen van het niet kunnen praten met andere diensten buiten zijn eigen diensten.
‫En dit is een kernprincipe van gedistribueerd computergebruik.
‫In feite, als je opzoekt wat een bron hier zou zijn, is 12 factor twaalf factor dot net is een soort van een tien jaar oude reeks principes
‫rond de denkwijze van cloud-native en gedistribueerde computing, dat zijn twee verschillende maar vergelijkbare soorten dingen
‫die echt het gaat erom of ik een heleboel servers heb of een heleboel dingen waar mijn servers mee moeten
‫praten, hoe kan ik die allemaal orkestreren om beschikbaar te zijn wanneer ze
‫beschikbaar moeten zijn.
‫En het antwoord is dat u het opstarten niet goed kunt regelen, omdat opstarten slechts een deel van het probleem is.
‫Wanneer u een container moet vervangen als de andere containers de verbinding verliezen omdat een container of een
‫andere service even uitvalt, moeten al die andere services die deze
‫gebruiken herstellen.
‫En dus in tegenstelling tot vroeger, waar we een enkele server hadden en we de database in
‫de website op dezelfde server plaatsten en die altijd beschikbaar en online was totdat het uitviel, dat was gemakkelijk.
‫Maar nu in deze wereld hebben we uw containers gedistribueerd en al uw services moeten daar rekening
‫mee houden.
‫Dus ze moeten ofwel een nieuwe poging hebben, wat het meest jammer is als je ontwikkeling doet.
‫De meeste databasestuurprogramma's hebben allemaal een ingebouwde nieuwe poging om het opnieuw te proberen, zoals
‫Mongo D. B. en knoop. js heeft zelfs een bufferprotocol waarbij het
‫geen verbinding kan maken, het houdt de opdrachten een tijdje vast om te wachten tot de database weer online komt.
‫Het is gewoon ingebouwd in de driver voor je ontwikkeltaal, dus er zijn veel van dat soort
‫dingen.
‫En als uw app zoiets niet doet, dan mislukt het gewoon.
‫Het leuke als je containerorkestratie gebruikt, is dat een deel van die taak van die orkestrator is
‫dat als de container gewoon crasht omdat hij de verbinding met iets verliest, de orkestrator opnieuw zal opstarten
‫en in feite een nieuwe kopie daarvan ergens anders zal starten.
‫En dat is een manier om te herstellen van een mislukking.
‫Het is een beetje schoner en minder belastend voor uw systemen als ze het gewoon opnieuw proberen, maar een andere manier in Docker
‫om dit te doen, is door uw apps in wezen te laten crashen en dan zal Docker ze opnieuw opstarten op basis van uw
‫instellingen.
‫Dus ik weet dat dat waarschijnlijk niet de kleine klikknop is.
‫Antwoord veel.
‫Mensen antwoorden misschien gewoon: Oh, je moet opnieuw proberen aan je arts of zoiets, maar dat is geen
‫productie-oplossing omdat het alleen maar hoeft te doen dat heeft alleen te maken met het
‫oorspronkelijke opstarten en als je zelfs googlet naar zoiets als Wacht erop, scripts die don het hele probleem
‫lost ook niet echt het hele probleem op, omdat je
‫naar een van de dingen gaat, als je containers gaat gebruiken, ga je ze vaker bijwerken. dingen zullen vaker
‫worden bijgewerkt dan in het verleden, want dat is een van de belangrijkste huurders
‫van dev ops die voortdurend evolueert en verbetert.
‫Dus als je daarmee begint, betekent dat dat elk stukje van je puzzel elk ander stukje van de puzzel moet kunnen
‫verwerken dat naar beneden gaat en dat kun je niet echt doen met de opstartvolgorde als je begrijpt wat
‫ik bedoel.
‫Hopelijk helpt dat.
‫Het is een moeilijk probleem om op te lossen als je te maken hebt met oudere apps, maar het is een continuüm.
‫U moet er voortdurend aan werken om door te gaan met het proces om ervoor te zorgen dat uw apps alle fouten afhandelen.
‫In wezen is het geen gemakkelijk probleem.
‫Het is een proces om door te gaan.