Caloris is a part of Mercury project. The simple and fast(asynchronous) Win32 C++ library for Socket.IO or websocket server.
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
Caloris
CalorisTester
ChatServer
Include
Lib/JSONCPP
PubImage
.gitattributes
.gitignore
ReadMe.md

ReadMe.md

Caloris

What is Caloris?

Caloris is a simple Win32 client library for Socket.IO, without Boost::Asio. Boost::Asio is most powerful library, but Asio's IOCP model have too many thread on client side. So, Caloris select WSAEventSelect model.

Websocket protocol

Socket.IO is a module of node.js that base on RFC6455, but modified. I was analyzed Socket.IO's TCP packet and write packet code on C/C++. See more http://rhea.pe.kr/515.

Socket.IO protocol

WSAEventSelect

Caloris's socket model is WSAEventSelect. This is an asynchronous I/O and very fast. I like WSAEventSelect on client side. See more [http://msdn.microsoft.com/en-us/library/windows/desktop/ms741576(v=vs.85).aspx](http://msdn.microsoft.com/en-us/library/windows/desktop/ms741576(v=vs.85).

Why Caloris?

I am developing an MMORPG. When I need community module, I select the Socket.IO. But there is not Socket.IO's C++ client that make write Caloris.

Enjoy WebScoket: node.js + Socket.IO + Caloris

To be continued...