Take a look at our Distributed Systems & Computing books. Shulph carries a great selection of Distributed Systems & Computing books, and we are always adding more.
Build robust and reliable Java applications that works on modern infrastructure, such as containers and cloud, using the new features in Quarkus 1.0 Key Features Build apps with faster boot time and low RSS memory using the latest Quarkus 1.0 features Seamlessly integrate imperative and reactive programming models to build modern Java applications Discover effective solutions for running Java on serverless apps, microservices, containers, FaaS, and the cloud Book Description Quarkus is a new Kubernetes-native framework that allows Java developers to combine the power of containers, microservices, and cloud-native to build reliable applications. The book is a development guide that will teach you how to build Java-native applications using Quarkus and GraalVM. We start by learning about the basic concepts of a cloud-native application and its advantages over standard enterprise applications. Then we will quickly move on to application development, by installing the tooling required to build our first application on Quarkus. Next, we'll learn how to create a container-native image of our application and execute it in a Platform-as-a-Service environment such as Minishift. Later, we will build a complete real-world application that will use REST and the Contexts and Dependency injection stack with a web frontend. We will also learn how to add database persistence to our application using PostgreSQL. We will learn how to work with various APIs available to Quarkus such as Camel, Eclipse MicroProfile, and Spring DI. Towards the end, we will learn advanced development techniques such as securing applications, application configuration, and working with non-blocking programming models using Vert.x. By the end of this book, you will be proficient with all the components of Quarkus and develop-blazing fast applications leveraging modern technology infrastructure. What you will learn Build a native application using Quarkus and GraalVM Secure your applications using Elytron and the MicroProfile JWT extension Manage data persistence with Quarkus using PostgreSQL Use a non-blocking programming model with Quarkus Learn how to get Camel and Infinispan working in native mode Deploy an application in a Kubernetes-native environment using Minishift Discover Reactive Programming with Vert.x Who this book is for The book is for Java developers and software architects who are interested in learning a promising microservice architecture for building reliable and robust applications. Knowledge of Java, Spring Framework, and REST APIs is assumed.
Design and develop high-performance, reusable, and maintainable applications using traditional and modern Julia patterns with this comprehensive guide Key Features Explore useful design patterns along with object-oriented programming in Julia 1.0 Implement macros and metaprogramming techniques to make your code faster, concise, and efficient Develop the skills necessary to implement design patterns for creating robust and maintainable applications Book Description Design patterns are fundamental techniques for developing reusable and maintainable code. They provide a set of proven solutions that allow developers to solve problems in software development quickly. This book will demonstrate how to leverage design patterns with real-world applications. Starting with an overview of design patterns and best practices in application design, you'll learn about some of the most fundamental Julia features such as modules, data types, functions/interfaces, and metaprogramming. You'll then get to grips with the modern Julia design patterns for building large-scale applications with a focus on performance, reusability, robustness, and maintainability. The book also covers anti-patterns and how to avoid common mistakes and pitfalls in development. You'll see how traditional object-oriented patterns can be implemented differently and more effectively in Julia. Finally, you'll explore various use cases and examples, such as how expert Julia developers use design patterns in their open source packages. By the end of this Julia programming book, you'll have learned methods to improve software design, extensibility, and reusability, and be able to use design patterns efficiently to overcome common challenges in software development. What you will learn Master the Julia language features that are key to developing large-scale software applications Discover design patterns to improve overall application architecture and design Develop reusable programs that are modular, extendable, performant, and easy to maintain Weigh up the pros and cons of using different design patterns for use cases Explore methods for transitioning from object-oriented programming to using equivalent or more advanced Julia techniques Who this book is for This book is for beginner to intermediate-level Julia programmers who want to enhance their skills in designing and developing large-scale applications.
Build real-world applications with Python 2.7, CUDA 9, and CUDA 10. We suggest the use of Python 2.7 over Python 3.x, since Python 2.7 has stable support across all the libraries we use in this book. Key Features Expand your background in GPU programming—PyCUDA, scikit-cuda, and Nsight Effectively use CUDA libraries such as cuBLAS, cuFFT, and cuSolver Apply GPU programming to modern data science applications Book Description Hands-On GPU Programming with Python and CUDA hits the ground running: you'll start by learning how to apply Amdahl's Law, use a code profiler to identify bottlenecks in your Python code, and set up an appropriate GPU programming environment. You'll then see how to “query” the GPU's features and copy arrays of data to and from the GPU's own memory. As you make your way through the book, you'll launch code directly onto the GPU and write full blown GPU kernels and device functions in CUDA C. You'll get to grips with profiling GPU code effectively and fully test and debug your code using Nsight IDE. Next, you'll explore some of the more well-known NVIDIA libraries, such as cuFFT and cuBLAS. With a solid background in place, you will now apply your new-found knowledge to develop your very own GPU-based deep neural network from scratch. You'll then explore advanced topics, such as warp shuffling, dynamic parallelism, and PTX assembly. In the final chapter, you'll see some topics and applications related to GPU programming that you may wish to pursue, including AI, graphics, and blockchain. By the end of this book, you will be able to apply GPU programming to problems related to data science and high-performance computing. What you will learn Launch GPU code directly from Python Write effective and efficient GPU kernels and device functions Use libraries such as cuFFT, cuBLAS, and cuSolver Debug and profile your code with Nsight and Visual Profiler Apply GPU programming to datascience problems Build a GPU-based deep neuralnetwork from scratch Explore advanced GPU hardware features, such as warp shuffling Who this book is for Hands-On GPU Programming with Python and CUDA is for developers and data scientists who want to learn the basics of effective GPU programming to improve performance using Python code. You should have an understanding of first-year college or university-level engineering mathematics and physics, and have some experience with Python as well as in any C-based programming language such as C, C++, Go, or Java.
A comprehensive guide to help you understand the principles of Reactive and asynchronous programming and its benefits Key Features Explore the advantages of Reactive programming Use concurrency and parallelism in RxPY to build powerful reactive applications Deploy and scale your reactive applications using Docker Book Description Reactive programming is central to many concurrent systems, but it's famous for its steep learning curve, which makes most developers feel like they're hitting a wall. With this book, you will get to grips with reactive programming by steadily exploring various concepts This hands-on guide gets you started with Reactive Programming (RP) in Python. You will learn abouta the principles and benefits of using RP, which can be leveraged to build powerful concurrent applications. As you progress through the chapters, you will be introduced to the paradigm of Functional and Reactive Programming (FaRP), observables and observers, and concurrency and parallelism. The book will then take you through the implementation of an audio transcoding server and introduce you to a library that helps in the writing of FaRP code. You will understand how to use third-party services and dynamically reconfigure an application. By the end of the book, you will also have learned how to deploy and scale your applications with Docker and Traefik and explore the significant potential behind the reactive streams concept, and you'll have got to grips with a comprehensive set of best practices. What you will learn Structure Python code for better readability, testing, and performance Explore the world of event-based programming Grasp the use of the most common operators in Rx Understand reactive extensions beyond simple examples Master the art of writing reusable components Deploy an application on a cloud platform with Docker and Traefik Who this book is for If you are a Python developer who wants to learn Reactive programming to build powerful concurrent and asynchronous applications, this book is for you. Basic understanding of the Python language is all you need to understand the concepts covered in this book.
Learn to build, secure, deploy, and manage your serverless application in Golang with AWS Lambda Key Features Implement AWS lambda to build scalable and cost-efficient applications in Go Design and set the data flow between cloud services and custom business logic Learn to design Lambda functions using real-world examples and implementation scenarios Book Description Serverless architecture is popular in the tech community due to AWS Lambda. Go is simple to learn, straightforward to work with, and easy to read for other developers; and now it's been heralded as a supported language for AWS Lambda. This book is your optimal guide to designing a Go serverless application and deploying it to Lambda. This book starts with a quick introduction to the world of serverless architecture and its benefits, and then delves into AWS Lambda using practical examples. You'll then learn how to design and build a production-ready application in Go using AWS serverless services with zero upfront infrastructure investment. The book will help you learn how to scale up serverless applications and handle distributed serverless systems in production. You will also learn how to log and test your application. Along the way, you'll also discover how to set up a CI/CD pipeline to automate the deployment process of your Lambda functions. Moreover, you'll learn how to troubleshoot and monitor your apps in near real-time with services such as AWS CloudWatch and X-ray. This book will also teach you how to secure the access with AWS Cognito. By the end of this book, you will have mastered designing, building, and deploying a Go serverless application. What you will learn Understand how AWS Lambda works and use it to create an application Understand how to scaleup serverless applications Design a cost-effective serverless application in AWS Build a highly scalable and fault-tolerant CI/CD pipeline Understand how to troubleshoot and monitor serverless apps in AWS Discover the working of APIs and single page applications Build a production-ready serverless application in Go Who this book is for This book is for Go developers who would like to learn about serverless architecture. Go programming knowledge is assumed. DevOps and Solution Architects who are interested in building serverless applications in Go can also choose this book.
Equip yourself with the most complete and comprehensive preparation experience for Identity with Windows Server 2016: Microsoft 70-742 exam. Key Features Helps you demonstrate real-world mastery of Windows Server 2016 identity features and functionality and prepare for 70-742 Acquire skills to reduce IT costs and deliver more business value Enhance your existing skills through practice questions and mock tests Book Description MCSA: Windows Server 2016 certification is one of the most sought-after certifications for IT professionals, which includes working with Windows Server and performing administrative tasks around it. This book is aimed at the 70-742 certification and is part of Packt's three-book series on MCSA Windows Server 2016 certification, which covers Exam 70-740, Exam 70-741, and Exam 70-742. This exam guide covers the exam objectives for the 70-742 Identity with Windows Server 2016 exam. It starts with installing and configuring Active Directory Domain Services (AD DS), managing and maintaining AD DS objects and advanced configurations, configuring Group Policy, Active Directory Certificate Services, and Active Directory Federation Services and Rights Management. At the end of each chapter, convenient test questions will help you in preparing for the certification in a practical manner. By the end of this book, you will be able to develop the knowledge and skills needed to complete MCSA Exam 70-742: Identity with Windows Server 2016 with confidence. What you will learn Install, configure, and maintain Active Directory Domain Services (AD DS) Manage Active Directory Domain Services objects Configure and manage Active Directory Certificate Services Configure and manage Group Policy Design, implement, and configure Active Directory Federation Services Implement and configure Active Directory Rights Management Services Who this book is for This book primarily targets system administrators who are looking to gain knowledge about identity and access technologies with Windows Server 2016 and aiming to pass the 70-742 certification. This will also help infrastructure administrators who are looking to gain advanced knowledge and understanding of identity and access technologies with Windows Server 2016. Familiarity with the concepts such as Active Directory, DNS is assumed.
Create highly efficient design patterns for scalability, redundancy, and high availability in the AWS Cloud Key Features Build highly robust systems using the cloud infrastructure Make web applications resilient against scheduled and accidental downtime Explore and apply Amazon-provided services in unique ways to solve common design problems Book Description Whether you're just getting your feet wet in cloud infrastructure or already creating complex systems, this book will guide you through using the patterns to fit your system needs. Starting with patterns that cover basic processes such as source control and infrastructure-as-code, the book goes on to introduce cloud security practices. You'll then cover patterns of availability and scalability and get acquainted with the ephemeral nature of cloud environments. You'll also explore advanced DevOps patterns in operations and maintenance, before focusing on virtualization patterns such as containerization and serverless computing. In the final leg of your journey, this book will delve into data persistence and visualization patterns. You'll get to grips with architectures for processing static and dynamic data, as well as practices for managing streaming data. By the end of this book, you will be able to design applications that are tolerant of underlying hardware failures, resilient against an unexpected influx of data, and easy to manage and replicate. What you will learn Implement scaling policies on schedules, influxes in traffic, and deep health checks Make complete use of highly available and redundant storage Design content delivery networks to improve user experience Optimize databases through caching and sharding Apply patterns to solve common problems Implement repeatable processes for deploying systems Who this book is for If you're an architect, solution provider, or DevOps community member looking to implement repeatable patterns for deploying and maintaining services in the Amazon cloud infrastructure, this book is for you. You'll need prior experience of using AWS understand key concepts covered in the book, as it focuses on the patterns rather than the basics of using AWS.
Accelerate hybrid cloud innovation using Azure Arc with the help of real-world scenarios and examplesKey FeaturesGet to grips with setting up and working with Azure ArcHarness the power of Azure Arc and its integration with cutting-edge technologies such as Kubernetes and PaaS data servicesManage, govern, and monitor your on-premises servers and applications with AzureBook DescriptionWith all the options available for deploying infrastructure on multi-cloud platforms and on-premises comes the complexity of managing it, which is adeptly handled by Azure Arc. This book will show you how you can manage environments across platforms without having to migrate workloads from on-premises or multi-cloud to Azure every time. Implementing Hybrid Cloud with Azure Arc starts with an introduction to Azure Arc and hybrid cloud computing, covering use cases and various supported topologies. You'll learn to set up Windows and Linux servers as Arc-enabled machines and get to grips with deploying applications on Kubernetes clusters with Azure Arc and GitOps. The book then demonstrates how to onboard an on-premises SQL Server infrastructure as an Arc-enabled SQL Server and deploy and manage a hyperscale PostgreSQL infrastructure on-premises through Azure Arc. Along with deployment, the book also covers security, backup, migration, and data distribution aspects. Finally, it shows you how to deploy and manage Azure's data services on your own private cloud and explore multi-cloud solutions with Azure Arc. By the end of this book, you'll have a firm understanding of Azure Arc and how it interacts with various cutting-edge technologies such as Kubernetes and PaaS data services.What you will learnSet up a fully functioning Azure Arc-managed environmentExplore products and services from Azure that will help you to leverage Azure ArcUnderstand the new vision of working with on-premises infrastructureDeploy Azure's PaaS data services on-premises or on other cloud platformsDiscover and learn about the technologies required to design a hybrid and multi-cloud strategyImplement best practices to govern your IT infrastructure in a scalable modelWho this book is forThis book is for Cloud IT professionals (Azure and/or AWS), system administrators, database administrators (DBAs), and architects looking to gain clarity about how Azure Arc works and how it can help them achieve business value. Anyone with basic Azure knowledge will benefit from this book.
Get the deep insights you need to master efficient architectural design considerations and solve common design problems in your enterprise applications.Key FeaturesThe benefits and applicability of using different design patterns in JAVA EE Learn best practices to solve common design and architectural challengesChoose the right patterns to improve the efficiency of your programs Book DescriptionPatterns are essential design tools for Java developers. Java EE Design Patterns and Best Practices helps developers attain better code quality and progress to higher levels of architectural creativity by examining the purpose of each available pattern and demonstrating its implementation with various code examples. This book will take you through a number of patterns and their Java EE-specific implementations.In the beginning, you will learn the foundation for, and importance of, design patterns in Java EE, and then will move on to implement various patterns on the presentation tier, business tier, and integration tier. Further, you will explore the patterns involved in Aspect-Oriented Programming (AOP) and take a closer look at reactive patterns. Moving on, you will be introduced to modern architectural patterns involved in composing microservices and cloud-native applications. You will get acquainted with security patterns and operational patterns involved in scaling and monitoring, along with some patterns involved in deployment.By the end of the book, you will be able to efficiently address common problems faced when developing applications and will be comfortable working on scalable and maintainable projects of any size.What you will learnImplement presentation layers, such as the front controller patternUnderstand the business tier and implement the business delegate patternMaster the implementation of AOPGet involved with asynchronous EJB methods and REST servicesInvolve key patterns in the adoption of microservices architectureManage performance and scalability for enterprise-level applicationsWho this book is forJava developers who are comfortable with programming in Java and now want to learn how to implement design patterns to create robust, reusable and easily maintainable apps.
Explore the blockchain-based decentralized platform and understand how Ethereum works with Dapps examples Key Features Explore the Ethereum ecosystem and understand the latest research on the platform Build decentralized apps (Dapps) using smart contracts and Ethereum with the help of practical examples Learn to make your decentralized applications fast and highly secure Book Description Ethereum is a blockchain-based, decentralized computing platform that allows running smart contracts. This book provides a basic overview of how Ethereum works, its ecosystem, mining process, and the consensus mechanism. It also demonstrates a step-by-step approach for building decentralized applications. This book begins with the very basics of Blockchain technology. Then it dives deep into the Ethereum architecture, framework and tools in its ecosystem. It also provides you an overview of ongoing research on Ethereum, for example, Layer 1 and 2 scaling solution, Stablecoin, ICO/STO/IEO, etc. Next, it explains Solidity language in detail, and provides step-by-step instructions for designing, developing, testing, deploying, and monitoring decentralized applications. In addition, you'll learn how to use Truffle, Remix, Infura, Metamask, and many other Ethereum technologies. It'll also help you develop your own cryptocurrency by creating ERC20, and ERC721 smart contracts from scratch. Finally, we explain private blockchains, and you learn how to interact with smart contracts through wallets. What you will learn Understand the concepts of blockchain and cryptocurrency Master Ethereum development tools such as Truffle, Remix IDE and Infura Delve into smart contract development Develop DApps frontend using Node.js, React.js, and Web3js API Learn Etherscan and other tools to secure and monitor smart contracts Develop and debug smart contracts by working with Remix Apply Truffle suite to compile, migrate, and unit test smart contracts Explore smart contracts such as ERC20 token and decentralized digital market Who this book is for This book is for all developers and architects who want to explore Ethereum blockchain fundamentals and get started with building real-world decentralized applications. Knowledge of an object-oriented programming language such as JavaScript will be useful but not mandatory.