Mastering Node.js: Build robust and scalable real-time server-side web applications efficiently

Передня обкладинка
Packt Publishing Ltd, 29 груд. 2017 р. - 498 стор.

Expert techniques for building fast servers and scalable, real-time network applications with minimal effort; rewritten for Node.js 8 and Node.js 9

About This Book
  • Packed with practical examples and explanations, Mastering Node.js contains everything you need to take your applications to the next level.
  • Unleash the full potential of Node.js 9 to build real-time and scalable applications.
  • Gain in-depth knowledge of asynchronous programming, event loops, and parallel data processing.
  • Explore Node's innovative event-non-blocking design, and build professional applications with the help of detailed examples.
Who This Book Is For

This book is targeted at JavaScript developers who want to take an in-depth look at the latest Node.js framework to create faster, scalable, real-time backend applications. Basic JavaScript programming knowledge—and also some previous Node.js development experience—are mandatory to get the best out of this book

What You Will Learn
  • Build an Electron desktop app using Node that manages a filesystem
  • Explore Streams and understand how they apply to building networked services
  • Develop and deploy an SMS-driven customer service application
  • Use WebSockets for rapid bi-directional communication
  • Construct serverless applications with Amazon Lambda
  • Test and debug with headless browsers, CPU profiling, Mocha, Sinon, and more
  • Scale applications vertically and horizontally across multiple cores and web services
In Detail

Node.js, a modern development environment that enables developers to write server- and client-side code with JavaScript, thus becoming a popular choice among developers.

This book covers the features of Node that are especially helpful to developers creating highly concurrent real-time applications. It takes you on a tour of Node's innovative event non-blocking design, showing you how to build professional applications. This edition has been updated to cover the latest features of Node 9 and ES6. All code examples and demo applications have been completely rewritten using the latest techniques, introducing Promises, functional programming, async/await, and other cutting-edge patterns for writing JavaScript code. Learn how to use microservices to simplify the design and composition of distributed systems. From building serverless cloud functions to native C++ plugins, from chatbots to massively scalable SMS-driven applications, you'll be prepared for building the next generation of distributed software.

By the end of this book, you'll be building better Node applications more quickly, with less code and more power, and know how to run them at scale in production environments.

Style and approach

Mastering Node.js contains all of the examples and explanations you'll need to build applications in a short amount of time and at a low cost, running rapidly and at scale.

 

Відгуки відвідувачів - Написати рецензію

Не знайдено жодних рецензій.

Зміст

Preface
1
Understanding the Node Environment
9
Understanding Asynchronous EventDriven Programming
45
Streaming Data Across Nodes and Clients
89
Using Node to Access the Filesystem
127
Managing Many Simultaneous Client Connections
173
Creating RealTime Applications
200
Using Multiple Processes
236
Scaling Your Application
275
Microservices
339
Testing Your Application
380
Organizing Your Work into Modules
426
Creating Your Own C++ Addons
447
Index
466
Авторські права

Інші видання - Показати все

Загальні терміни та фрази

Про автора (2017)

Sandro Pasquali formed a technology company named Simple in 1997, that sold the world's first JavaScript-based application development framework and was awarded several patents for deployment and advertising technologies that anticipated the future of Internet-based software. Node represents, for him, the natural next step in the inexorable march towards the day when JavaScript powers nearly every level of software development. Sandro has led the design of enterprise-grade applications for some of the largest companies in the world, including Nintendo, Major League Baseball, Bang and Olufsen, LimeWire, AppNexus, Conde Nast, and others. He has displayed interactive media exhibits during the Venice Biennial, won design awards, built knowledge management tools for research institutes and schools, and started and run several start-ups. Always seeking new ways to blend design excellence and technical innovation, he has made significant contributions across all levels of software architecture, from data management and storage tools to innovative user interfaces and frameworks. He is the author of Deploying Node.js, also by Packt Publishing, which aims to help developers get their work in front of others. Sandro runs a software development company in New York and trains corporate development teams interested in using Node and JavaScript to improve their products. He spends the rest of his time entertaining his beautiful daughter, and his wife.

Kevin Faaborg is a professional software developer and avid software hobbyist. At Harvard, he learned C programming from visiting professor Brian Kernighan. He witnessed and contributed to how digital technology has shaped music distribution, working first at MTV Networks, then Lime Wire LLC, and now Spotify AB, where he designed and started the patent program. Kevin travels frequently, spending time each year in San Francisco, Colorado, NYC, and Stockholm. Follow him at github/zootella

Бібліографічна інформація