دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
دسته بندی: Programming: Libraries API ویرایش: 1 نویسندگان: A.B Vijay Kumar سری: ISBN (شابک) : 9781800564909 ناشر: Packt سال نشر: 2021 تعداد صفحات: 356 زبان: English فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود) حجم فایل: 14 مگابایت
کلمات کلیدی مربوط به کتاب برنامه های خود را با GraalVM شارژ کنید: کامپایلر java graalVM jdk
در صورت تبدیل فایل کتاب Supercharge Your Applications with GraalVM به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب برنامه های خود را با GraalVM شارژ کنید نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
با کمک آزمایشهای عملی، ساختارهای داخلی و معماری GraalVM را درک کنید و دانش عمیقی کسب کنید که میتوانید برای بهبود عملکرد، قابلیت همکاری و توان عملیاتی برنامه خود به کار ببرید. --- ویژگی های کلیدی ============= کدهای سریعتر و کمتر با حداقل منابع محاسباتی برای عملکرد بالا تولید کنید برنامه های جاوا را سریعتر از همیشه به یک فایل اجرایی مستقل به نام تصاویر بومی کامپایل کنید ایجاد برنامه های چند زبانه با کارایی بالا که با زبان های مختلف JVM و غیر JVM سازگار است GraalVM یک ماشین مجازی جهانی است که به برنامه نویسان اجازه می دهد تا برنامه های کاربردی نوشته شده در JVM و غیر را کامپایل و اجرا کنند. زبان های JVM عملکرد و کارایی برنامه ها را بهبود می بخشد و آن را به یک همراه ایده آل برای Cloud-Native یا تبدیل می کند برنامه های کاربردی مبتنی بر میکروسرویس --- این کتاب یک راهنمای عملی با دستورالعمل های گام به گام در مورد نحوه کار با GraalVM است. با معرفی سریع معماری GraalVM و نحوه کار کردن چیزها در زیر هود، مزایای عملکرد اجرای برنامه های جاوا خود را در GraalVM کشف خواهید کرد. سپس یاد خواهید گرفت که چگونه تصاویر بومی ایجاد کنید و درک خواهید کرد که چگونه AOT (پیش از زمان) می تواند عملکرد برنامه را به طور قابل توجهی بهبود بخشد. این کتاب نمونههایی از ساخت برنامههای چند زبانه را پوشش میدهد که به شما کمک میکند قابلیت همکاری بین زبانهایی را که روی یک ماشین مجازی اجرا میشوند کشف کنید. همچنین خواهید دید که چگونه می توانید از چارچوب Truffle برای پیاده سازی هر زبانی که انتخاب می کنید برای اجرای بهینه در GraalVM استفاده کنید. --- در پایان این کتاب، شما نه تنها یاد خواهید گرفت که چگونه GraalVM در توسعه خدمات ابری و میکروسرویس مفید است، بلکه چگونه میتوانید از قابلیتهای آن برای ایجاد برنامههای چند زبانه با کارایی بالا استفاده کنید. --- آنچه خواهید آموخت ==================== درک کاملی از GraalVM و نحوه عملکرد آن در زیر کاپوت به دست آورید با کامپایلر بهینهسازی کارایی بالا GraalVM کار کنید و ببینید که چگونه میتوان از آن در هر دو حالت JIT (بهموقع) و AOT (پیشوقت) استفاده کرد. با بهینه سازی های مختلفی که GraalVM در زمان اجرا انجام می دهد آشنا شوید از ابزارهای پیشرفته برای تجزیه و تحلیل و تشخیص مشکلات عملکرد در کد استفاده کنید با استفاده از Truffle در GraalVM، کامپایل، جاسازی، اجرا و تعامل بین زبان ها را انجام دهید میکروسرویس های بهینه را با استفاده از چارچوب های محبوبی مانند Micronaut و Quarkus برای ایجاد برنامه های کاربردی ابری بسازید.
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 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.
Cover Title Page Copyright and Credits Dedicated Contributors Table of Contents Preface Section 1: The Evolution of JVM Chapter 1: Evolution of Java Virtual Machine Technical requirements Introduction to GraalVM Learning how JVM works Understanding the JVM architecture Class loader subsystem Memory subsystem JVM execution engine subsystem Native subsystem Summary Questions Further reading Chapter 2: JIT, HotSpot, and Graal JIT Technical requirements Setup environment Installing OpenJDK Java Installing JITWatch Taking a deep dive into HotSpot and the C2 JIT compiler Code cache Compiler threshold On-stack replacement Tiered compilation Understanding the optimizations performed by JIT Inlining Monomorphic, bimorphic, and megamorphic dispatch Dead code elimination Loop optimization – Loop unrolling Escape analysis Deoptimization Non-entrant code Zombie code Graal JIT and the JVM Compiler Interface (JVMCI) Summary Questions Further reading Section 2: Getting Up and Running with GraalVM – Architecture, and Implementation Chapter 3: GraalVM Architecture Reviewing modern architectural requirements Smaller footprint Quicker bootstrap Polyglot and interoperability Learning what the GraalVM architecture is Reviewing the GraalVM editions (Community and Enterprise) Understanding the GraalVM architecture JVM (HotSpot) Java Virtual Machine Compiler Interface (JVMCI) Graal compiler and tooling Truffle Sulong – LLVM SubstrateVM (Graal AOT and native image) An overview of GraalVM microservices architecture Understanding how GraalVM addresses various non-functional aspects Performance and scalability Security DevOps – continuous integration and delivery Summary Questions Further reading Chapter 4: Graal Just-In-Time Compiler Technical requirements Setting up the environment Setting up Graal Understanding the Graal JIT compiler Graal compiler configuration Graal JIT compilation pipeline and tiered optimization Graal intermediate representation Understanding Graal compiler optimizations Speculative optimization Partial escape analysis Inter-procedural analysis and inlining Debugging and monitoring applications Visual Studio Code extension GraalVM Dashboard Command-line tools Chrome debugger Summary Questions Further reading Chapter 5: Graal Ahead-of-Time Compiler and Native Image Technical requirements Building native images Analyzing the native image with GraalVM Dashboard Understanding the code size breakdown report Heap size breakdown Understanding PGO Native image configuration Hosted options and resource configurations Generating Graal graphs for native images Understanding how native images manage memory The Serial garbage collector The G1 Garbage Collector Managing the heap size and generating heap dumps Building static native images and native shared libraries Debugging native images Limitations of Graal AOT (Native Image) GraalVM containers Summary Questions Further reading Section 3: Polyglot with Graal Chapter 6: Truffle – An Overview Exploring the Truffle language implementation framework Exploring the Truffle interpreter/compiler pipeline Self-optimization and tree rewriting Partial Evaluation Learning Truffle DSL Polymorphic inline caching Understanding how Truffle supports interoperability Frame management and local variables Dynamic Object Model Understanding Truffle instrumentation Ahead-of-time compilation using Truffle Optimizing Truffle interpreter performance with launcher options SimpleLanguage and Simple Tool Summary Questions Further reading Chapter 7: GraalVM Polyglot – JavaScript and Node.js Technical requirements Understanding the JavaScript (including Node.js) Truffle interpreter Verifying JavaScript, Node, and npm installation and versions JavaScript interoperability Polyglot native images Bindings Multithreading Asynchronous programming – Promise and await Summary Questions Further reading Chapter 8: GraalVM Polyglot – Java on Truffle, Python, and R Technical requirements Understanding Espresso (Java on Truffle) Why do we need Java on Java? Installing and running Espresso Exploring polyglot interoperability with Espresso Exploring Espresso interoperability with other Truffle languages Understanding GraalPython – the Python Truffle interpreter Installing Graal Python Understanding the graalpython compilation and interpreter pipeline Exploring interoperability between Java and Python Exploring interoperability between Python and other dynamic languages Understanding FastR – the R Truffle interpreter Installing and running R Exploring the interoperability of R Summary Questions Further reading Chapter 9: GraalVM Polyglot – LLVM, Ruby, and WASM Technical requirements Understanding LLVM – the (Sulong) Truffle interface Installing the LLVM toolchain Exploring LLVM interoperability Understanding the LLVM managed environment Understanding TruffleRuby – the Ruby Truffle interpreter Installing TruffleRuby Understanding the TruffleRuby interpreter/compiler pipeline Exploring Polyglot interoperability with TruffleRuby Understanding GraalWasm – the WASM Truffle interpreter Understanding GraalWasm architecture Installing and running GraalWasm Installing Emscripten (emcc) Summary Questions Further reading Section 4: Microservices with Graal Chapter 10: Microservices Architecture with GraalVM Technical requirements Overview of microservices architecture Building microservices architecture with GraalVM Understanding GraalVM containers Case study – online book library Functional architecture Deployment architecture Exploring modern microservices frameworks Building BookInfoService using Spring without GraalVM Building BookInfoService with Micronaut Building BookInfoService with Quarkus Building a serverless BookInfoService using fn project Summary Questions Further reading Assessments About Packt Other Books You May Enjoy Index