"SKYLOGIQ" The moon can't shine on its own.
Rust2 min de cititEchipa de ingineri SKYLOGIQ

Mandatul de memory-safety: ce înseamnă trecerea la Rust pentru planul vostru pe 2027

Guvernele au cerut industriei de software să nu mai scrie cod vulnerabil la erori de memorie. Iată ce înseamnă asta pentru sistemele pe care le rulați și de ce migrarea costă mai puțin pe calendarul vostru decât pe al altcuiva.

Ce s-a întâmplat

În februarie 2024, Biroul Directorului Național pentru Securitate Cibernetică din cadrul Casei Albe a publicat un raport care cere industriei tehnologice să adopte limbaje de programare memory-safe, adică limbaje care elimină erorile de memorie. Raportul se bazează pe îndrumările CISA, NSA și ale agențiilor aliate de securitate cibernetică. Argumentul e aritmetic: majoritatea vulnerabilităților grave din codebase-urile mari în C și C++ sunt erori de memorie. Limbajele memory-safe elimină la compilare toată această clasă de defecte.

Direcția e stabilită. Rust rulează acum în kernelul Linux, în Windows, în Android și în infrastructura marilor furnizori de cloud. Regulile de achiziții din administrație și din infrastructura critică încep să ceară planuri de memory-safety.

Ce înseamnă pentru PHP, Java și Node

Mandatul vorbește despre C și C++, iar unele organizații care rulează PHP, Java sau Node concluzionează că nu le privește. Le privește altfel. Aceste limbaje sunt memory-safe în sens strict, dar sistemele scrise în ele acum zece ani au alte costuri structurale: performanță care cere de zece ori mai mult hardware, arbori de dependențe pe care nu i-a auditat nimeni și o piață a specialiștilor care se orientează spre alte tehnologii.

Întrebarea nu e dacă aceste sisteme vor fi rescrise în deceniul acesta. Întrebarea e dacă rescrierea e planificată sau forțată.

De ce „rescriere” e cuvântul greșit

Rescrierile complete eșuează. Durează de două ori mai mult decât s-a planificat, sistemul vechi continuă să se schimbe în timp ce lucrați, iar firma rulează două platforme ani de zile. Alternativa e migrarea: servicii noi în Rust, puse lângă cele vechi. Ele primesc trafic oglindit, le comparați automat cu cele vechi și le activați pe rând, când rezultatele sunt identice. Sistemul vechi nu se oprește până când cel nou nu s-a dovedit pe trafic real de producție. Am făcut asta pe platforme în funcțiune. Pornește mai greu și se termină mai repede.

Ce faceți în 2027

Inventariați sistemele. Majoritatea organizațiilor descoperă servicii despre care uitaseră. Ordonați-le după risc, valoare și grad de cuplare. Alegeți prima migrare ca să dovediți metoda, nu ca să arătați curaj. Bugetați-o drept cost operațional, nu drept proiect de capital, pentru că asta este. Și fiți sinceri cu ce nu trebuie mutat: un instrument de raportare folosit de patru oameni din finanțe rămâne unde e. Fluxul de plăți nu rămâne.

Scris de echipa de ingineri SKYLOGIQ.Planificați o migrare la Rust

Versiunea în română e adaptată automat după originalul în engleză și verificată de un al doilea model AI. Originalul în engleză

Sistemele de care depinde afacerea voastră trebuie construite de oameni care au mai construit astfel de sisteme.

The moon can't shine on its own.