Book Image

Mastering Java 9

By : Dr. Edward Lavieri, Peter Verhas
Book Image

Mastering Java 9

By: Dr. Edward Lavieri, Peter Verhas

Overview of this book

<p>Java 9 and its new features add to the richness of the language, one of the languages most used by developers to build robust software applications. Java 9 comes with a special emphasis on modularity with its integration with Jigsaw. This would be your one-stop guide to mastering the language.</p> <p>You'll be provided with an overview and explanation of the new features introduced in Java 9 and the importance of the new APIs and enhancements. Some of the new features of Java 9 are ground-breaking and if you are an experienced programmer, you will be able to make your enterprise application leaner by learning these new features. You'll be provided with practical guidance in applying the newly acquired knowledge in regards to Java 9 and further information on future developments of the Java platform. This book will improve your productivity, making your application faster. By learning the best practices in Java, you'll become the “go-to” person in your organization.</p> <p>By the end of the book, you'll not only know the important concepts of Java 9, but you'll also have a nuanced understanding of the important aspects of programming with this great language.</p>
Table of Contents (23 chapters)
Title Page
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Preface

Improving security application performance


Java Enhancement Proposal 232, titled Improving Security Application Performance, was focused on performance improvements when running applications with a security manager installed. Security managers can result in processing overhead and less than ideal application performance.

This is an impressive undertaking as current CPU overhead when running security managers is estimated to result in 10-15% performance degradation. It is not feasible to completely remove the CPU overhead as some CPU processing is required to run the security manager. That being said, the intention of this proposal (JEP-232) was to decrease the overhead percentage as much as possible.

This effort resulted in the following optimizations, each detailed in subsequent sections:

  • Security policy enforcement
  • Permission evaluation
  • Hash code
  • Package checking algorithm

Security policy enforcement

JDK 9 uses ConcurrentHashMap for mapping ProtectionDomain to PermissionCollection. ConcurrentHashMap...