O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Socket.IO Solutions

Video Description

Create real-time JavaScript applications using the robust Socket.IO framework

About This Video

  • Create secure WebSocket connections and real-time mobile applications using Socket.IO

  • Devise efficient messaging systems between the server side and the client side.

  • A step-by-step implementation guide to help you create elements of Socket.IO application

  • In Detail

    Socket.IO is a JavaScript library that provides you with the ability to implement real-time analytics, binary streaming, instant messaging, and document collaboration. It has two parts: a client-side library that runs in the browser, and a server-side library for node.js. Socket.IO is event-driven and primarily uses the WebSocket protocol that allows us to emit data bi-directionally from the server and the client. Socket.IO

    This video course is a complete resource, covering topics from WebSocket security to scaling the server-side of a Socket.IO application and everything in between.

    This video course will provide real-world examples of how secure bi-directional, full-duplex connections that can be created using Socket.IO for different environments. It will also explain how the connection vulnerabilities can be resolved for large numbers of users and huge amounts of data/messages.

    By the end of the course, you will be a competent Socket.IO developer. With the help of the examples and real-world solutions, you will learn to create fast, scalable, and dynamic real-time apps by creating efficient messaging systems between the server side and the client side using Socket.IO.

    Table of Contents

    1. Chapter 1 : Wiring It Up
      1. The Course Overview 00:03:37
      2. Creating a Node HTTP Server with Socket.IO 00:05:35
      3. Creating an Express Server with Socket.IO 00:03:28
      4. Using Socket.IO as a Cross-browser WebSocket 00:03:29
      5. Debugging Our Code 00:06:01
    2. Chapter 2 : Creating Real-Time Dashboards
      1. Loading Static Data from the Server 00:04:35
      2. Creating a Server-Side Clock 00:02:11
      3. Loading Data from MongoDB 00:03:29
      4. Let’s Go Real-Time! 00:05:01
    3. Chapter 3 : Having Two-Way Conversations
      1. Creating a Simple Chat Room 00:04:18
      2. Managing the Socket Life Cycle 00:02:58
      3. Emitting a Private Message to Another Socket 00:02:58
      4. Sending Messages to All Sockets Except the Sender 00:01:45
      5. Building a Multiplayer Tic-Tac-Toe Game 00:03:20
    4. Chapter 4 : Building a Room with a View
      1. Creating Chat Channels with Namespaces 00:03:21
      2. Joining Rooms 00:02:36
      3. Leaving Rooms 00:02:40
      4. Listing Rooms the Socket Is In 00:02:29
      5. Making Private Rooms 00:03:44
      6. Setting Up a Default Room 00:02:52
    5. Chapter 5 : Securing Your Data
      1. Implementing Basic Authentication 00:04:38
      2. Doing Token-Based Authentication 00:03:47
      3. Handling Server-Side Validation 00:04:18
      4. Locking Down the HTTP Referrer 00:03:07
      5. Using Secure Web-Sockets 00:03:36
    6. Chapter 6 : Performing a Load Balancing Act
      1. Performing Load Balancing with the Nginx Server 00:04:04
      2. Using Node.JS Cluster 00:03:01
      3. Using Redis to Pass Events Between Nodes 00:05:38
      4. Using Memcache to Manage Multiple Nodes 00:04:37
      5. Using RabbitMQ to Message Events across Nodes 00:04:28
    7. Chapter 7 : Streaming Binary Data
      1. Broadcasting an Image to Other Sockets 00:03:52
      2. Uploading an Image to the Filesystem 00:02:07
      3. Uploading an Image to Amazon S3 00:04:09
      4. Streaming Audio 00:03:18
      5. Streaming Live Video 00:02:48
    8. Chapter 8 : Integrating with Mobile Applications
      1. Throwing an Alert When the Socket Connects 00:05:03
      2. Responding to Tap Events from the Device 00:03:17
      3. Performing Server-Side Pagination 00:02:54
      4. Triggering Hot Deploys 00:03:15