Hands-On High Performance with Spring 5
Techniques for scaling and optimizing Spring and Spring Boot applications
Chintan Mehta, Subhash Shah, Pritesh Shah, Prashant Goswami, Dinesh Radadiya
- 408 Seiten
- English
- ePUB (handyfreundlich)
- Über iOS und Android verfügbar
Hands-On High Performance with Spring 5
Techniques for scaling and optimizing Spring and Spring Boot applications
Chintan Mehta, Subhash Shah, Pritesh Shah, Prashant Goswami, Dinesh Radadiya
Über dieses Buch
A hands-on guide to creating, monitoring, and tuning a high performance Spring web application
Key Features
- Understand common performance pitfalls and improve your application's performance
- Build and deploy strategies for complex applications using the microservice architecture
- Understand internals of JVM - the core of all Java Runtime Environments
Book Description
While writing an application, performance is paramount. Performance tuning for real-world applications often involves activities geared toward detecting bottlenecks. The recent release of Spring 5.0 brings major advancements in the rich API provided by the Spring framework, which means developers need to master its tools and techniques to achieve high performance applications.
Hands-On High Performance with Spring 5 begins with the Spring framework's core features, exploring the integration of different Spring projects. It proceeds to evaluate various Spring specifications to identify those adversely affecting performance. You will learn about bean wiring configurations, aspect-oriented programming, database interaction, and Hibernate to focus on the metrics that help identify performance bottlenecks. You will also look at application monitoring, performance optimization, JVM internals, and garbage collection optimization. Lastly, the book will show you how to leverage the microservice architecture to build a high performance and resilient application.
By the end of the book, you will have gained an insight into various techniques and solutions to build and troubleshoot high performance Spring-based applications.
What you will learn
- Master programming best practices and performance improvement with bean wiring
- Analyze the performance of various AOP implementations
- Explore database interactions with Spring to optimize design and configuration
- Solve Hibernate performance issues and traps
- Leverage multithreading and concurrent programming to improve application performance
- Gain a solid foundation in JVM performance tuning using various tools
- Learn the key concepts of the microservice architecture and how to monitor them
- Perform Spring Boot performance tuning, monitoring, and health checks
Who this book is for
If you're a Spring developer who'd like to build high performance applications and have more control over your application's performance in production and development, this book is for you. Some familiarity with Java, Maven, and Eclipse is necessary.
Häufig gestellte Fragen
Information
Spring Boot Microservice Performance Tuning
- Spring Boot configuration
- Metrics with the Spring Boot Actuator
- Health checks
- Microservices using Spring Boot
- Microservices with Spring Cloud
- Spring microservice configuration example
- Monitoring microservices with Spring Boot admin
- Spring Boot performance tuning
Spring Boot configuration
What is Spring Boot?
- Use the right set of tools, which includes frameworks, IDEs, and build tools
- Reduce code clutter
- Reduce the amount of time spent writing repetitive code
- Spend the majority of the time implementing business features
- To gain an extremely fast experience to get started with Spring-powered projects
- Broad accessibility
- Major support from out-of-the-box configuration
- Flexibility to deviate from Spring default as the need may arise
- That it does not generate any code
- That it does not require XML configuration
- Support for versioning and configuration for widely known and used frameworks
- Support for application security
- Support for monitoring application health check parameters
- Support for monitoring of performance metrics
- Support for externalized configurations
Spring Initializr
- Navigate to https://start.spring.io/.
- Choose the dependency management tool from Maven or Gradle.
- Choose the JVM-based programming language from Java, Kotlin, and Groovy.
- Choose the Spring Boot version to be used.
- Provide the Group artifact by inputting the group name as com.packt.springhighperformance.
- Input Artifact, which is the artifact ID for the Maven project. This will become the name of the project WAR or JAR file to be deployed or executed.
- Choose a packaging type from Jar and War.
- Click on the Switch to the full version link. This will open up a list of starter projects to choose from. The starter project will be explained in detail in the following section.
- Once we have chosen the starters or dependencies, click on the Generate Project button. This will download the ZIP file containing the initial project configuration.
> curl https://start.spring.io/starter.zip -d dependencies=web,jpa -d bootVersion=2.0.0 -o ch-09-spring-boot-example-1.zip