Nginx. From Beginner to Pro. Rahul Soni

Size: px
Start display at page:

Download "Nginx. From Beginner to Pro. Rahul Soni"

Transcription

1 Nginx From Beginner to Pro Rahul Soni

2 Nginx: From Beginner to Pro Rahul Soni Kolkata, West Bengal India ISBN-13 (pbk): ISBN-13 (electronic): DOI / Library of Congress Control Number: Copyright 2016 by Rahul Soni This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now known or hereafter developed. Exempted from this legal reservation are brief excerpts in connection with reviews or scholarly analysis or material supplied specifically for the purpose of being entered and executed on a computer system, for exclusive use by the purchaser of the work. Duplication of this publication or parts thereof is permitted only under the provisions of the Copyright Law of the Publisher s location, in its current version, and permission for use must always be obtained from Springer. Permissions for use may be obtained through RightsLink at the Copyright Clearance Center. Violations are liable to prosecution under the respective Copyright Law. Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the trademark. The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to proprietary rights. While the advice and information in this book are believed to be true and accurate at the date of publication, neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or omissions that may be made. The publisher makes no warranty, express or implied, with respect to the material contained herein. Managing Director: Welmoed Spahr Acquisitions Editor: Louise Corrigan Development Editor: Corbin Collins Technical Reviewer: Eduardo Balsa Editorial Board: Steve Anglin, Pramila Balen, Laura Berendson, Aaron Black, Louise Corrigan, James DeWolf, Jonathan Gennick, Todd Green, Robert Hutchinson, Celestin Suresh John, Nikhil Karkal, James Markham, Susan McDermott, Matthew Moodie, Natalie Pao, Gwenan Spearing Coordinating Editor: Nancy Chen Copy Editor: Karen Jameson Compositor: SPi Global Indexer: SPi Global Distributed to the book trade worldwide by Springer Science+Business Media New York, 233 Spring Street, 6th Floor, New York, NY Phone SPRINGER, fax (201) , orders-ny@springer-sbm.com, or visit Apress Media, LLC is a California LLC and the sole member (owner) is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware corporation. For information on translations, please rights@apress.com, or visit Apress and friends of ED books may be purchased in bulk for academic, corporate, or promotional use. ebook versions and licenses are also available for most titles. For more information, reference our Special Bulk Sales ebook Licensing web page at Any source code or other supplementary materials referenced by the author in this text is available to readers at For detailed information about how to locate your book s source code, go to source-code/. Printed on acid-free paper

3 This book is dedicated to the open source community at large who keep pushing the limits of what software can achieve!

4

5 Contents at a Glance About the Author...xvii About the Technical Reviewer...xix Acknowledgments...xxi Chapter 1: Introduction to Nginx Web Server... 1 Chapter 2: Installing Nginx Chapter 3: Nginx Core Directives Chapter 4: Nginx Modules Chapter 5: Nginx Core Architecture Chapter 6: Hosting Web Sites on Nginx Chapter 7: Nginx and Dynamic Content Chapter 8: Load Balancing with Nginx Chapter 9: Log Analysis, Monitoring, and Automation Chapter 10: SSL, Security, and Authentication Chapter 11: Upgrading and Migrating Chapter 12: Troubleshooting Tips and FAQ Index v

6

7 Contents About the Author...xvii About the Technical Reviewer...xix Acknowledgments...xxi Chapter 1: Introduction to Nginx Web Server... 1 HTTP Basics... 1 What Is a Web Server?... 3 Seven Reasons Why You Should Be Using Nginx... 4 It s Fast... 4 It Can Accelerate Your Application... 4 It Has a Straightforward Load Balancer... 4 It Scales Well... 4 You Can Upgrade It On the Fly... 5 It s Affordable to Install and Maintain... 5 It s Easy to Use... 5 Main Features of Nginx... 5 More Than Just a Web Server... 5 Modular Design... 6 Asynchronous Web Server... 6 Reverse Proxy and Load Balancing Capability... 6 Low Resource Requirement and Consumption...6 Unparalleled Performance... 7 Multiple Protocol Support: HTTP(S), WebSocket, IMAP, POP3, SMTP... 7 SSL Termination... 7 HTTP Video Streaming Using MP4/FLV/HDS/HLS... 7 vii

8 CONTENTS Extended Monitoring and Logging... 8 Graceful Restarting... 8 Upgrades without Downtime Using Live Binaries... 8 Enterprise Features of Nginx Plus... 8 Support Available with Nginx Plus... 9 Advantages of Nginx Plus... 9 Advanced HTTP and TCP Load Balancing... 9 Session Persistence... 9 Content Caching Enhanced Capabilities... 9 Application Health Checks HTTP Live Streaming (HLS) and Video on Demand (VOD) HTTP Dynamic Streaming (HDS/VOD) Bandwidth Management for MP4 Media Live Activity Monitoring Nginx Commercial Support Differences between Apache and Nginx History Performance Resource Requirements Availability Proxy and Load Balancing Server Static vs. Dynamic Content Configuration Modules (or Plug-Ins) Documentation Support Summary...15 viii

9 CONTENTS Chapter 2: Installing Nginx Preparing Your Environment Installing Nginx Using Pre-Built Packages Install Nginx Pre-Built Package Nginx Folder Structure Uninstall Nginx Downloading Nginx from Source Downloading Nginx Extracting the Nginx Archive Understanding the Nginx Source Directory Installing Nginx Binaries Build Tools for Compilation Install Dependent Packages Compiling Nginx Understanding the./configure Script Compile-Time Options Compiling and Installing Nginx Enable Nginx Service on Reboot Troubleshooting Service Start Verifying Web Server Installation Firewall Configuration Nginx in Amazon Elastic Compute Cloud (EC2) Summary...47 Chapter 3: Nginx Core Directives Location of Configuration Files What Are Directives? Context Types Understanding the Default Configuration Simple Directives Events Context ix

10 CONTENTS HTTP Context The conf.d Folder Server Context Location Context Location Context Special Cases Verify the Correctness of Configuration Allow Directory Listing Deny Access to Any Specific Location Proxy the Requests to Apache Proxy the Requests to FastCGI Nginx Variables A Quick Note about Nginx Official Documentation Summary...75 Chapter 4: Nginx Modules What Are Modules? Module Installation Module Categories How Does a Module Work? Module Structure How Modules Fit in Nginx Configuring Default Modules for Optimal Performance Core Module Events Module HTTP Module Enabling Optional Modules Gzip Module FastCGI Module Basic Authentication x

11 CONTENTS Enabling Third-Party Modules PAM Authentication Summary...95 Chapter 5: Nginx Core Architecture A Quick Analogy The Master Process Processes vs. Threads The Worker Process State Machines Update Configuration Upgrade HTTP Request Processing in Nginx Summary Chapter 6: Hosting Web Sites on Nginx Web Server Setup Connecting Host and Guest Servers User Creation Sample Applications Uploading Content Hosting Websites Websites Using Different Names Websites Using Domain Name Internal Redirects Sites Using Different Ports Wildcard Mapping Blocking Access Domain Name Mapping IP-Based Hosting Mixed Name-Based and IP-Based Servers xi

12 CONTENTS Common Configuration Mistakes Let s Use Root Inside Location Block Monolithic Configuration Files Unnecessary Complications Listening on Hostname Summary Chapter 7: Nginx and Dynamic Content Sudo Scare Installing MySQL Installing PHP Configure Nginx for WordPress The MEAN Stack Installing MongoDB Installing Node.JS Installing Express.JS Installing Angular.JS Creating a MEAN Application Configure Nginx for MEAN Stack Summary Chapter 8: Load Balancing with Nginx Defining High Availability Load Balancing for High Availability Hardware Load Balancer Software Load Balancer Load Balancing in Nginx Clean Up the Servers Create Web Content Configure WFE1 and WFE Set Up NLB Server xii

13 CONTENTS Load Balancing Algorithms Most Suitable Algorithm Load Balancing Scenarios Nginx Routing Request to Express/Node.js Passing the HOST Header Forwarding IP Information Buffering Nginx Caching Server Directive Additional Parameters Configure Nginx (PLUS) for Heath Checks Activity Monitoring in Nginx (PLUS) Summary Chapter 9: Log Analysis, Monitoring, and Automation Error Log Access Log What to Log? Log Buffers Conditional Log Log Compression Syslog Analyze Logs tail ngxtop GoAccess Custom Error pages Benchmark Apache Benchmark JMeter Cloud-Based Benchmarking xiii

14 CONTENTS Baseline Monitoring Nginx PLUS Automation Summary Chapter 10: SSL, Security, and Authentication Tools to Protect Network Traffic Capturing Network Traffic with Wireshark Using Secure HTTP SSL Encryption Enabling SSL Nginx Optimizing HTTPS Servers Creating a Certificate Request Web Server Security Creating the Password File Configuring Nginx Password Authentication Summary Chapter 11: Upgrading and Migrating Controlling Nginx Command-Line Parameters Migrating from Apache to Nginx Feature Comparison Configuration Comparison Summary Chapter 12: Troubleshooting Tips and FAQ First, What You Should Not Do First Commandment of Troubleshooting: Isolate the Issue Scenario 1: Page Cannot Be Displayed in the Browser Scenario 2: Conflicting Ports xiv

15 CONTENTS Scenario 3: Bad Permissions Scenario 4: Bad Configuration Scenario 5: Rewrite Rules Scenario 6: Log Only Your Requests Important Tools for Web Administrators ping traceroute top htop atop uptime free ifconfig or ip addr ulimit nslookup powertop iotop iptraf tcpdump WireShark Nagios zabbix w lsof Common Pitfalls to Avoid Chmod Having Root Inside Location Block Using if Blocks Passing Uncontrolled Requests to PHP Rewrite Issues Using Hostname in Configuration xv

16 CONTENTS Frequently Asked Questions Is there an option to compare Nginx and Nginx Plus? Is there a location for sample configurations? How can I redirect from www to no-www and vice versa? How can I write all http requests to https while maintaining a sub-domain? How can I find which flags Nginx was compiled with? Is there any mechanism for detailed debugging? How many third-party modules does Nginx have? What happens if I have Nginx Plus and the license expires? Is there design or consulting help available? Summary Index xvi

17 About the Author Rahul Soni worked at Microsoft for a decade ( ) before becoming completely fascinated and then pulled into open source technologies. He consulted on IIS,.NET, and SharePoint during his Microsoft tenure. There was no looking back when he realized how much could be achieved using the open source stack. Nginx and the MEAN stack floored him completely, and he founded Attosol Technologies ( ) to pursue his passion. This book is an honest attempt from a guy who has always been into a proprietary stack, but ultimately found that the open source community is exciting enough to leave the corporate world. Rahul is a man of simple taste and loves reading, listening to music, and traveling. When not working, he can be found hanging around with his wife Neha and their two kids Anika and Aarav. xvii

18

19 About the Technical Reviewer Eduardo Balsa has worked in system administration for the last 13 years, focusing on server scaling and security. His work on the Fintech and web marketing sector has led him to push web server software to its limits and to gather an extensive knowledge of the ins and outs of their deployment, configuration, and day-to-day maintenance. Eduardo is adept at system-wide automation and of the K.I.S.S. principle and passionate about tinkering and photography. You can find him online at xix

20

21 Acknowledgments There are many people who I would like to acknowledge since they have directly or indirectly played a huge role in getting this book released. Igor Sysoev - The creator of Nginx who solved a problem that pushed web delivery to the next level. The open source community at large, which has helped Nginx along its way. Apress, for their support in releasing this book. All the editors at Apress, who reviewed the book and helped me express myself better. Nancy Chen, the coordinating editor, for being flexible and supportive throughout! Microsoft, where I learned a lot about IIS and other web technologies. And my family, who understood and supported me more than I ever imagined possible when I took up this project! xxi

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla

Windows 10 Revealed. The Universal Windows Operating System for PC, Tablets, and Windows Phone. Kinnary Jangla Windows 10 Revealed The Universal Windows Operating System for PC, Tablets, and Windows Phone Kinnary Jangla Windows 10 Revealed Kinnary Jangla Bing Maps San Francisco, California, USA ISBN-13 (pbk): 978-1-4842-0687-4

More information

Agile Swift. Swift Programming Using Agile Tools and Techniques. Godfrey Nolan

Agile Swift. Swift Programming Using Agile Tools and Techniques. Godfrey Nolan Agile Swift Swift Programming Using Agile Tools and Techniques Godfrey Nolan Agile Swift: Swift Programming Using Agile Tools and Techniques Godfrey Nolan Huntington Woods, Michigan, USA ISBN-13 (pbk):

More information

SQL Server AlwaysOn Revealed

SQL Server AlwaysOn Revealed SQL Server AlwaysOn Revealed Second Edition Peter A. Carter SQL Server AlwaysOn Revealed, 2nd Edition Peter A. Carter Botley, United Kingdom ISBN-13 (pbk): 978-1-4842-2396-3 ISBN-13 (electronic): 978-1-4842-2397-0

More information

MATLAB Programming for Numerical Analysis. César Pérez López

MATLAB Programming for Numerical Analysis. César Pérez López MATLAB Programming for Numerical Analysis César Pérez López MATLAB Programming for Numerical Analysis Copyright 2014 by César Pérez López This work is subject to copyright. All rights are reserved by the

More information

JavaScript Quick Syntax Reference

JavaScript Quick Syntax Reference JavaScript Quick Syntax Reference Mikael Olsson JavaScript Quick Syntax Reference Copyright 2015 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

Essential Angular for ASP.NET Core MVC

Essential Angular for ASP.NET Core MVC Essential Angular for ASP.NET Core MVC Adam Freeman Essential Angular for ASP.NET Core MVC Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-2915-6 ISBN-13 (electronic): 978-1-4842-2916-3 DOI 10.1007/978-1-4842-2916-3

More information

Functional Programming in R

Functional Programming in R Functional Programming in R Advanced Statistical Programming for Data Science, Analysis and Finance Thomas Mailund Functional Programming in R: Advanced Statistical Programming for Data Science, Analysis

More information

C Quick Syntax Reference

C Quick Syntax Reference C Quick Syntax Reference Mikael Olsson C Quick Syntax Reference Copyright 2015 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of

More information

Learn PHP 7. Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL. Steve Prettyman

Learn PHP 7. Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL. Steve Prettyman THE EXPERT S VOICE IN WEB DEVELOPMENT Learn PHP 7 Object-Oriented Modular Programming using HTML5, CSS3, JavaScript, XML, JSON, and MySQL Steve Prettyman Learn PHP 7 Object-Oriented Modular Programming

More information

Objective-C Quick Syntax Reference

Objective-C Quick Syntax Reference Objective-C Quick Syntax Reference Matthew Campbell Objective-C Quick Syntax Reference Copyright 2014 by Matthew Campbell This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Scalable Big Data Architecture

Scalable Big Data Architecture Scalable Big Data Architecture A Practitioner s Guide to Choosing Relevant Big Data Architecture Bahaaldine Azarmi Scalable Big Data Architecture Copyright 2016 by Bahaaldine Azarmi This work is subject

More information

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian

Pro MERN Stack. Full Stack Web App Development with Mongo, Express, React, and Node. Vasan Subramanian Pro MERN Stack Full Stack Web App Development with Mongo, Express, React, and Node Vasan Subramanian Pro MERN Stack Vasan Subramanian Bangalore, Karnataka, India ISBN-13 (pbk): 978-1-4842-2652-0 ISBN-13

More information

MATLAB Numerical Calculations. César Pérez López

MATLAB Numerical Calculations. César Pérez López MATLAB Numerical Calculations César Pérez López MATLAB Numerical Calculations Copyright 2014 by César Pérez López This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

Beginning Robotics Programming in Java with LEGO Mindstorms

Beginning Robotics Programming in Java with LEGO Mindstorms Beginning Robotics Programming in Java with LEGO Mindstorms Wei Lu Beginning Robotics Programming in Java with LEGO Mindstorms Wei Lu Keene, New Hampshire, USA ISBN-13 (pbk): 978-1-4842-2004-7 ISBN-13

More information

The Windows 10 Productivity Handbook

The Windows 10 Productivity Handbook The Windows 10 Productivity Handbook Discover Expert Tips, Tricks, and Hidden Features in Windows 10 Mike Halsey The Windows 10 Productivity Handbook Mike Halsey Sheffield, Yorkshire, UK ISBN-13 (pbk):

More information

Microsoft Computer Vision APIs Distilled

Microsoft Computer Vision APIs Distilled Microsoft Computer Vision APIs Distilled Getting Started with Cognitive Services Alessandro Del Sole Microsoft Computer Vision APIs Distilled Alessandro Del Sole Cremona, Italy ISBN-13 (pbk): 978-1-4842-3341-2

More information

Material Design Implementation with AngularJS

Material Design Implementation with AngularJS Material Design Implementation with AngularJS UI Component Framework First Edition V. Keerti Kotaru Material Design Implementation with AngularJS V. Keerti Kotaru Hyderabad, Andhra Pradesh, India ISBN-13

More information

C++ Quick Syntax Reference

C++ Quick Syntax Reference C++ Quick Syntax Reference Mikael Olsson C++ Quick Syntax Reference Copyright 2013 by Mikael Olsson This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part

More information

Java Quick Syntax Reference. Second Edition. Mikael Olsson

Java Quick Syntax Reference. Second Edition. Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Second Edition Mikael Olsson Java Quick Syntax Reference Mikael Olsson Hammarland, Länsi-Suomi, Finland ISBN-13 (pbk):

More information

Deploying SharePoint 2016

Deploying SharePoint 2016 Deploying SharePoint 2016 Best Practices for Installing, Configuring, and Maintaining SharePoint Server 2016 Vlad Catrinescu Trevor Seward Deploying SharePoint 2016: Best Practices for Installing, Configuring,

More information

Creating Google Chrome Extensions

Creating Google Chrome Extensions Creating Google Chrome Extensions Prateek Mehta Creating Google Chrome Extensions Prateek Mehta New Delhi, India ISBN-13 (pbk): 978-1-4842-1774-0 ISBN-13 (electronic): 978-1-4842-1775-7 DOI 10.1007/978-1-4842-1775-7

More information

Deepak Vohra. Pro Docker

Deepak Vohra. Pro Docker Deepak Vohra Pro Docker Pro Docker Copyright 2016 by Deepak Vohra This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned, specifically

More information

Building Custom Tasks for SQL Server Integration Services

Building Custom Tasks for SQL Server Integration Services Building Custom Tasks for SQL Server Integration Services Andy Leonard Building Custom Tasks for SQL Server Integration Services Andy Leonard Farmville, Virginia, USA ISBN-13 (pbk): 978-1-4842-2939-2 ISBN-13

More information

Practical Amazon EC2, SQS, Kinesis, and S3

Practical Amazon EC2, SQS, Kinesis, and S3 Practical Amazon EC2, SQS, Kinesis, and S3 A Hands-On Approach to AWS Sunil Gulabani Practical Amazon EC2, SQS, Kinesis, and S3: A Hands-On Approach to AWS Sunil Gulabani Ahmedabad, Gujarat, India ISBN-13

More information

Learn Apple HomeKit on ios

Learn Apple HomeKit on ios Learn Apple HomeKit on ios A Home Automation Guide for Developers, Designers, and Homeowners Jesse Feiler Learn Apple HomeKit on ios: A Home Automation Guide for Developers, Designers, and Homeowners Jesse

More information

Beginning Oracle WebCenter Portal 12c

Beginning Oracle WebCenter Portal 12c Beginning Oracle WebCenter Portal 12c Build next-generation Enterprise Portals with Oracle WebCenter Portal Vinay Kumar Daniel Merchán García Beginning Oracle WebCenter Portal 12c Vinay Kumar Rotterdam,

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Pradeep Macharla North Carolina, USA ISBN-13 (pbk): 978-1-4842-2795-4

More information

Learning Groovy. Adam L. Davis

Learning Groovy. Adam L. Davis Learning Groovy Adam L. Davis Learning Groovy Adam L. Davis New York, USA ISBN-13 (pbk): 978-1-4842-2116-7 ISBN-13 (electronic): 978-1-4842-2117-4 DOI 10.1007/978-1-4842-2117-4 Library of Congress Control

More information

Pro MongoDB Development

Pro MongoDB Development Pro MongoDB Development Deepak Vohra Pro MongoDB Development Copyright 2015 by Deepak Vohra This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the

More information

Web Programming with Dart. Moises Belchin Patricia Juberias

Web Programming with Dart. Moises Belchin Patricia Juberias Web Programming with Dart Moises Belchin Patricia Juberias Web Programming with Dart Copyright 2015 by Moises Belchin and Patricia Juberias This work is subject to copyright. All rights are reserved by

More information

Introducing Meteor. Josh Robinson Aaron Gray David Titarenco

Introducing Meteor. Josh Robinson Aaron Gray David Titarenco Introducing Meteor Josh Robinson Aaron Gray David Titarenco Introducing Meteor Copyright 2015 by Josh Robinson, Aaron Gray, and David Titarenco This work is subject to copyright. All rights are reserved

More information

Beginning CSS Preprocessors

Beginning CSS Preprocessors Beginning CSS Preprocessors With Sass, Compass, and Less Anirudh Prabhu Beginning CSS Preprocessors: With SASS, Compass.js, and Less.js Copyright 2015 by Anirudh Prabhu This work is subject to copyright.

More information

Swift Quick Syntax Reference

Swift Quick Syntax Reference Swift Quick Syntax Reference Matthew Campbell Swift Quick Syntax Reference Copyright 2014 by Matthew Campbell This work is subject to copyright. All rights are reserved by the Publisher, whether the whole

More information

Android Continuous Integration

Android Continuous Integration Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla Android Continuous Integration Build-Deploy-Test Automation for Android Mobile Apps Pradeep Macharla

More information

Practical Spring LDAP

Practical Spring LDAP Practical Spring LDAP Enterprise Java LDAP Development Made Easy Balaji Varanasi Practical Spring LDAP: Enterprise Java LDAP Development Made Easy Copyright 2013 Balaji Varanasi. All rights reserved. This

More information

Pro JavaScript Performance Monitoring and Visualization

Pro JavaScript Performance Monitoring and Visualization Pro JavaScript Performance Monitoring and Visualization Tom Barker Pro JavaScript Performance Copyright 2012 by Tom Barker This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Windows Troubleshooting Series

Windows Troubleshooting Series Windows Troubleshooting Series Mike Halsey, MVP Series Editor Windows Group Policy Troubleshooting A Best Practice Guide for Managing Users and PCs Through Group Policy Kapil Arya, MVP Edited by Andrew

More information

Pro Angular 6. Third Edition. Adam Freeman

Pro Angular 6. Third Edition. Adam Freeman Pro Angular 6 Third Edition Adam Freeman Pro Angular 6 Adam Freeman London, UK ISBN-13 (pbk): 978-1-4842-3648-2 ISBN-13 (electronic): 978-1-4842-3649-9 https://doi.org/10.1007/978-1-4842-3649-9 Library

More information

Beginning PowerShell for SharePoint 2016

Beginning PowerShell for SharePoint 2016 Beginning PowerShell for SharePoint 2016 A Guide for Administrators, Developers, and DevOps Engineers Second Edition Nikolas Charlebois-Laprade John Edward Naguib Beginning PowerShell for SharePoint 2016:

More information

Migrating to Swift from Android

Migrating to Swift from Android Migrating to Swift from Android Sean Liao Migrating to Swift from Android Copyright 2014 by Sean Liao This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part

More information

Server Reporting Services. Kathi Kellenberger

Server Reporting Services. Kathi Kellenberger Beginning SQL Server Reporting Services Kathi Kellenberger Beginning SQL Server Reporting Services Kathi Kellenberger Beginning SQL Server Reporting Services Kathi Kellenberger Edwardsville, Illinois USA

More information

ASP.NET Core Recipes

ASP.NET Core Recipes ASP.NET Core Recipes A Problem-Solution Approach Second Edition John Ciliberti ASP.NET Core Recipes: A Problem-Solution Approach John Ciliberti Sparta, New Jersey, USA ISBN-13 (pbk): 978-1-4842-0428-3

More information

James Cryer. Pro Grunt.js

James Cryer. Pro Grunt.js James Cryer Pro Grunt.js Pro Grunt.js Copyright 2015 by James Cryer This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is concerned,

More information

Beginning django CMS. Nigel George

Beginning django CMS. Nigel George Beginning django CMS Nigel George Beginning django CMS Copyright 2015 by Nigel George This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material

More information

Pro Java Clustering and Scalability

Pro Java Clustering and Scalability Pro Java Clustering and Scalability Building Real-Time Apps with Spring, Cassandra, Redis, WebSocket and RabbitMQ Jorge Acetozi Pro Java Clustering and Scalability: Building Real-Time Apps with Spring,

More information

JavaScript Essentials for SAP ABAP Developers

JavaScript Essentials for SAP ABAP Developers JavaScript Essentials for SAP ABAP Developers A Guide to Mobile and Desktop Application Development Rehan Zaidi JavaScript Essentials for SAP ABAP Developers: A Guide to Mobile and Desktop Application

More information

Beginning ASP.NET MVC 4. José Rolando Guay Paz

Beginning ASP.NET MVC 4. José Rolando Guay Paz Beginning ASP.NET MVC 4 José Rolando Guay Paz Beginning ASP.NET MVC 4 Copyright 2013 by José Rolando Guay Paz This work is subject to copyright. All rights are reserved by the Publisher, whether the whole

More information

Learn Excel 2016 for OS X

Learn Excel 2016 for OS X Learn Excel 2016 for OS X Second Edition Guy Hart-Davis Learn Excel 2016 for OS X Copyright 2015 by Guy Hart-Davis This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

Creating Maintainable APIs

Creating Maintainable APIs Creating Maintainable APIs A Practical, Case-Study Approach Ervin Varga Creating Maintainable APIs: A Practical, Case-Study Approach Ervin Varga Expro I.T. Consulting, Kikinda Serbia ISBN-13 (pbk): 978-1-4842-2195-2

More information

C++ Recipes. A Problem-Solution Approach. Bruce Sutherland

C++ Recipes. A Problem-Solution Approach. Bruce Sutherland C++ Recipes A Problem-Solution Approach Bruce Sutherland C++ Recipes: A Problem-Solution Approach Copyright 2015 by Bruce Sutherland This work is subject to copyright. All rights are reserved by the Publisher,

More information

Introducing SQLite for Mobile Developers

Introducing SQLite for Mobile Developers Introducing SQLite for Mobile Developers Jesse Feiler Introducing SQLite for Mobile Developers Copyright 2015 by Jesse Feiler This work is subject to copyright. All rights are reserved by the Publisher,

More information

Windows Troubleshooting Series

Windows Troubleshooting Series Windows Troubleshooting Series Mike Halsey, MVP Series Editor Windows Networking Troubleshooting Mike Halsey Joli Ballew Windows Networking Troubleshooting Mike Halsey Sheffield, South Yorkshire, UK Joli

More information

Dynamic SQL. Applications, Performance, and Security. Ed Pollack

Dynamic SQL. Applications, Performance, and Security. Ed Pollack Dynamic SQL Applications, Performance, and Security Ed Pollack Dynamic SQL Edward Pollack Albany, New York, USA ISBN-13 (pbk): 978-1-4842-1810-5 ISBN-13 (electronic): 978-1-4842-1811-2 DOI 10.1007/978-1-4842-1811-2

More information

Beginning the Linux Command Line

Beginning the Linux Command Line Beginning the Linux Command Line Second Edition Sander van Vugt Beginning the Linux Command Line, Second edition Copyright 2015 by Sander van Vugt This work is subject to copyright. All rights are reserved

More information

Troubleshooting Xcode

Troubleshooting Xcode Troubleshooting Xcode Magno Urbano Troubleshooting Xcode Copyright 2015 by Magno Urbano This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material

More information

Microsoft Mapping. Geospatial Development in Windows 10 with Bing Maps and C# Second Edition. Carmen Au Ray Rischpater

Microsoft Mapping. Geospatial Development in Windows 10 with Bing Maps and C# Second Edition. Carmen Au Ray Rischpater Microsoft Mapping Geospatial Development in Windows 10 with Bing Maps and C# Second Edition Carmen Au Ray Rischpater Microsoft Mapping: Geospatial Development in Windows 10 with Bing Maps and C# Copyright

More information

Beginning Functional JavaScript

Beginning Functional JavaScript Beginning Functional JavaScript Functional Programming with JavaScript Using EcmaScript 6 Anto Aravinth Beginning Functional JavaScript Anto Aravinth Chennai, Tamil Nadu, India ISBN-13 (pbk): 978-1-4842-2655-1

More information

Custom Raspberry Pi Interfaces

Custom Raspberry Pi Interfaces Custom Raspberry Pi Interfaces Design and build hardware interfaces for the Raspberry Pi Warren Gay Custom Raspberry Pi Interfaces: Design and build hardware interfaces for the Raspberry Pi Warren Gay

More information

JavaScript Object Programming

JavaScript Object Programming JavaScript Object Programming Martin Rinehart JavaScript Object Programming Copyright 2015 by Martin Rinehart This work is subject to copyright. All rights are reserved by the Publisher, whether the whole

More information

Digital Illustration Fundamentals

Digital Illustration Fundamentals Wallace Jackson Digital Illustration Fundamentals Vector, Raster, WaveForm, NewMedia with DICF, DAEF and ASNMF 1st ed. 2015 Wallace Jackson Lompoc, California, USA ISBN 978-1-4842-1696-5 e-isbn 978-1-4842-1697-2

More information

Java I/O, NIO and NIO.2

Java I/O, NIO and NIO.2 Java I/O, NIO and NIO.2 Jeff Friesen Java I/O, NIO and NIO.2 Copyright 2015 by Jeff Friesen This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the

More information

SQL on Big Data. Technology, Architecture, and Innovation. Sumit Pal

SQL on Big Data. Technology, Architecture, and Innovation. Sumit Pal SQL on Big Data Technology, Architecture, and Innovation Sumit Pal SQL on Big Data: Technology, Architecture, and Innovation Sumit Pal Wilmington, Massachusetts, USA ISBN-13 (pbk): 978-1-4842-2246-1 ISBN-13

More information

S Cove pring Bootrs Pivotal Certified Spring Enterprise Integration Specialist Exam SOURCE CODE ONLINE

S Cove pring Bootrs Pivotal Certified Spring Enterprise Integration Specialist Exam SOURCE CODE ONLINE Covers Spring Boot Pivotal Certified Spring Enterprise Integration Specialist Exam A Study Guide Lubos Krnac Pivotal Certified Spring Enterprise Integration Specialist Exam Copyright 2015 by Lubos Krnac

More information

Visual Studio Condensed. Patrick Desjardins

Visual Studio Condensed. Patrick Desjardins Visual Studio Condensed Patrick Desjardins Visual Studio Condensed Copyright 2014 by Patrick Desjardins This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or

More information

Pro ASP.NET MVC 5. Adam Freeman

Pro ASP.NET MVC 5. Adam Freeman Pro ASP.NET MVC 5 Adam Freeman Pro ASP.NET MVC 5 Copyright 2013 by Adam Freeman This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material is

More information

Pivotal Certified Professional Spring Developer Exam

Pivotal Certified Professional Spring Developer Exam Pivotal Certified Professional Spring Developer Exam A Study Guide Iuliana Cosmina Pivotal Certified Spring Web Application Developer Exam Iuliana Cosmina Sibiu, Romania ISBN-13 (pbk): 978-1-4842-0812-0

More information

Deploying Raspberry Pi in the Classroom

Deploying Raspberry Pi in the Classroom Deploying Raspberry Pi in the Classroom Guy Hart-Davis Deploying Raspberry Pi in the Classroom Guy Hart-Davis County Durham, United Kingdom ISBN-13 (pbk): 978-1-4842-2303-1 ISBN-13 (electronic): 978-1-4842-2304-8

More information

Understanding Oracle APEX 5 Application Development

Understanding Oracle APEX 5 Application Development Understanding Oracle APEX 5 Application Development Second Edition Edward Sciore Understanding Oracle APEX 5 Application Development Copyright 2015 by Edward Sciore This work is subject to copyright. All

More information

Essentials of Administering Team Foundation Server 2015

Essentials of Administering Team Foundation Server 2015 Essentials of Administering Team Foundation Server 2015 Using TFS 2015 to accelerate your software development Gary Gauvin Essentials of Administering Team Foundation Server 2015 Using TFS 2015 to Accelerate

More information

ASP.NET MVC with Entity Framework and CSS. Lee Naylor

ASP.NET MVC with Entity Framework and CSS. Lee Naylor ASP.NET MVC with Entity Framework and CSS Lee Naylor ASP.NET MVC with Entity Framework and CSS Lee Naylor ASP.NET MVC with Entity Framework and CSS Lee Naylor Newton-le-Willows, Merseyside United Kingdom

More information

Beginning Oracle Application Express 5

Beginning Oracle Application Express 5 Beginning Oracle Application Express 5 Doug Gault Beginning Oracle Application Express 5 Copyright 2015 by Doug Gault This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

HTML5 Programmer s Reference

HTML5 Programmer s Reference HTML5 Programmer s Reference Jonathan Reid HTML5 Programmer s Reference Copyright 2015 by Jonathan Reid This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or

More information

Interactive Object Oriented Programming in Java

Interactive Object Oriented Programming in Java Interactive Object Oriented Programming in Java Learn and Test Your Skills Vaskaran Sarcar Interactive Object Oriented Programming in Java: Learn and Test Your Skills Vaskaran Sarcar Bangalore, Karnataka,

More information

Pro HTML5 with Visual Studio 2015

Pro HTML5 with Visual Studio 2015 Pro HTML5 with Visual Studio 2015 Mark J. Collins Pro HTML5 with Visual Studio 2015 Copyright 2015 by Mark J. Collins This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Beginning Apache Pig. Big Data Processing Made Easy. Balaswamy Vaddeman

Beginning Apache Pig. Big Data Processing Made Easy. Balaswamy Vaddeman Beginning Apache Pig Big Data Processing Made Easy Balaswamy Vaddeman Beginning Apache Pig: Big Data Processing Made Easy Balaswamy Vaddeman Hyderabad, Andhra Pradesh, India ISBN-13 (pbk): 978-1-4842-2336-9

More information

Guide to OSI and TCP/IP Models

Guide to OSI and TCP/IP Models SPRINGER BRIEFS IN COMPUTER SCIENCE Mohammed M. Alani Guide to OSI and TCP/IP Models SpringerBriefs in Computer Science Series editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi

More information

Peter A Carter. Pro SQL Server Administration

Peter A Carter. Pro SQL Server Administration Peter A Carter Pro SQL Server Administration Pro SQL Server Administration Copyright 2015 by Peter A Carter This work is subject to copyright. All rights are reserved by the Publisher, whether the whole

More information

Research on Industrial Security Theory

Research on Industrial Security Theory Research on Industrial Security Theory Menggang Li Research on Industrial Security Theory Menggang Li China Centre for Industrial Security Research Beijing, People s Republic of China ISBN 978-3-642-36951-3

More information

Practical Linux Infrastructure. Syed Ali

Practical Linux Infrastructure. Syed Ali Practical Linux Infrastructure Syed Ali Practical Linux Infrastructure Copyright 2015 by Syed Ali This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part

More information

Companion ebook Available Pro Android Includes Android 1.5 SOURCE CODE ONLINE US $44.99

Companion ebook Available Pro Android Includes Android 1.5 SOURCE CODE ONLINE US $44.99 The EXPERT s VOIce in Open Source Pro Android Covers Google s Android Platform and its fundamental APIs, from basic concepts such as Android resources, intents, and content providers to advanced topics

More information

Pro ASP.NET SignalR. Real-Time Communication in.net with SignalR 2.1. Keyvan Nayyeri Darren White

Pro ASP.NET SignalR. Real-Time Communication in.net with SignalR 2.1. Keyvan Nayyeri Darren White Pro ASP.NET SignalR Real-Time Communication in.net with SignalR 2.1 Keyvan Nayyeri Darren White Pro ASP.NET SignalR: Real-Time Communication in.net with SignalR 2.1 Copyright 2014 by Keyvan Nayyeri and

More information

ITIL 2011 At a Glance. John O. Long

ITIL 2011 At a Glance. John O. Long ITIL 2011 At a Glance John O. Long SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin Shen Borko Furht VS

More information

Introducing SQL Server

Introducing SQL Server Introducing SQL Server Mike McQuillan Introducing SQL Server Copyright 2015 by Mike McQuillan This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the

More information

Carlo Scarioni. Pro Spring Security

Carlo Scarioni. Pro Spring Security Carlo Scarioni Pro Spring Security Pro Spring Security Copyright 2013 by Carlo Scarioni This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the material

More information

Beginning Apache Cassandra Development. Vivek Mishra

Beginning Apache Cassandra Development. Vivek Mishra Beginning Apache Cassandra Development Vivek Mishra Beginning Apache Cassandra Development Copyright 2014 by Vivek Mishra This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Network Programming with Go

Network Programming with Go Network Programming with Go Essential Skills for Using and Securing Networks Jan Newmarch Network Programming with Go: Essential Skills for Using and Securing Networks Jan Newmarch Oakleigh, Victoria Australia

More information

Source Code Analytics With Roslyn and JavaScript Data Visualization

Source Code Analytics With Roslyn and JavaScript Data Visualization Source Code Analytics With Roslyn and JavaScript Data Visualization Sudipta Mukherjee Foreword by Dr. Darius Blasband Source Code Analytics With Roslyn and JavaScript Data Visualization Sudipta Mukherjee

More information

Build ios Database Apps with Swift and SQLite

Build ios Database Apps with Swift and SQLite Build ios Database Apps with Swift and SQLite Kevin Languedoc Build ios Database Apps with Swift and SQLite Kevin Languedoc Montreal Canada ISBN-13 (pbk): 978-1-4842-2231-7 ISBN-13 (electronic): 978-1-4842-2232-4

More information

Beginning SQL Server R Services

Beginning SQL Server R Services Beginning SQL Server R Services Analytics for Data Scientists Bradley Beard Beginning SQL Server R Services: Analytics for Data Scientists Bradley Beard Palm Bay, Florida USA ISBN-13 (pbk): 978-1-4842-2297-3

More information

Pro SharePoint 2013 Administration Rob Garrett

Pro SharePoint 2013 Administration Rob Garrett Pro SharePoint 2013 Administration Rob Garrett Apress Pro SharePoint 2013 Administration Copyright 2013 by Rob Garrett This work is subject to copyright. All rights are reserved by the Publisher, whether

More information

Android Fragments. Dave MacLean Satya Komatineni

Android Fragments. Dave MacLean Satya Komatineni Android Fragments Dave MacLean Satya Komatineni Android Fragments Copyright 2014 by Dave MacLean, Satya Komatineni This work is subject to copyright. All rights are reserved by the Publisher, whether the

More information

The Definitive Guide to Grails 2

The Definitive Guide to Grails 2 The Definitive Guide to Grails 2 Jeff Scott Brown Graeme Rocher Apress The Definitive Guide to Grails 2 Copyright 2013 by Jeff Scott Brown and Graeme Rocher This work is subject to copyright. All rights

More information

Reactive Programming with Angular and ngrx

Reactive Programming with Angular and ngrx Reactive Programming with Angular and ngrx Learn to Harness the Power of Reactive Programming with RxJS and ngrx Extensions Oren Farhi Reactive Programming with Angular and ngrx: Learn to Harness the Power

More information

Expert C# 5.0 with.net 4.5 Framework

Expert C# 5.0 with.net 4.5 Framework Expert C# 5.0 with.net 4.5 Framework Mohammad Rahman Apress Expert C# 5.0: with.net 4.5 Framework Copyright 2013 by Mohammad Rahman This work is subject to copyright. All rights are reserved by the Publisher,

More information

George Grätzer. Practical L A TEX

George Grätzer. Practical L A TEX Practical L A TEX George Grätzer Practical L A TEX 123 George Grätzer Toronto, ON, Canada Additional material to this book can be downloaded from http://extras.springer.com ISBN 978-3-319-06424-6 ISBN

More information

SpringerBriefs in Computer Science

SpringerBriefs in Computer Science SpringerBriefs in Computer Science Series Editors Stan Zdonik Peng Ning Shashi Shekhar Jonathan Katz Xindong Wu Lakhmi C. Jain David Padua Xuemin (Sherman) Shen Borko Furht V.S. Subrahmanian Martial Hebert

More information

Real World Windows 10 Development

Real World Windows 10 Development Real World Windows 10 Development Second Edition Edward Moemeka Elizabeth Moemeka Real World Windows 10 Development Copyright 2015 by Edward Moemeka and Elizabeth Moemeka This work is subject to copyright.

More information

Pro.NET 4 Parallel Programming in C#

Pro.NET 4 Parallel Programming in C# Pro.NET 4 Parallel Programming in C# Adam Freeman Pro.NET 4 Parallel Programming in C# Copyright 2010 by Adam Freeman All rights reserved. No part of this work may be reproduced or transmitted in any form

More information

Pro Android C++ with the NDK

Pro Android C++ with the NDK Pro Android C++ with the NDK Onur Cinar Apress Pro Android C++ with the NDK Copyright 2012 by Onur Cinar This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or

More information

Oracle Solaris and Veritas Cluster

Oracle Solaris and Veritas Cluster Oracle Solaris and Veritas Cluster An Easy-build Guide Vijay Shankar Upreti Oracle Solaris and Veritas Cluster: An Easy-build Guide Copyright 2016 by Vijay Shankar Upreti This work is subject to copyright.

More information