Gyorsabb előnézeteket ígér a Lovable Rust-alapú OJ motorja

A Lovable fokozatosan új, OJ nevű motorra állítja át az alkalmazás-előnézeteket. A Rustban írt, Vite-kompatibilis rendszer a cég mérései szerint rövidebb indulási időt és jóval kisebb memóriaigényt kínál.
- A Lovable fokozatosan OJ-ra állítja át az előnézetek motorját.
- Az OJ egy Rustban írt, Vite-kompatibilis bináris.
- A vállalat méréseiben az OJ kevesebb memóriát használt a Vite-nél.
- Az éles tesztben az előnézet betöltésének medián ideje 17,4-ről 8,0 másodpercre csökkent.
- Az OJ forráskódja a Lovable GitHub-szervezetében érhető el.
Miért vált motort a Lovable?
A Lovable előnézete valós fejlesztői szerverként futtatja az alkalmazást, gyors újratöltéssel. A háttérben eddig a Vite biztosította ezt a működést, amelyet a vállalat modern iparági szabványnak nevez. A Vite azonban eredetileg egy fejlesztő, egy laptop használatára készült.
A Lovable közlése szerint a szolgáltatás naponta nagyjából egymillió homokozót, vagyis elkülönített fejlesztési környezetet indít el. Minden Vite-példány JavaScript-futtatókörnyezetet és projektfüggőségeket használ, miközben jelentős memóriát foglal. Több ezer párhuzamos előnézetnél ez lassabb hidegindítást és nagyobb erőforrásigényt okozhat.
Az OJ, amelyet a cégen belül eredetileg Orange Juice néven emlegettek, egyetlen Rust-bináris. A meglévő vite.config.ts vagy oj.config.ts fájlt olvassa, és kompatibilitási rétegen keresztül valódi Vite-bővítményeket is futtat. A rendszer többek között a React Fast Refresh és a TanStack Start működését is újra megvalósítja.
Rust alapokon, ügynökös szerkesztéshez tervezve
Az OJ a Lovable leírása szerint végponttól végpontig Rustban készült. A fájlfigyelőtől a modulgráfon és a fordítón át a websocketig egyetlen összehangolt folyamatot alkot, és csak akkor indít kis Node-oldalkomponenst, ha az alkalmazás bővítményei vagy szerverkódja ténylegesen JavaScriptet igényel.
A motor a Rolldown és az Oxc Rust-alapjaira épít. A Lovable külön kiemeli, hogy az OJ-t ügynökös szerkesztéshez is tervezték. Egy ember jellemzően egy fájlt ment el, egy ügynök viszont rövid idő alatt tíz fájlt is módosíthat. Az OJ ezeket a változásokat egyetlen konzisztens frissítésbe vonja össze, így az előnézet nem minden köztes, félkész állapotot jelenít meg.
A fejlesztőknek ehhez nem kell külön beállítást elvégezniük. A Lovable szerint a meglévő konfiguráció és a használt bővítmények változatlanul működhetnek, az OJ pedig fokozatosan jelenik meg az előnézetek mögött.
A Lovable mérései szerint gyorsabb és takarékosabb
A Lovable egy 10 000 komponensből álló tesztalkalmazáson az OJ hidegindítását 1,2 másodpercre, a Vite-ét 4,9 másodpercre mérte. Az OJ memóriaigénye körülbelül 115 MB volt, míg a Vite több mint 1,5 GB-ot használt.
Valós, nyílt forráskódú alkalmazásokon is végeztek összehasonlítást. Az Excalidraw esetében az OJ hidegindítása körülbelül 0,8, a Vite-é körülbelül 2,3 másodperc volt, a memóriahasználat pedig 288 MB, illetve 2,4 GB. A Twenty CRM esetében ezek az értékek körülbelül 10,2 és 11,3 másodpercet, valamint 1,5 és 4,9 GB-ot tettek ki.
A vállalat jelzi, hogy a sebességadatok nem teljesen azonos feltételekből származnak, mivel a Vite-mérésekben szerepelt a vite-plugin-checker, az OJ pedig ezt a bővítményt még nem támogatja. A Lovable ezért a memóriaigényt tartja fontosabb összevetési pontnak. Saját állítása szerint az OJ az alkalmazásokat a Vite memóriahasználatának egyharmada és egy nyolcada közötti értéken szolgálja ki.
Éles előnézetekben is bevezetik
A Lovable kontrollált éles tesztjében az előnézet megnyitásától a használható alkalmazásig tartó medián idő 17,4 másodpercről 8,0 másodpercre csökkent. A homokozók megszerzése 14,5 másodpercről 3,0 másodpercre javult. A fejlesztői szerver 90. percentilisben mért ideje 15,8 másodpercről 9,6 másodpercre esett.
A vállalat szerint az OJ a Lovable homokozójában az alkalmazás betöltése előtt körülbelül 6,5-szer kevesebb memóriát használ, mint a Node és Vite alapú folyamat. A bevezetés fokozatos, egyszerre csak az előnézetek kis részét érinti, hogy a Lovable ellenőrizhesse a kompatibilitást.
Az OJ szeptember 15-én a Lovable GitHub-szervezetéhez került, a github.com/lovablelabs/oj címen. A projekt továbbra is nyílt, Vite-kompatibilis rendszerként érhető el, amelyet bárki olvashat, futtathat és bővíthet.
Lovable: Faster previews, soon powered by OJ


