What's Behind AVChat IM?


AVChat IM is powered by the world's best technology for the job. We've looked at many solutions during our initial research and we've remained with Rackspace hosting, Erlang programming, Influxis media servers and some Flash Player goodness for video.

Erlang (programming language)

erlang logo

Erlang is a programming language initially developed at Ericsson used to build massively scalable software real-time systems with requirements on high availability. Some of its uses are in telecoms, banking, e-commerce, computer telephony and instant messaging.

Facebook uses Erlang to power its site wide IM system.

One of the coolest features of Erlang is It supports hot swapping, so that code can be changed without stopping a system.

Alternatives: none

Memcached

memcached logo

Memcached is used by Facebook to reduce the response time for every data request from 4ms to 0.5ms and reduce load on the database servers. We use it for the same purposes.

Most of the data used by IM changes rarely (statuses, location change maybe a few times a day, usernames and age change maybe once a year) compared to the number of requests that are made for that specific data (a popular user would get thousands and tens of thousands of views /day) so we can keep it directly in the RAM memory from where it can be accessed very fast without overhead.

Alternatives: none

Rackspace (cloud servers and services)

rackspace logo

With their cloud infrastructure in both US and UK Rackspace has made it easy for us to deploy new servers in minutes wherever they are needed. Combined with their fanatical support it has become the prime choice for our server needs.

Alternatives: Amazon EC2, Firehost

Influxis (media server)

influxis logo

Influxis.com have been the pioneers of Flash Media Server hosting since the Macromedia days. We have had good long relationship with them back at AVChat Software while building video related software for every corner of the internet. Overtime we've probably managed hundreds of Influxis accounts.

After offering a p2p hosting service back in 2011 they have been the natural choice for handling the p2p video streams in AVChat IM.

Alternatives: Amazon EC2 instance with FMES on it, FMES ($45.000).

Flash Player 11

flash player logo

HTML5 might be on everyone's tongue right now but Flash Player still is light years ahead. FP11 allows us to capture the video data from a webcam and encode it using the h.264 codec (yes, the same very efficient codec used to encode your Blu-ray movies and HDTV signal) and send it directly (peer 2 peer) to another person across the globe with minimum latency.

Alternatives: none