Studija slučaja AI i SaaS

Naš SaaS za transkripciju prešao je iz Rails u Rust u sedam dana, a nikoga nije odjavio

SoundScript.AI pretvara zvuk u tekst na 99 jezika. Njegova Rails aplikacija je na jednom malom serveru držala web stranicu, poslove u pozadini i Redis i dolazila je do svojih granica. Prepisali smo je u Rustu, provjerili stranicu po stranicu u odnosu na staru aplikaciju i prebacili produkciju u prozoru od oko četiri minute.

Klijent
Envixo
Platforma
Web aplikacija i mobilni API
Industrija
AI i SaaS
Pokrenuto
2026

Izazov

Aplikacija na Rails 8.1 je radila, ali su Puma, Sidekiq, Redis i PostgreSQL dijelili server sa 1.9 GB memorije. Pod opterećenjem su stranice odgovarale po nekoliko sekundi, a u julu 2026. poslovi u pozadini su se zamrzli pet dana.

Prije: Puma, Sidekiq, Redis i PostgreSQL na jednom serveru sa 1.9 GB memorije
Poslije: Web i worker servisi na Kubernetesu sa upravljanim PostgreSQL 18 i bez Redisa: redovi, žive promjene i ograničenja zahtjeva rade na PostgreSQL-u
Prije: Medijana od 2.7 s na javnim stranicama pri 100 istovremenih konekcija
Poslije: Medijana od 11.7 ms u istom testu
Prije: PDF izvozi nečitki na arapskom, hebrejskom, perzijskom, urdu i devanagari pismu
Poslije: PDF-ovi slagani u Typstu sa Noto fontovima, sa ispravnim oblikovanjem i tekstom s desna na lijevo
Prije: Webhookovi za plaćanja i transkripciju koji su primali nepotpisane događaje kada bi tajni ključ izostao
Poslije: Svaki potpis webhooka provjeren, uvijek
Prije: 937 MB memorije u vršnom opterećenju
Poslije: 102 MB memorije u vršnom opterećenju

Šta smo izradili

Potpuno prepisivanje proizvoda, ne prototip: web stranica na 99 jezika, proces transkripcije, AI sažeci i chat, izvozi, naplata, mobilni API i administratorska konzola.

Isti URL-ovi i ugovori

Svaka lokalizirana stranica, putanja webhooka, endpoint mobilnog API-ja i storage bucket ostali su isti, pa su linkovi, aplikacije i integracije nastavile raditi.

Niko nije odjavljen

Aplikacija u Rustu čita Rails kolačić sesije i postojeće hash vrijednosti lozinki, pa su korisnici ostali prijavljeni kroz prelazak.

Podaci provjereni, a ne pretpostavljeni

Nakon posljednje kopije uporedili smo broj redova i kontrolne sume računa, transkripata, potrošnje i pretplata između stare i nove baze podataka: identični.

Okruženje za testiranje pariteta

Protiv obje aplikacije ponovljeno je i uporedeno 1,126 zahtjeva za stranice u 11 tipova korisnika i četiri jezika, 39 poslanih formi i 343 administratorska zahtjeva.

Cijeli proizvod

Transkripcija pomoću Whispera i Azure, živi status, AI sažetak i chat, izvoz u TXT, SRT, DOCX i PDF, naplata preko Stripea i Google Playa, i administratorska konzola.

Siguran put natrag

Stari server je ostao netaknut dvije sedmice nakon prelaska, pa je vraćanje nazad bila promjena DNS-a.

Inženjerski rezultati

Mjereno u testu opterećenja prije lansiranja, na dijeljenoj mašini: apsolutni brojevi su okvirni, odnosi važe.

230x
Brži medijan odziva pod opterećenjem
9x
Manje memorije u vršnom opterećenju
880
Automatizirani testovi pri svakoj promjeni
7
Dana od prvog commita do produkcije
  • Produkcija prebačena u prozoru od oko četiri minute
  • Registracija, upload, živi status, preuzimanja, AI, API i administracija provjereni u produkciji nakon prelaska
  • Test opterećenja otkrio je grešku u poolu konekcija, ispravljenu prije lansiranja
  • 99 jezika, uključujući PDF-ove koji se pišu s desna na lijevo

Tehnologija

  • Rust
  • axum
  • PostgreSQL
  • Typst
  • OpenAI Whisper
  • Azure Speech
  • Stripe
  • Kubernetes

Trebate softver izrađen po mjeri vašeg poslovanja?

Integracije, interni alati, aplikacije i platforme po narudžbi, koje razvijaju iskusni inženjeri koji upravljaju AI agentima. Recite nam šta trebate i pokazat ćemo vam kako bismo to izradili.