codexier.

SaaS och MVP

Vad kostar det att skala upp en befintlig app?

Av CodexierPublicerad 4 min läsning

När en app som byggdes som MVP börjar knaka under riktiga användare är första impulsen ofta att bygga om den eller köpa större servrar. Båda kan bli dyra misstag. Skalningskostnaden har två separata delar, infrastruktur och utveckling, och ordningen ni lägger pengar på dem avgör hur mycket det kostar. Här förklarar vi de två delarna, de snabba vinsterna som brukar komma först, vad djupare ändringar kostar och hur ni budgeterar en skalningsfas utan att gissa.

Infrastruktur eller utvecklingstid

KostnadstypBeteendeVanliga exempel
InfrastrukturÅterkommande, växer med användningenDatabasnivå, serverstorlek, fillagring, bandbredd, externa API:er
Utveckling, snabba vinsterEngångs, litenIndex, frågeoptimering, cache, bildoptimering, jobbköer
Utveckling, arkitekturEngångs, störreDela upp tjänster, läsrepliker, skriva om en het modul, isolera kunder
Utveckling, löpandeÅterkommandeÖvervakning, prestandabudget, hålla beroenden uppdaterade

Snabba vinster före stora ändringar

De flesta appar i tidigt skede är långsamma av ett fåtal orsaker, och de brukar vara billiga att åtgärda när man väl hittat dem. Det här hittar vi ofta när vi granskar en app som knakar:

  • Saknade databasindex på kolumner som används för filtrering och sortering.
  • Sidor som gör en databasfråga per rad i en lista i stället för en fråga för hela listan.
  • Tungt arbete som mejl, PDF-generering eller importer som körs under själva webbanropet i stället för som bakgrundsjobb.
  • Ingen cache för data som sällan ändras, som inställningar, priser eller publika sidor.
  • Stora bilder och kodpaket som skickas till varje användare vid varje besök.

Att åtgärda detta kräver sällan en ombyggnad. Det sänker ofta också infrastrukturkostnaden, eftersom samma hårdvara klarar fler användare. Funderar ni på att skriva om allt, läs bygga om eller refaktorera en MVP först.

Arkitekturändringar och deras pris

Vissa gränser går inte att trimma bort: en tabell som växer utan gräns, en process som inte kan köras parallellt, eller kunder vars data behöver separeras av säkerhets- eller avtalsskäl. Arkitekturarbete prissätts efter hur stor del av koden det berör och hur mycket data som måste flyttas säkert.

  • Läsrepliker eller en större hanterad databas: måttlig utveckling, högre månadskostnad.
  • Flytta en het del till en egen tjänst eller kö: medelstor utveckling, avgränsad risk.
  • Ändra hur kunder isoleras från varandra: omfattande utveckling och noggrann datamigrering; se multi-tenant-arkitektur förklarad.
  • Skriva om en kärnmodul: störst kostnad och risk; bara motiverat med tydliga belägg.

Övervakning som investering

Utan övervakning blir varje skalningsbeslut en gissning, och gissningar är dyra. Felspårning, loggar över långsamma frågor, svarstid per anrop och en enkel drifttidskontroll kostar lite att sätta upp och visar exakt vart tid och pengar går. De gör det också möjligt att bevisa att en ändring fungerade. Se det som första raden i varje skalningsbudget, inte som ett tillval.

Budgetera en skalningsfas

  1. Vecka ett: sätt upp övervakning och samla en grundnivå under normal belastning.
  2. Vecka två och tre: åtgärda de största snabba vinsterna som datan pekar på, och mät igen.
  3. Beslutspunkt: klarar appen nu sina mål, stanna och budgetera bara för löpande skötsel.
  4. Om inte: avgränsa den arkitekturändring datan pekar på, med fast pris och en plan för att backa.
  5. Sätt en månadsbudget för infrastruktur med larm, så att en växande faktura upptäcks tidigt.

När du inte ska köpa av oss: är appen långsam men har få användare och ingen tillväxt kan den billigaste lösningen vara en större databasnivå några månader medan ni fokuserar på försäljning. Skalningsarbete lönar sig när tillväxten är verklig eller avtal hänger på prestandan. Omfattningen av vår tjänst för skalning och optimering står på sidan, och ett kostnadsfritt samtal räcker för att reda ut vilken situation ni är i.

Vanliga frågor

Ska vi gå över till mikrotjänster för att skala?

Sällan i det här skedet. Mikrotjänster ger högre driftkostnad och mer komplexitet. En välstrukturerad samlad applikation med jobbkö och trimmad databas skalar mycket längre än de flesta små SaaS-produkter behöver.

Är en större server en dålig idé?

Inte som tillfällig brygga. Den köper tid medan ni mäter och åtgärdar. Den blir en dålig idé när den ersätter att orsaken åtgärdas, eftersom fakturan då växer med varje ny användare.

Går skalningsarbete att göra utan driftstopp?

De flesta snabba vinster gör det. Databasmigreringar och arkitekturändringar kräver planering, som att köra gammal och ny väg parallellt, men driftstopp kan oftast begränsas till ett kort planerat fönster eller undvikas.

Vad ska vi förbereda innan vi ber om offert?

Åtkomst till övervakning eller loggar om ni har det, de långsammaste sidorna eller anropen som användarna klagar på, nuvarande driftkostnader och era förväntningar på tillväxt det kommande året.

Börjar er app knaka?

Berätta vilken teknik ni använder, ungefärligt antal användare och vad som känns långsamt. På femton minuter kan vi säga om snabba vinster sannolikt räcker och vad en skalningsfas skulle innebära.

Boka ett kostnadsfritt 15-minuterssamtal