Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Are there any realtime pusher type services that use pure websocket for the server backend?

I am interested in developing a multiplayer game with Pharo Smalltalk as a server backend, and amber smalltalk + an html5 gaming library for the web client frontend.

Pharo smalltalk has websocket support, and I have experimented with making a game with it. It was working fine, however I would rather use one of these pusher services so that I can easily scale to many users.

What I need, (I think) is a websocket interface (from my backend server) to one of these pusher services. I would use the firebase REST api, but it seems a little weird that I would have to revert back to constantly polling from my server to the firebase servers, instead of simply subscribing via websocket to their service and getting updates without polling.

I noticed that many of these services have a socket.io implementation, so that you can connect your backend server to them via socket.io. Unfortunately, pharo smalltalk does not have socket.io implemented and has no way of using it that I know of.

If I can't find a solution to continue using pharo smalltalk on the server backend with one of these pusher services, I will look into the other possibility, which is load balancing my pharo smalltalk images and backend servers.

like image 719
zenchess Avatar asked Feb 16 '13 01:02

zenchess


1 Answers

AFAIK, you shouldn't need to use something like socket.io library in pharo, because threads in pharo are non blocking. This has been discussed before here: http://forum.world.st/socket-io-td3891592.html#a3893031 The idea is that you can use websockets and regular pharo to accomplish same task.

(If you want an abstraction layer, then no, there is nothing already prepared, but you can easily do your own)

like image 58
EstebanLM Avatar answered Oct 01 '22 18:10

EstebanLM