Supercharge Your Applications with GraalVM: Hands-on examples to optimize and extend your code using GraalVM's high performance and polyglot capabilit

B Vijay Kumar

  • 出版商: Packt Publishing
  • 出版日期: 2021-08-10
  • 售價: $1,980
  • 貴賓價: 9.5$1,881
  • 語言: 英文
  • 頁數: 356
  • 裝訂: Paperback
  • ISBN: 1800564902
  • ISBN-13: 9781800564909
  • 相關分類: Java 程式語言
  • 立即出貨 (庫存=1)

買這商品的人也買了...

商品描述

Understand the internals and architecture of GraalVM with the help of hands-on experiments and gain deep knowledge that you can apply to improve your application's performance, interoperability, and throughput.

Key Features

  • Generate faster and leaner code with minimum computing resources for high performance
  • Compile Java applications faster than ever to a standalone executable called native images
  • Create high-performance polyglot applications that are compatible across various JVM and non-JVM languages

Book Description

GraalVM is a universal virtual machine that allows programmers to compile and run applications written in both JVM and non-JVM languages. It improves the performance and efficiency of applications, making it an ideal companion for cloud-native or microservices-based applications.

This book is a hands-on guide, with step-by-step instructions on how to work with GraalVM. Starting with a quick introduction to the GraalVM architecture and how things work under the hood, you'll discover the performance benefits of running your Java applications on GraalVM. You'll then learn how to create native images and understand how AOT (ahead-of-time) can improve application performance significantly. The book covers examples of building polyglot applications that will help you explore the interoperability between languages running on the same VM. You'll also see how you can use the Truffle framework to implement any language of your choice to run optimally on GraalVM.

By the end of this book, you'll not only have learned how GraalVM is beneficial in cloud-native and microservices development but also how to leverage its capabilities to create high-performing polyglot applications.

What you will learn

  • Gain a solid understanding of GraalVM and how it works under the hood
  • Work with GraalVM's high performance optimizing compiler and see how it can be used in both JIT (just-in-time) and AOT (ahead-of-time) modes
  • Get to grips with the various optimizations that GraalVM performs at runtime
  • Use advanced tools to analyze and diagnose performance issues in the code
  • Compile, embed, run, and interoperate between languages using Truffle on GraalVM
  • Build optimum microservices using popular frameworks such as Micronaut and Quarkus to create cloud-native applications

Who this book is for

This book is for JVM developers looking to optimize their application's performance. You'll also find this book useful if you're a JVM developer looking to explore options to develop polyglot applications using tools from the Python, R, Ruby, or Node.js ecosystem. A solid understanding of software development concepts and prior experience working with programming languages is necessary to get started.

商品描述(中文翻譯)

了解GraalVM的內部結構和架構,並通過實踐經驗獲得深入的知識,以改善應用程序的性能、互操作性和吞吐量。

主要特點:

- 使用最少的計算資源生成更快、更精簡的代碼,實現高性能。
- 將Java應用程序編譯為獨立的可執行文件,稱為本機映像,實現更快的編譯速度。
- 創建高性能的多語言應用程序,兼容各種JVM和非JVM語言。

書籍描述:

GraalVM是一個通用虛擬機,允許程序員編譯和運行使用JVM和非JVM語言編寫的應用程序。它提高了應用程序的性能和效率,是雲原生或基於微服務的應用程序的理想伴侶。

本書是一本實踐指南,提供了使用GraalVM的逐步指導。從快速介紹GraalVM架構和內部運作方式開始,您將發現在GraalVM上運行Java應用程序的性能優勢。然後,您將學習如何創建本機映像,並了解AOT(提前編譯)如何顯著提高應用程序的性能。本書涵蓋了構建多語言應用程序的示例,幫助您探索在同一虛擬機上運行的語言之間的互操作性。您還將了解如何使用Truffle框架來實現您選擇的任何語言,以在GraalVM上實現最佳性能。

通過閱讀本書,您不僅將學習到GraalVM在雲原生和基於微服務的開發中的優勢,還將學習如何利用其功能創建高性能的多語言應用程序。

您將學到什麼:

- 深入了解GraalVM及其內部運作方式。
- 使用GraalVM的高性能優化編譯器,並了解它如何在JIT(即時編譯)和AOT(提前編譯)模式下使用。
- 掌握GraalVM在運行時執行的各種優化。
- 使用高級工具分析和診斷代碼中的性能問題。
- 使用Truffle在GraalVM上編譯、嵌入、運行和互操作各種語言。
- 使用流行框架(如Micronaut和Quarkus)構建最佳微服務,創建雲原生應用程序。

本書適合對JVM開發人員來說,他們希望優化應用程序的性能。如果您是JVM開發人員,並希望使用Python、R、Ruby或Node.js生態系統中的工具開發多語言應用程序,本書也將對您有所幫助。開始閱讀本書需要對軟件開發概念有扎實的理解,並具有使用編程語言的經驗。

作者簡介

A B Vijay Kumar is an "IBM Distinguished Engineer" and chief technology officer focused on hybrid cloud management and platform engineering. He is responsible for providing technology strategies for managing complex application portfolios on hybrid cloud platforms using emerging tools and technologies.

He is an IBM Master Inventor who has more than 31 patents issued and 30 pending in his name. He has more than 23 years' experience at IBM. He is recognized as a subject matter expert for his contribution to advanced mobility in automation and has led several implementations involving complex industry solutions. He specializes in mobile, cloud, container, automotive, sensor-based machine-to-machine, Internet of Things, and telematics technologies.

作者簡介(中文翻譯)

A B Vijay Kumar 是一位「IBM Distinguished Engineer」和首席技術官,專注於混合雲管理和平台工程。他負責提供在新興工具和技術上管理複雜應用程式組合的技術策略。

他是一位擁有超過31項已獲得專利和30項待審專利的IBM大師發明家。他在IBM擁有超過23年的經驗。他因為在高級移動自動化方面的貢獻而被譽為專業知識的專家,並帶領了多個涉及複雜行業解決方案的實施。他專精於移動、雲端、容器、汽車、基於感應器的機器對機器、物聯網和遙測技術。

目錄大綱

Table of Contents

1. Evolutions of JVM
2. JIT, Hotspot, and GraalVM
3. GraalVM Architecture
4. Graal Compiler - JIT, AOT
5. Graal Compiler - Ahead of Time
6. Truffle – An overview
7. Graal Polyglot (Java, Node)
8. GraalVM Polyglot – Java on Truffle, Python and R
9. Graal Polyglot - LLVM, Ruby, WASM
10. Microservices Framework and ARchitecture with Case Study

目錄大綱(中文翻譯)

目錄

1. JVM的演進
2. JIT、Hotspot和GraalVM
3. GraalVM架構
4. Graal編譯器 - JIT、AOT
5. Graal編譯器 - 預先編譯
6. Truffle - 概述
7. Graal Polyglot(Java、Node)
8. GraalVM Polyglot - 在Truffle上的Java,Python和R
9. Graal Polyglot - LLVM,Ruby,WASM
10. 微服務框架和案例研究的架構