Books: 6


Solve practical real-world problems using JavaScript and Node.js
KEY FEATURES * Learn the concepts of Node.js to gain a high-level understanding of the Node.js execution model * Build an interactive web application with MongoDB and Redis and create your own JavaScript modules that work both on the client side and server side * Familiarize yourself with the new more » features of Node.js and JavaScript with this exclusive step-by-step guide BOOK DESCRIPTION Node.js is an open source, cross-platform runtime environment that allows you to use JavaScript to develop server-side web applications. This short guide will help you develop applications using JavaScript and Node.js, leverage your existing programming skills from .NET or Java, and make the most of these other platforms through understanding the Node.js programming model. You will learn how to build web applications and APIs in Node, discover packages in the Node.js ecosystem, test and deploy your Node.js code, and more. Finally, you will discover how to integrate Node.js and .NET code. WHAT YOU WILL LEARN * Understand which problems Node.js best solves * Write idiomatic JavaScript and Node.js code * Build web applications and command-line tools * Minimise complexity and efficiently solve difficult problems * Test and deploy Node.js applications * Work with persistent data * Implement real-time client-server applications * Integrate .NET and Node.js code ABOUT THE AUTHOR Harry Cummings has been working in software development for 8 years, and for the past few years, he has performed the role of technical lead across a variety of projects for varied clients. He has, in the past, also worked as a developer, project manager, and consultant. This gives him an excellent all-round view of the role of a technical lead and its relationship with other roles as well as insight into every stage of project delivery, from initial analysis to long-term maintenance. Harry has extensive experience in C#/.NET, Java and Scala, and JavaScript/Node.js. He continues to work directly with these technologies on a regular basis in the teams that he leads. His broader interests and expertise lie in sharing and nurturing software development best practices through training and mentoring. He has appeared at conferences such as NDC London and SDD Conf, speaking about diverse topics, ranging from introductory Node.js through to automated test strategies and long-term project maintainability. TABLE OF CONTENTS 1. Why Node.js? 2. Getting Started with Node.js 3. A JavaScript Primer 4. Introducing Node.js Modules 5. Creating Dynamic Websites 6. Testing Node.js Applications 7. Setting up an Automated Build 8. Mastering Asynchronicity 9. Persisting Data 10. Creating Real-time Web Apps 11. Deploying Node.js Applications 12. Authentication in Node.js 13. Creating JavaScript Packages 14. Node.js and Beyond « less
Harness the power of Redis to integrate and manage your projects efficiently
***** About This Book ***** * Learn how to use Redis's data types efficiently to manage large data sets * Scale Redis to multiple servers with Twemproxy, Redis Sentinel, and Redis Cluster * A fast-paced guide, full of real-world examples to help you get the best out of the features offered by Redis ***** more » Who This Book Is For ***** If you are a competent developer with experience of working with data structure servers and want to boost your project's performance by learning about features of Redis, then this book is for you. ***** What You Will Learn ***** * Build analytics applications using Bitmaps and Hyperloglogs * Enhance scalability with Twemproxy, Redis Sentinel, and Redis Cluster * Build a Time Series implementation in Node.js and Redis * Create your own Redis commands by extending Redis with Lua * Get to know security techniques to protect your data (SSL encryption, firewall rules, basic authorization) * Persist data to disk and learn the trade-offs of AOF and RDB * Understand how to use Node.js, PHP, Python, and Ruby clients for Redis * Avoid common pitfalls when designing your next solution ***** In Detail ***** Redis is the most popular in-memory key-value data store. It's very lightweight and its data types give it an edge over the other competitors. If you need an in-memory database or a high-performance cache system that is simple to use and highly scalable, Redis is what you need. Redis Essentials is a fast-paced guide that teaches the fundamentals on data types, explains how to manage data through commands, and shares experiences from big players in the industry. We start off by explaining the basics of Redis followed by the various data types such as Strings, hashes, lists, and more. Next, Common pitfalls for various scenarios are described, followed by solutions to ensure you do not fall into common traps. After this, major differences between client implementations in PHP, Python, and Ruby are presented. Next, you will learn how to extend Redis with Lua, get to know security techniques such as basic authorization, firewall rules, and SSL encryption, and discover how to use Twemproxy, Redis Sentinel, and Redis Cluster to scale infrastructures horizontally. At the end of this book, you will be able to utilize all the essential features of Redis to optimize your project's performance. ***** Style and approach ***** A practical guide that offers the foundation upon which you can begin to understand the capabilities of Redis using a step-by-step approach. This book is full of real-world problems and in-depth knowledge of the concepts and features of Redis, with plenty of examples. « less
Develop customized, scalable web apps through the integration of powerful Node.js frameworks
Node.js is a JavaScript runtime-based, scalable platform used to develop web applications and network programs on the server side. It allows web designers to access the backend of their projects while also allowing developers, who are willing to learn JavaScript, a chance to design. There are many frameworks more » that have popped up in recent years, but what makes Node.js unique is that it opens up a whole new frontier for web development and takes a hybrid approach. This book will help you get to grips with Node.js and implement the knowledge to build efficient web applications. You start with developing a backend web application followed by a frontend interface, and later on deploy it to the cloud platform. This book takes a holistic approach to server-side programming using Node.js in conjunction with different frameworks and tools. ***** Who This Book Is For ***** If the phrase scalability sounds alien to you, then this is an ideal book for you. You will not need much Node.js experience as each framework is demonstrated in a way that requires no previous knowledge of the framework. You will be building scalable Node.js applications in no time! Knowledge of JavaScript is required. « less
Your guide to building professional real-world web applications with Express
For experienced JavaScript developers this book is all you need to build highly scalable, robust applications using Express. It takes you step by step through the development of a single page application so you learn empirically. Overview * Learn how to build scalable, robust, and reliable web more » applications with Express using a test-first, feature-driven approach * Full of practical tips and real world examples, and delivered in an easy-to-read format * Explore and tackle the issues you encounter in commercially developing and deploying an Express application In Detail Building an Express application that is reliable, robust, maintainable, testable, and can scale beyond a single server requires a bit of extra thought and effort. Express applications that need to survive in a production environment will need to reach out to the Node ecosystem and beyond, for support. You will start by laying the foundations of your software development journey, as you drive-out features under test. You will move on quickly to expand on your existing knowledge, learning how to create a web API and a consuming client. You will then introduce a real-time element in your application. Following on from this, you will begin a process of incrementally improving your application and tackle security, SSL support, and security vulnerabilities. Next, the book will take you through the process of scaling and then decoupling your application. Finally, you will take a look at various methods to improve your application's performance and reliability. What you will learn from this book * Develop a feature driven Express web application * Build and consume a RESTful web API using client and server side templating * Secure and protect Express with passport authentication and SSL via stud * Scale Express beyond a single server with Redis and Hipache * Decouple Express for improved scalability and maintainability * Support real-time application development with Socket.IO * Handle failures with a minimum impact to service availability using clusters and domains * Understand and cope with Express limitations, including when and where to go for help Approach A practical book, guiding the reader through the development of a single page application using a feature-driven approach. Who this book is written for If you are an experienced JavaScript developer who wants to build highly scalable, real-world applications using Express, this book is ideal for you. This book is an advanced title and assumes that the reader has some experience with Node.js, JavaScript MVC web development frameworks, and has heard of Express before, or is familiar with it. You should also have a basic understanding of Redis and MongoDB. « less
I spent 3 years scaling Twitpic to over 60 million visitors and 20 billion HTTP Requests. I'm sharing everything I've learnt in this ebook so you can skip over the trial-and-error and head straight to the techniques. Covers the entire stack- Nginx, MySQL, Redis In-Depth MySQL Tuning We discuss more » each parameter, why it exists, and how to tune it. Nginx and PHP-FPM Move away from Apache and learn how to tune Nginx/PHP-FPM. Redis and Memcached We discuss scaling sessions, Russian Doll Caching, and the "dogpile". Result-proven techniques This content doesn't exist anywhere else When I set out to write Scaling PHP Apps, my goal was to write about topics that didn't really exist anywhere else. This isn't regurgitated documentation- it's real life scaling techniques, mixed with case studies and in-depth exploration. Make no mistake, this is a highly technical book, and you should already be comfortable with PHP. If you've ever researched scaling, you know nothing like this book really exists anywhere else. It's an important book that'll save you hours of research and testing. Readers have told me it's blown their expectations away and that they've implemented hundreds of tidbits into their stack. This book is filled with 150-pages of real-life, practical content. Changes that you can implement today! * Settle the Persistent Connection debate (with benchmarks) * Detailed explination of each important MySQL Setting * Understand exactly how NUMA impacts MySQL * Why you should scrap Apache and mod_php * Bugs in Memcached you've never heard about * How DNS lookups can crash your whole application * Clever uses of Redis for stats and performance * How to debug PHP with strace and xhprof * Ways to benchmark MySQL, HAProxy, Nginx, and PHP « less
Practical Techniques for Fast Data Manipulation
Two years since its initial release, Redis already has an impressive list of adopters, including Engine Yard, GitHub, Craigslist, and Digg. This open source data structure server is built for speed and flexibility, making it ideal for many applications. If you're using Redis, or considering it, this more » concise cookbook provides recipes for a variety of issues you're likely to face. Each recipe solves a specific problem, and provides an in-depth discussion of how the solution works. You'll discover that Redis, while simple in nature, offers extensive functionality for manipulating and storing data. « less