sql >> Database teknologi >  >> NoSQL >> MongoDB

Den bedste måde at hoste MongoDB på DigitalOcean

MongoDB er #3 open source-databasen og #1 NoSQL-databasen i verden. Det er en dokumentorienteret database på tværs af platforme, der bruger JSON-lignende dokumenter med skema og udnyttes bredt på tværs af startup-apps op til virksomheder på virksomhedsniveau, der udvikler moderne apps. Selvom du kan antage, at et stort flertal af cloud-database-implementeringerne køres på AWS, Azure eller Google Cloud Platform, er det især små og mellemstore virksomheder, der søger mod den udviklervenlige cloud-udbyder, DigitalOcean, for deres hosting for MongoDB® behov. I dette indlæg vil vi guide dig gennem den bedste måde at hoste MongoDB på DigitalOcean, inklusive de bedste instanstyper at bruge, disktyper, replikeringsstrategi og administrerede tjenesteudbydere.

DigitalOcean Advantages for MongoDB

Så hvad gør DigitalOcean til et overbevisende alternativ til andre populære MongoDB-hostingudbydere som AWS og Azure? Som nævnt ovenfor er DigitalOcean yderst udviklervenlig med sin enkle og letforståelige platform – du behøver ikke at blive certificeret gennem denne cloud-udbyder for at kunne få din implementering op at køre med tillid. De tilbyder SSD-baseret cloud-hosting med ligetil priser og starter ved kun $5/måned, hvilket gør det ideelt (og overkommeligt) for udviklere at bygge, teste og implementere deres nye applikationer problemfrit i skyen. Det mest imponerende er, at du ikke går på kompromis med ydeevnen for omkostningerne. Vi kørte ydeevnetest for MongoDB på DigitalOcean vs. AWS vs. Azure og fandt ud af, at DigitalOcean-ydeevnen var på linje med, hvis ikke bedre, på både høj gennemløb og lav latenstid i implementeringen.

DigitalOcean Droplets

DigitalOcean har specialiseret sig i SSD-baserede virtuelle maskiner kaldet Droplets, der er opdelt i fire enkle kategorier. Den mest basale dråbe er deres standardforekomst, som bruger delt CPU fra kun $5/måned. Selvom det er tilstrækkeligt til applikationer med lav trafik, små databaser og dev/testmiljøer, anbefaler vi, at du ikke udnytter delte klynger til dine MongoDB-produktionsimplementeringer. De tilbyder også en dedikeret CPU-optimeret dråbe, som er tilstrækkelig til CPU-intensive arbejdsbelastninger, men tilbyder lav hukommelse, som ikke er ideel til MongoDB-hosting.

Hvis du implementerer en mellemstor MongoDB-arbejdsbelastning, vil vi anbefale deres mest populære General Purpose Droplet, som er en dedikeret instans, der tilbyder 4 GB hukommelse til hver vCPU. Dette er typisk mere end tilstrækkeligt til produktionsinstallationer og applikationer med høj trafik og starter ved $60/måned for 8 GB hukommelse, 2 vCPU'er, 4 TB overførsel og 25 GB SSD-diskplads. DigitalOcean lancerede også for nylig deres Memory-Optimized Droplets, som er dedikerede instanser, der er designet til RAM-intensive applikationer og højtydende databaser, hvilket gør det til en attraktiv løsning til MongoDB-applikationer med tung arbejdsbelastning.

Du kan implementere MongoDB på DigitalOcean i 12 datacenterregioner over hele verden, inklusive USA (New York City og San Francisco), Canada, Holland, Singapore, Storbritannien , Tyskland og Indien.

DigitalOcean-disktyper

En af grundene til, at MongoDB klarer sig så godt på DigitalOcean, er deres SSD-diske, som er ideelle til cloud-database-implementeringer. De giver stor gennemstrømning, der giver betydelige fordele ved at køre et indeks på din database eller reparere en maskine, hvilket sparer dig en betydelig mængde tid i forhold til en standard MongoDB-implementering på AWS. De tilbyder endda forbløffende lav latenstid fra Amazon AWS US-East til DigitalOcean New York datacenter, hvilket er fantastisk til applikationer, der kører deres front på mid-tier på AWS, men gerne vil bruge DigitalOcean til deres MongoDB-klynger.

MongoDB-replikeringsstrategier

Hvis du kører MongoDB på DigitalOcean i produktion, er det bedste praksis at implementere ved hjælp af et replikasæt for at sikre høj tilgængelighed og dataredundans for dine klynger. DigitalOcean tilbyder sammen med AWS og Azure en 99,99 % oppetid SLA, men selvom det lyder tæt på perfekt, svarer de 0,01 % til 52,6 minutters nedetid på et år. Det er næsten en time, hvor din database bliver utilgængelig for dine kunder, besøgende og medarbejdere, hvilket kan have en betydelig indvirkning på din kundefastholdelse og dit brands omdømme.

MongoDB replikasæt

Heldigvis kan du i høj grad mindske risikoen for, at din implementering går ned med tab af et datacenter ved at opsætte et geografisk distribueret 3-node replikasæt til MongoDB på DigitalOcean. Der er et par muligheder for at opsætte denne konfiguration, den første er en primær-sekundær-arbiter-opsætning, som giver 2 databærende noder og en arbiter, der fungerer som et stemmemedlem til at bestemme, hvilken replika der skal tage over i tilfælde af, at en bliver utilgængelig . Dette er den mest overkommelige mulighed, da dommeren ikke har nogen data og koster mindre at implementere, men tilbyder også 1 mindre node, der kan tage over i en failover-begivenhed. Den optimale replikeringsstrategi ville være en primær-sekundær-sekundær opsætning, som udnytter 3 databærende noder og giver dig mulighed for failover til 2 separate datacentre, hvis din primære region går ned.

Den bedste måde at være vært for #MongoDB på DigitalOceanKlik for at tweete

MongoDB Sharding

MongoDB sharding er en avanceret form for implementering, der giver dig mulighed for at skalere dine data vandret på tværs af flere maskiner. Dette er en meget kompleks konfiguration at konfigurere og administrere, da hvert shard indeholder flere replikasæt og kan distribueres på tværs af forskellige datacenterplaceringer for høj tilgængelighed. Sharding er ideel til meget store datasæt eller implementeringer med høj kapacitet, der kræver mere kapacitet, som du kan få med en enkelt server. Hvor den typiske implementering skaleres lodret ved at tilføje mere kapacitet til en server, når det er nødvendigt, giver sharding dig mulighed for at skalere vandret ved at opdele dine data og indlæse på tværs af flere maskiner. Når du har konfigureret dit sharded miljø, kan du tilføje flere shards efter behov for at understøtte væksten af ​​din applikation.

Hos ScaleGrid tilbyder vi Standalone, 2 replikaer + Arbiter, 3 replikaer og avancerede Sharding-konfigurationer til hosting af MongoDB på DigitalOcean under vores dedikerede hostingplan, der starter med en mikroplanstørrelse til $35/ måned op til et X4XLarge-abonnement med 16 kerner, 48 GB RAM og 950 GB lagerplads. Du kan også tilpasse dit MongoDB replikasæt med et ubegrænset antal replikaer til dine applikationsbehov.

Administreret MongoDB-hosting på DigitalOcean

Nu kommer vi ned til det ultimative spørgsmål – skal du selv administrere din MongoDB på DigitalOcean-implementeringer eller udnytte en fuldt administreret Database-as-a-Service (DBaaS) platform? Svaret koger ned til din tid, viden og alle tiders tilgængelighed til at håndtere kritiske problemer, der opstår i forbindelse med din implementering.

Administrations- og vedligeholdelsesopgaver

MongoDB DBaaS-platforme giver dig mulighed for at automatisere alle dine tidskrævende administrations- og vedligeholdelsesoperationer som versionsopgraderinger, skalering, gratis sikkerhedskopier, gendannelser, klargøring, deprovisioning, replikering, komprimering, indeksering management, OS patching og log rotationer. Afhængigt af størrelsen på din implementering kan dette tage dig 1-2 dage om måneden, op til en fuldtidshær af MongoDB-eksperter, der arbejder døgnet rundt. En stor fordel ved at udnytte en DBaaS-platform er, at du eliminerer risikoen for menneskelige fejl, da administrationsoperationerne er automatiseret for dig. Det holder også dine MongoDB-klynger på DigitalOcean fuldt sikret og opdaterede, så du ikke åbner dine implementeringer op for potentielle fejl eller trusler, der kan præsenteres med en forsømt database.

Overvågning af ydeevne

Overvågning er også en stor komponent til at administrere en MongoDB-implementering. Med en DBaaS-platform kan du automatisere advarsler om alle dine nøgle MongoDB-metrikker, så du er informeret i det øjeblik, en uønsket tærskel er nået, og få adgang til en avanceret overvågningskonsol til at analysere alle dine MongoDB- og OS-metrikker på tværs af dine primære og sekundære instanser og over et hvilket som helst tidsrum. Derudover kan du med en DBaaS som ScaleGrid udnytte Slow Query Analyzer, som giver dig mulighed for at visualisere langsomt kørende forespørgsler og optimere dem, før de begynder at påvirke din implementeringsydelse.

Fejlfindingssupport

Sidst, men absolut ikke mindst, er tilgængeligheden til support. Hvis du er blevet vækket kl. 04.00 af et hektisk opkald fra din chef, der undrede dig over, hvorfor din ansøgning er nede, og hvor hurtigt du kan få den op igen, ved du præcis, hvad jeg taler om. Hvert minuts nedetid kan forårsage forretning i tusindvis af dollars, og meget værre, et sikkerhedsbrud kan lukke din virksomhed helt ned og sætte en evig plet på dit omdømme. Ved at udnytte en DBaaS-platform kan du komme foran over 90 % af disse kritiske problemer og have et team af MongoDB-eksperter ved din side 24/7 for de uundgåelige 10 % for at hjælpe dig med hurtigt at identificere og løse problemerne for at få din implementering tilbage til en sund, kørende tilstand.

Hos ScaleGrid identificerede vi DigitalOcean som en up-and-coming rockstar til hosting af MongoDB og cloud computing generelt tilbage i 2013, og var de første DBaaS platform for at lancere support til MongoDB DigitalOcean. Stadig i dag er vi den eneste fuldt administrerede DBaaS-platform, der giver dig mulighed for at automatisere din hosting for MongoDB på DigitalOcean og udnytte databasestyringsværktøjer i virksomhedskvalitet til at optimere din implementeringsydelse, sikkerhed og tilgængelighed i skyen. Hvis du er interesseret i at prøve nogle af de avancerede funktioner i en DBaaS til MongoDB på DigitalOcean, kan du starte en gratis 30-dages prøveperiode uden kreditkort påkrævet for at udforske automatiseringsværktøjerne, og tjek siden Sammenlign MongoDB-udbydere for at se, hvordan vi klarer os mod MongoDB Atlas, mLab, ObjectRocket og Compose for MongoDB.


  1. Sådan indstilles featureCompatibilityVersion i MongoDB

  2. MongoDB - få dokumenter med max attribut per gruppe i en samling

  3. Åbn Redis-porten for fjernforbindelser

  4. MongoDB $degreesToRadians