Objavljena je verzija 1.13.0 Tokio platforme, dizajnirana za kreiranje visokoučinkovitih aplikacija u jeziku Rust na temelju arhitekture vođene događajima koja podržava višenitnost i obradu mrežnih zahtjeva u asinkronom načinu. Projekt je napisan u Rustu i distribuiran pod licencom MIT-a. Nova verzija označava proširenje dokumentacije, niz ispravaka u mrežnom podsustavu i sustavu sinkronizacije.
Tokio uključuje sljedeće komponente:
- I/O planer s više niti, koji radi tako da pruža resurse samo onim nitima (u kontekstu paralelnog izvođenja) koje ispunjavaju specifične uvjete, čime se izbjegavaju uvjeti utrke koji se često susreću u programima napisanim na jezicima bez sigurne memorije i upravljanja resursima;
- Pozadina za osiguravanje kompatibilnosti s mehanizmima za multipleksiranje veze koji su dostupni u različitim operativnim sustavima, kao što su epoll, kqueue i IOCP;
- Tipovi i povezivanja s implementacijom asinkronih TCP i UDP utičnica.
- Alati za asinkrono izvršavanje zadataka, uključujući primitive sinkronizacije, cijevi i vremensko ograničenje.
- API za obavljanje asinkronog I/O, pokrivajući TCP/UDP utičnice, operacije datoteka, signale i kontrole procesa.
Programeri primjećuju takve značajke svog proizvoda kao što su visoke performanse, usporedive s brzinom rada na golom metalu, izvrsna skalabilnost i pouzdanost koju osigurava sustav tipova i model paralelizma jezika Rust.
Repozitorij ima više od 500 sudionika, uključujući predstavnike AWS, Azure, Comcast, Dropbox i Facebook. Ovisnosti Tokia uključuju proizvode kao što su:
- hiper: brza i sigurna implementacija HTTP/1 i HTTP/2 za Rust;
- warp: lagani okvir za web poslužitelj, usmjeren na veliku brzinu rada;
- praćenje: okvir za praćenje i dijagnostiku na razini aplikacije uzimajući u obzir asinkroniju;
- rdbc: biblioteka za povezivanje MySQL, Postgres i SQLite baza podataka s proizvodima u Rust programskom jeziku;
- bajtovi: Pomoćni programi za manipuliranje bajtovima, uključujući učinkovite međuspremnike bajtova.
Izvor: opennet.ru
