GraalVM: ماشینی مجازی برای اجرای سریع‌تر برنامه‌ها در هر پلتفرمی

GraalVM: ماشینی مجازی برای اجرای سریع‌تر برنامه‌ها در هر پلتفرمی

ممکن است در دنیای برنامه‌نویسی، اپلیکیشنی را نوشته باشید که در آن از چندین زبان برنامه‌نویسی استفاده شده باشد و نیاز داشته باشید تا با استفاده از یک ماشین مجازی، تمامی آن‌ها را به صورت هم‌زمان اجرا کند. GraalVM ماشینی مجازی است که چنین امکانی را در اختیار دولوپرها قرار می‌دهد که در ادامه بیشتر با قابلیت‌های آن آشنا خواهید شد.

GraalVM یک ماشین مجازی همه‌کاره است که برنامه‌های نوشته شده به زبان‌های JavaScript ،Python 3 ،Ruby و R را اجرا می‌کند. این ماشین مجازی (Virtual Machine) همچنین می‌تواند زبان‌های مبتنی بر JVM مثل Java ،Scala و Kotlin و حتی زبان‌های مبتنی بر LLVM همچون C و ++C را نیز اجرا کند.

در حقیقت، GraalVM مرز انتزاعی موجود بین زبان‌های برنامه‌نویسی مختلف را از بین می‌برد و قابلیت اجرای برنامه‌ها در یک زمان را فراهم می‌کند. این ماشین‌مجازی هم می‌تواند به صورت جداگانه اجرا شود و هم می‌تواند در متن برنامه‌ها (مثل Node.js ،OpenJDK ،Oracle Database و یا MySQL) قرار داده شود.

GraalVM چه کار می‌کند؟
GraalVM به شما این امکان را می‌دهد تا اپلیکیشن‌های چندزبانه بنویسید و بهترین زبان را برای کار خودتان انتخاب کنید. در واقع، فایل‌های نِیتیو که از قبل توسط GraalVM کامپایل می‌شوند، منجر به کاهش زمان لانچ شده و در نهایت میزان مصرف حافظهٔ اپلیکیشن‌های مبتنی بر JVM را کاهش می‌دهد. همچنین GraalVM هم می‌تواند در برنامه‌های نِیتیو و هم در برنامه‌های دیگر جایگذاری گردد به طوری که برای یکپارچگی با Node.js ،OpenJDK ،Oracle Database و MySQL بهینه شده است.

- GraalVM برای دولوپرهای جاوا: اگر روی برنامه‌های جاوا کار می‌کنید، با استفاده از GraalVM می‌توانید برنامه‌های خود را سریع‌تر اجرا کنید، فایل‌های نیتیو ایجاد کنید یا کدهای خود را توسعه داده و بهبود بخشید.

- GraalVM برای دولوپر Node.js: اگر یک دولوپر جاوااسکریپت هستید که از محیط Node.js استفاده می‌کنید، می‌توانید جاوااسکریپت را روی پایگاه داده اجرا کرده، از لایبرری‌های موجود استفاده کنید و کدهای‌ خود را به راحتی مانیتور (نظارت) کنید.

- GraalVM برای دولوپر Ruby ،R یا Python: آیا مایل هستید با دیباگر کروم، باگ‌های موجود در برنامه‌های نوشته شده با زبان‌های آر، روبی و یا پایتون را پیدا کنید؟ با GraalVM این کار به سادگی امکان‌پذیر است.