Hi Evan, I have been experimenting with ActionHeroJS and I love it! I am fighting my co-workers and trying to win them over to use ActionHeroJS in production. With that said here is where I am stuck.
Pretty much I need thousands of clients (a little over 1 million during peak time) be able to maintain a persistent connection to my api to deliver information back and forth between the clients and the server.
I want persistent the connections because the client will be sending and receiving data 1-30 times in a 5 min period as long as the devices are on, and low latency is key! the faster the response the better!
I was thinking of using sockets accomplish this, however, I am having trouble finding out how to handle/implement socket actions from the client with ActionHeroJS.
I see in the actionHeroClient.js file there are commands for say, file, detailsView, etc... I need to forget about the chatroom concept and create my own methods completely and find out how to react to them on the ActionHeroJS server.
Maybe I'm too used to the way
socket.io works so I really do not know where to go from here :(
So I just need to be pointed in the right direction on how to persist a websocket connection with a client and handle various actions while maintaining a connection.
For example:
1) client connects with some payload data
2) ActionHero server finds information about the client in my database (already set up the initializers and actions for the database with actiohero and are working nicely independently)
3) ActionHero sends information back to the client through the connection
4) client might request some sort of file
5) client will be sending payloads to the server at random times whenever an event on the client side triggers it
6) ActionHero might push an event to the client at anytime
7) ActionHero might push an event to MANY clients at anytime
I have a feeling I am really over thinking this, but just thought I would ask just in case!
Thank you for all your hard work Evan, I truly appreciate all the awesomeness in ActionHeroJS.
PS I know a million connections is a lot, and this will be deployed across tens to hundreds of pretty big EC2 instances in a huge cluster of NODEJS awesomeness