Books: 4

Microservices

CoverTitleYear
Explore and master modern JavaScript techniques with ES2015 in order to build large-scale web applications
ABOUT THIS BOOK * This course offers an expert's eye on the latest ES6 features and how these advanced tasks fit together in JavaScript as a whole * Discover robust JavaScript implementations of classic and advanced design patterns * Learn about modern web architectures and build real-world apps on more » top of them WHO THIS BOOK IS FOR This course is for experienced developers familiar with other object-oriented languages who wants to learn new capabilities of ES-2015 to improve their web development skills and build professional-quality web applications. This also goes for those who want to explore some modern JavaScript features, techniques, and architectures in order to develop cutting-edge web applications. WHAT YOU WILL LEARN * Get a run through of the basic language constructs, Functions, and Closures of JavaScript * Code using the powerful object-oriented feature in JavaScript * Master DOM manipulation, cross-browser strategies, and ES6 * Harness the power of patterns for tasks ranging from application building to code testing * Identify the best use cases for microservices * Gain expertise in responsive and dynamic website design * Enable real-time communications between client-client and client-server/server-client * Write complete applications using functional reactive programming IN DETAIL JavaScript is a high-level, dynamic, untyped, lightweight, and interpreted programming language. Mastering modern JavaScript techniques and the toolchain are essential to develop web-scale applications. This Learning Path will upgrade your skills to ES2015, and you will get to introduce yourself to popular frameworks like React and Angular 2. In the first module, you will get familiar with the language constructs and how to make code easy to organize. You will gain a concrete understanding of variable scoping, loops, and best practices on using types and data structures, as well as the coding style and recommended code organization patterns in JavaScript. By the end of the module, you will understand how reactive JavaScript is going to be the new paradigm. Over the course of the next module, you will explore how design patterns can help you improve and organize your JavaScript code. You'll get to grips with creational, structural, and behavioral patterns and get a deeper look at patterns used in functional programming, as well as model view patterns and patterns to build web applications. By the end of the module, you'll be saved of a lot of trial and error and developmental headaches, and you will be on the road to becoming a JavaScript expert. In the last leg of this course, you will shift your focus to network programming concepts as you build a real-time web application with websockets. Along the way, you'll explore how the power of JavaScript can be increased multi-fold with high performance techniques. By the end of this module, you'll be a skilled JavaScript developer with a solid knowledge of the latest JavaScript techniques, tools, and architecture to build modern web apps. This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: * Mastering JavaScript by Ved Antani * Mastering JavaScript Design Patterns, Second Edition by Simon Timms * Modern JavaScript Applications by Narayan Prusty STYLE AND APPROACH This course is a comprehensive guide with a clear focus on practical use cases and patterns. Each chapter consists of best practices, useful advice, and a bunch of easy-to-follow examples that will build up your skills as you advance. « less
2017
With Docker, CoreOS Linux, and Other Platforms
Take container cluster management to the next level; learn how to administer and configure Kubernetes on CoreOS; and apply suitable management design patterns such as Configmaps, Autoscaling, elastic resource usage, and high availability. Some of the other features discussed are logging, scheduling, more » rolling updates, volumes, service types, and multiple cloud provider zones.The atomic unit of modular container service in Kubernetes is a Pod, which is a group of containers with a common filesystem and networking. The Kubernetes Pod abstraction enables design patterns for containerized applications similar to object-oriented design patterns. Containers provide some of the same benefits as software objects such as modularity or packaging, abstraction, and reuse. CoreOS Linux is used in the majority of the chapters and other platforms discussed are CentOS with OpenShift, Debian 8 (jessie) on AWS, and Debian 7 for Google Container Engine. CoreOS is the main focus becayse Docker is pre-installed on CoreOS out-of-the-box. CoreOS: * Supports most cloud providers (including Amazon AWS EC2 and Google Cloud Platform) and virtualization platforms (such as VMWare and VirtualBox) * Provides Cloud-Config for declaratively configuring for OS items such as network configuration (flannel), storage (etcd), and user accounts * Provides a production-level infrastructure for containerized applications including automation, security, and scalability * Leads the drive for container industry standards and founded appc * Provides the most advanced container registry, Quay Docker was made available as open source in March 2013 and has become the most commonly used containerization platform. Kubernetes was open-sourced in June 2014 and has become the most widely used container cluster manager. The first stable version of CoreOS Linux was made available in July 2014 and since has become one of the most commonly used operating system for containers. What You'll Learn * Use Kubernetes with Docker * Create a Kubernetes cluster on CoreOS on AWS * Apply cluster management design patterns * Use multiple cloud provider zones * Work with Kubernetes and tools like Ansible * Discover the Kubernetes-based PaaS platform OpenShift * Create a high availability website * Build a high availability Kubernetes master cluster * Use volumes, configmaps, services, autoscaling, and rolling updates * Manage compute resources * Configure logging and scheduling Who This Book Is For Linux admins, CoreOS admins, application developers, and container as a service (CAAS) developers. Some pre-requisite knowledge of Linux and Docker is required. Introductory knowledge of Kubernetes is required such as creating a cluster, creating a Pod, creating a service, and creating and scaling a replication controller. For introductory Docker and Kubernetes information, refer to Pro Docker (Apress) and Kubernetes Microservices with Docker (Apress). Some pre-requisite knowledge about using Amazon Web Services (AWS) EC2, CloudFormation, and VPC is also required. « less
2017
KEY FEATURES * Get a thorough introduction to Kotlin * Learn to use Java code alongside Kotlin without any hiccups * Get a complete overview of null safety, Generics, and many more interesting features BOOK DESCRIPTION Kotlin has been making waves ever since it was open sourced by JetBrains in more » 2011; it has been praised by developers across the world and is already being adopted by companies. This book provides a detailed introduction to Kotlin that shows you all its features and will enable you to write Kotlin code to production. We start with the basics: get you familiar with running Kotlin code, setting up, tools, and instructions that you can use to write basic programs. Next, we cover object oriented code: functions, lambdas, and properties – all while using Kotlin's new features. Then, we move on to null safety aspects and type parameterization. We show you how to destructure expressions and even write your own. We also take you through important topics like testing, concurrency, microservices, and a whole lot more. By the end of this book you will be able to compose different services and build your own applications. WHAT YOU WILL LEARN * Use new features to write structured and readable object-oriented code * Find out how to use lambdas and higher order functions to write clean, reusable, and simple code * Write unit tests and integrate Kotlin tests with Java code in a transitioning code base * Write real-world production code in Kotlin in the style of microservices * Leverage Kotlin's extensions to the Java collections library * Use destructuring expressions and find out how to write your own * Write code that avoids null pointer errors and see how Java-nullable code can integrate with features in a Kotlin codebase * Discover how to write functions in Kotlin, see the new features available, and extend existing libraries * Learn to write an algebraic data types and figure out when they should be used ABOUT THE AUTHOR Stephen Samuel is an accomplished developer with over 17 years of experience. He has worked with Java throughout his career, and in the past 5 years has focused on Scala. He has a passion for concurrency and Big Data technologies. Having spent the last few years in investment banking, he is currently working with Kotlin on a major Big Data ingestment project. Stephen is also active in the open source community, being the author of several high profile Scala and Kotlin libraries. Stefan Bocutiu is a Big Data consultant with over 13 years of experience in software development. He enjoys coding in Scala, C#, and has a passion for stream processing technologies. With the team at DataMountaineer--a consultancy company offering delivery of solutions for streaming/ fast data platforms - he focuses on providing scalable, unified, real-time data pipelines allowing reactive decision making, analytics, and Hadoop integration. Stefan is passionate about motorsports, and while his racing skills are not good enough to allow him to compete, he tries to attend as many MotoGP races as possible. When he is not coding, he can be found at the climbing wall or at the gym. Occasionally, hiking and scrambling trips are on his calendar, and during the winter season, skiing trips are a must for him. TABLE OF CONTENTS 1. Getting Started with Kotlin 2. Kotlin Basics 3. Object-Oriented Programming in Kotlin 4. Functions in Kotlin 5. Higher Order Functions and Functional Programming 6. Properties 7. Null Safety, Reflection, and Annotations 8. Generics 9. Data Classes 10. Collections 11. Testing in Kotlin 12. Microservices with Kotlin 13. Concurrency « less
2017
Build robust and scalable software from the start
Learn what a microservices architecture is, its advantages, and why you should consider using one when starting a new application. The book describes how taking a microservices approach from the start helps avoid the complexity and expense of moving to a service-oriented approach after applications reach more » a critical code base size or traffic load. Microservices from Day One discusses many of the decisions you face when adopting a service-oriented approach and defines a set of rules to follow for easily adopting microservices. The book provides simple guidelines and tips for dividing a problem domain into services. It also describes best practices for documenting and generating APIs and client libraries, testing applications with service dependencies, optimizing services for client performance, and much more. Throughout the book, you will follow the development of a sample project to see how to apply the best practices described. What You Will Learn: * Apply guidelines and best practices for developing projects that use microservices * Define a practical microservices architecture at the beginning of a project that allows for fast development * Define and build APIs based on real-world best practices * Build services that easily scale by using tools available in most programming languages * Test applications in a distributed environment Who This Book is For: Software engineers and web developers who have heard about microservices, and want to either move the project/applications they work on to a service-oriented environment, or want to start a new project knowing that building services helps with ease of scaling and maintainability. The book is a reference for developers who have a desire to build software in smaller, more focused and manageable chunks, but do not know how to get started. « less
2016