Obtain all the skills you need to configure and manage a PostgreSQL database. In this book you will begin by installing and configuring PostgreSQL on a server by focusing on system-level parameter settings before installation. You will also look at key post-installation steps to avoid issues in the future. The basic configuration of PostgreSQL is tuned for compatibility rather than performance. Keeping this in mind, you will fine-tune your PostgreSQL parameters based on your environment and application behavior. You will then get tips to improve database monitoring and maintenance followed by database security for handling sensitive data in PostgreSQL.
Every system containing valuable data needs to be backed-up regularly. PostgreSQL follows a simple back-up procedure and provides fundamental approaches to back up your data. You will go through these approaches and choose the right one based on your environment. Running your application with limited resources can be tricky. To achie ...
Modern Systems Programming with Scala Native
Access the power of bare-metal systems programming with Scala Native, an ahead-of-time Scala compiler. Without the baggage of legacy frameworks and virtual machines, Scala Native lets you re-imagine how your programs interact with your operating system. Compile Scala code down to native machine instructions; seamlessly invoke operating system APIs for low-level networking and IO; control pointers, arrays, and other memory management techniques for extreme performance; and enjoy instant start-up times. Skip the JVM and improve your code performance by getting close to the metal.
Developers generally build systems on top of the work of those who came before, accumulating layer upon layer of abstraction. Scala Native provides a rare opportunity to remove layers. Without the JVM, Scala Native uses POSIX and ANSI C APIs to build concise, expressive programs that run unusually close to bare metal. Scala Native compiles Scala code down to native machine instructions instead of JVM b ...
Cloud Debugging and Profiling in Microsoft Azure
Use this collection of best practices and tips for assessing the health of a solution. This book provides detailed techniques and instructions to quickly diagnose aspects of your Azure cloud solutions.
The initial chapters of this book introduce you to the many facets of Microsoft Azure, explain why and how building for the cloud differs from on-premise development, and outline the need for a comprehensive strategy to debugging and profiling in Azure. You learn the major types of blades (FaaS, SaaS, PaaS, IaaS), how different views can be created for different scenarios, and you will become familiar with the Favorites section, Cost Management & Billing blade, support, and Cloud Shell. You also will know how to leverage Application Insights for application performance management, in order to achieve a seamless cloud development experience. Application Insights, Log Analytics, and database storage topics are covered. The authors further guide you on identity security with Azure ...
Spring Boot Persistence Best Practices
This book is a collection of developer code recipes and best practices for persisting data using Spring, particularly Spring Boot. The book is structured around practical recipes, where each recipe discusses a performance case or performance-related case, and almost every recipe has one or more applications. Mainly, when we try to accomplish something (e.g., read some data from the database), there are several approaches to do it, and, in order to choose the best way, you have to know the implied trades-off from a performance perspective. You'll see that in the end, all these penalties slow down the application. Besides presenting the arguments that favor a certain choice, the application is written in Spring Boot style which is quite different than plain Hibernate.
Persistence is an important set of techniques and technologies for accessing and using data, and this book demonstrates that data is mobile regardless of specific applications and contexts. In Java developm ...
High Performance Python, 2nd Edition
Your Python code may run correctly, but you need it to run faster. Updated for Python 3, this expanded edition shows you how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. By exploring the fundamental theory behind design choices, High Performance Python helps you gain a deeper understanding of Python's implementation.
How do you take advantage of multicore architectures or clusters? Or build a system that scales up and down without losing reliability? Experienced Python programmers will learn concrete solutions to many issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and more.
Get a better grasp of NumPy, Cython, and profilers; Learn how Python abstracts the underlying computer architecture; Use profiling to find bottlenecks in CPU time and memory usage; Write efficient programs by choosing appropriate data structu ...
Refactoring Legacy T-SQL for Improved Performance
Breathe new life into older applications by refactoring T-SQL queries and code using modern techniques. This book shows you how to significantly improve the performance of older applications by finding common anti-patterns in T-SQL code, then rewriting those anti-patterns using new functionality that is supported in current versions of SQL Server, including SQL Server 2019. The focus moves through the different types of database objects and the code used to create them, discussing the limitations and anti-patterns commonly found for each object type in your database.
Legacy code isn't just found in queries and external applications. It's also found in the definitions of underlying database objects such as views and tables. This book helps you quickly find problematic code throughout the database and points out where and how modern solutions can replace older code, thereby making your legacy applications run faster and extending their lifetimes. Author Lisa Bohm explains the l ...
MySQL 8 Query Performance Tuning
Identify, analyze, and improve poorly performing queries that damage user experience and lead to lost revenue for your business. This book will help you make query tuning an integral part of your daily routine through a multi-step process that includes monitoring of execution times, identifying candidate queries for optimization, analyzing their current performance and improving them to deliver results faster and with less overhead. Author Jesper Krogh systematically discusses each of these steps along with the data sources and the tools used to perform them.
MySQL 8 Query Performance Tuning aims to help you improve query performance using a wide range of strategies. You will know how to analyze queries using both the traditional EXPLAIN command as well as the new EXPLAIN ANALYZE tool. You also will see how to use the Visual Explain feature to provide a visually-oriented view of an execution plan. Coverage of indexes includes indexing strategies and index stati ...
Java Performance, 2nd Edition
Coding and testing are generally considered separate areas of expertise. In this practical book, Java expert Scott Oaks takes the approach that anyone who works with Java should be adept at understanding how code behaves in the Java Virtual Machine - including the tunings likely to help performance. This updated second edition helps you gain in-depth knowledge of Java application performance using both the JVM and the Java platform.
Developers and performance engineers alike will learn a variety of features, tools, and processes for improving the way the Java 8 and 11 LTS releases perform. While the emphasis is on production-supported releases and features, this book also features previews of exciting new technologies such as ahead-of-time compilation and experimental garbage collections.
Understand how various Java platforms and compilers affect performance; Learn how Java garbage collection works; Apply four principles to obtain best results from performance ...
Quick Start Guide to Dart Programming
Get started with Dart and learn to program with this language suitable for high-performing, modern applications. You'll gain the basics and be ready to move to the next level: web and mobile apps. While you won't learn the specifics of programming web and mobile apps, you will have the foundation to take your Dart skills in that direction.
This book starts with an introduction to the Dart IDE, after which you will take a look at the various components of the Dart programming language. You will look at types and variables, and get to know the significance of collections and arrays in Dart. Once you've familiarized yourself with the initial components of Dart, you will see how flow of control and looping can be achieved by using if, else, and conditional expressions. Moving on to functions and objects, you will dig deeper into the concepts of object oriented programming to gauge the importance of constructors in Dart. You will then discover more about inheritance and mixins, seeing ho ...
Linux Observability with BPF
Build your expertise in the BPF virtual machine in the Linux kernel with this practical guide for systems engineers. You'll not only dive into the BPF program lifecycle but also learn to write applications that observe and modify the kernel's behavior; inject code to monitor, trace, and securely observe events in the kernel; and more.
Authors David Calavera and Lorenzo Fontana help you harness the power of BPF to make any computing system more observable. Familiarize yourself with the essential concepts you'll use on a day-to-day basis and augment your knowledge about performance optimization, networking, and security. Then see how it all comes together with code examples in C, Go, and Python.
Write applications that use BPF to observe and modify the Linux kernel's behavior on demand; Inject code to monitor, trace, and observe events in the kernel in a secure way - no need to recompile the kernel or reboot the system; Explore code examples in C, Go, and Python; Gain a more ...
Languages may come and go, but the relational database endures. Learn how to use Ecto, the premier database library for Elixir, to connect your Elixir and Phoenix apps to databases. Get a firm handle on Ecto fundamentals with a module-by-module tour of the critical parts of Ecto. Then move on to more advanced topics and advice on best practices with a series of recipes that provide clear, step-by-step instructions on scenarios commonly encountered by app developers. Co-authored by the creator of Ecto, this title provides all the essentials you need to use Ecto effectively.
Elixir and Phoenix are taking the application development world by storm, and Ecto, the database library that ships with Phoenix, is going right along with them. There are plenty of examples that show you the basics, but to use Ecto to its full potential, you need to learn the library from the ground up.
This definitive guide starts with a tour of the core features of Ecto - repos, queries, schemas, changesets, ...