Over 60 high-quality recipes covering debugging, security, performance, microservices, web frameworks, databases, deployment and more; rewritten for Node 4, 6, and 8.
Key Features
- Actionable recipes across the full spectrum of Node.js development
- Cutting edge techniques and tools for measuring and improving performance
- Best practices for creating readily-scalable production systems
Book Description
Today's web demands efficient real-time applications and scalability. Asynchronous event-driven programming is ideal for this, and this is where Node.js comes in. Server-side JavaScript has been here since the 90s, but Node got it right.
With Node for tooling and server-side logic, and a browser-based client-side UI, everything is JavaScript. This leads to rapid, fluid development cycles. The full-stack, single language experience means less context-switching between languages for developers, architects and whole teams.
This book shows you how to build fast, efficient, and scalable client-server solutions using the latest versions of Node.
The book begins with debugging tips and tricks of the trade, and how to write your own modules. Then you'll learn the fundamentals of streams in Node.js, discover I/O control, and how to implement the different web protocols.
You'll find recipes for integrating databases such as MongoDB, MySQL/MariaDB, Postgres, Redis, and LevelDB. We also cover the options for building web application with Express, Hapi and Koa.
You will then learn about security essentials in Node.js and advanced optimization tools and techniques.
By the end of the book you will have acquired the level of expertise to build production-ready and scalable Node.js systems.
The techniques and skills you will learn in this book are based on the best practices developed by nearForm, one of the leaders in Node implementations, who supported the work of the authors on this book.
What you will learn
- Debug Node.js programs
- Write and publish your own Node.js modules
- Detailed coverage of Node.js core API's
- Use web frameworks such as Express, Hapi and Koa for accelerated web application development
- Apply Node.js streams for low-footprint data processing
- Fast-track performance knowledge and optimization abilities
- Persistence strategies, including database integrations with MongoDB, MySQL/MariaDB, Postgres, Redis, and LevelDB
- Apply critical, essential security concepts
- Use Node with best-of-breed deployment technologies: Docker, Kubernetes and AWS
Table of Contents
- Debugging process
- Writing Modules
- Coordinating I/O
- Using Streams
- Wielding Web Protocols
- Persisting to Databases
- Working with Web Frameworks
- Dealing with Security
- Optimizing Performance
- Building Microservice Systems
- Deploying Node.js
David Mark Clements is a web entrepreneur residing in Northern Ireland. From a very early age he was fascinated with programming and computers. He first learned BASIC on one of the many Atari's he had accumulated by the age of nine. David learned JavaScript at the age of 12, moving into Linux administration and PHP as a teenager. Now (as a twenty-something) he uses his technical skills in business, providing a variety of services ranging from tailored websites, to complete online strategies, to implementing custom warehouse logistics integrated with ecommerce solutions. Node has become a prominent member of his toolkit due to its versatility and powerful interfacing abilities. When he's not tinkering with computers, he's working in a homeless hostel, playing bass with Living Rivers worship team, or spending time with the love of his life, Maxine, and her Husky-Spitz cross, Jessi.