Giter VIP home page Giter VIP logo

rabbitchat's Introduction

RabbitChat


RabbitChat - A simple web based chat sytem based on RabbitMQ + Tornado + Websocket.

Copyright (C) 2011, Haridas N [email protected]

Check RabbitChat/LICENSE file for full Copyright notice.


Introduction:-

A simple web based chat system developed by using RabbitMQ + Tornado + Websocket + Pika.

I commited two versions of this chat system, the difference is with the creation of RabbitMQ channel and connection.

In the first version(master branch) we create rabbitMQ connection and channel for each incomming websocket connection. So we do this in the Websocket handler of Tornado application.

In the latest one (The Branch RabbitChat-new) I used RabbitMQ more effectively by controlling the RabbitMQ channle andconnection creation, so according to this the latest version it use one connection and one channel for every websocket request. ie; we reusing the RabbitMQ connection and channels.

In order to test this application you need following packages :

  1. Tornado - Python High performence async webserver.
  2. Pika - RabbitMQ client that support Tornado IOLoop.
  3. Websocket-js - Browser JS package to support websocket API
  4. Also you should run a RabbitMQ broker in your system.

To install python packages :-

  1. To install Tornado use this command: "easy_install tornado" ,

  2. Simillerly, easy_install pika,

  3. To know more about the Websocket browser implementation, get a copy from https://github.com/stdva/web-socket-js

HOW to RUN

Enter in to tornado application folder and run the python script:

>cd tornado_app

>python rabbit_chat.py

Take this URL http://localhost:8888/chat on your browser(Chrome or Firefox 4, the browser should support websocket.)

Enjoy ...:)

rabbitchat's People

Contributors

haridas avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.