Studiu de caz AI și SaaS

SaaS-ul nostru de transcriere a trecut din Rails în Rust în șapte zile, fără să deconectăm pe nimeni

SoundScript.AI transformă audio în text în 99 de limbi. Aplicația lui în Rails ținea site-ul, sarcinile din fundal și Redis pe un singur server mic și ajungea la limită. Am rescris-o în Rust, am verificat-o pagină cu pagină față de aplicația veche și am comutat producția într-o fereastră de circa patru minute.

Client
Envixo
Platformă
Aplicație web și API mobil
Industrie
AI și SaaS
Lansat
2026

Provocarea

Aplicația Rails 8.1 funcționa, dar Puma, Sidekiq, Redis și PostgreSQL împărțeau un server cu 1.9 GB de memorie. La încărcare mare, paginile răspundeau în câteva secunde, iar în iulie 2026 sarcinile din fundal au stat blocate cinci zile.

Înainte: Puma, Sidekiq, Redis și PostgreSQL pe un singur server cu 1.9 GB de memorie
După: Servicii web și worker pe Kubernetes cu PostgreSQL 18 administrat și fără Redis: cozile, actualizările live și limitele de trafic rulează pe PostgreSQL
Înainte: O mediană de 2.7 s pe paginile publice la 100 de conexiuni simultane
După: O mediană de 11.7 ms la același test
Înainte: Exporturi PDF ilizibile în arabă, ebraică, persană, urdu și în scrierile devanagari
După: PDF-uri compuse cu Typst și fonturi Noto, cu forme corecte ale literelor și text de la dreapta la stânga
Înainte: Webhookuri de plată și de transcriere care acceptau evenimente nesemnate când lipsea un secret
După: Fiecare semnătură de webhook verificată, mereu
Înainte: 937 MB de memorie la vârf
După: 102 MB de memorie la vârf

Ce am construit

O rescriere completă a produsului, nu un prototip: site-ul în 99 de limbi, fluxul de transcriere, rezumatele și chatul cu AI, exporturile, facturarea, API-ul mobil și consola de administrare.

Aceleași adrese URL și contracte

Fiecare pagină localizată, cale de webhook, endpoint al API-ului mobil și spațiu de stocare a rămas la fel, așa că linkurile, aplicațiile și integrările au continuat să funcționeze.

Nimeni nu a fost deconectat

Aplicația în Rust citește cookie-ul de sesiune din Rails și parolele criptate existente, așa că utilizatorii au rămas autentificați peste comutare.

Date verificate, nu presupuse

După copia finală, numărul de rânduri și sumele de control pentru conturi, transcrieri, consum și abonamente au fost comparate între baza de date veche și cea nouă: identice.

Un banc de testare pentru paritate

1,126 de cereri de pagină pentru 11 tipuri de utilizatori și patru limbi, 39 de formulare trimise și 343 de cereri de administrare au fost reluate în ambele aplicații și comparate.

Tot produsul

Transcriere cu Whisper și Azure, stare live, rezumat și chat cu AI, exporturi TXT, SRT, DOCX și PDF, facturare cu Stripe și Google Play și o consolă de administrare.

Un drum sigur înapoi

Serverul vechi a rămas intact două săptămâni după comutare, așa că revenirea era o schimbare de DNS.

Rezultate tehnice

Măsurat într-un test de încărcare înainte de lansare, pe o mașină partajată: cifrele absolute sunt orientative, raporturile se păstrează.

230x
Mediană de răspuns mai rapidă la încărcare
9x
Mai puțină memorie la vârf
880
Teste automate rulate la fiecare modificare
7
Zile de la primul commit până în producție
  • Producția a fost comutată într-o fereastră de circa patru minute
  • Înscrierea, încărcarea, starea live, descărcările, AI, API-ul și consola de administrare verificate în producție după comutare
  • Testul de încărcare a găsit o eroare în pool-ul de conexiuni, reparată înainte de lansare
  • 99 de limbi, inclusiv PDF-uri de la dreapta la stânga

Tehnologie

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

Ai nevoie de software construit în jurul afacerii tale?

Integrări, instrumente interne, aplicații și platforme, construite la comandă de ingineri seniori care coordonează agenți AI. Spune-ne de ce ai nevoie și îți arătăm cum le-am construi.