williamflaherty / pearing

KCSW project
Other
1 stars 0 forks source link

Messaging #12

Open williamflaherty opened 9 years ago

williamflaherty commented 9 years ago

We need to decide how we're going to handle messaging before we proceed further with back-end messaging stuff. Do we want to continue with what we're building and do polling for the messages or do we want to use a service to handle it?

The pros of building it ourself is obviously: free! the con is scalability and reliability. We might end up having a slow system. The pros/cons of paying for something like PubNub are the inverse. We have reliability and scalability but it will get expensive. If we want to make sure to have enough to handle it once we launch.

PubNub would also mean the chat would be real time, as opposed to the polling.

We could also just setup a real time chat server ourselves using web sockets with node.js and socket.io or something. It doesn't have to be in django, yay technology. Dan has done this before with a web app so we might be able to do this fairly quickly. I'm actually a big fan of this option. We can have real time chat and not have to pay for it through PubNub.

Let me know what you guys think.

edit: something like this doesn't seem that complicated http://www.maxburstein.com/blog/realtime-django-using-nodejs-and-socketio/

Mimimiel commented 9 years ago

I think we should do some version of build-it-ourselves. Looking at the pricing for PubNub, it does not feel worth it right now. I'm leaning towards polling because it is (probably) the fastest thing we can put up. I think later it would change and we could decide then whether real time chat server or outside service is where we want to go, but I think we need the first few hundred users to properly inform our decision before we invest substantial time/money.

nziebart commented 9 years ago

A less expensive option than pubnub is realtime.co. It's actually free for low traffic levels like ours, but last time I used them they didn't have message history. Now it looks like they do, but it's optional. We'd have to ask about it.

Node.js could be a good option too as it gives us more control over message storage and any logic that needs to run when routing messages. The question is, do we need any of those benefits. Then again, it's free, and if not too time consuming, could be our best option.

On Saturday, February 21, 2015, Mimimiel notifications@github.com wrote:

I think we should do some version of build-it-ourselves. Looking at the pricing for PubNub, it does not feel worth it right now. I'm leaning towards polling because it is (probably) the fastest thing we can put up. I think later it would change and we could decide then whether real time chat server or outside service is where we want to go, but I think we need the first few hundred users to properly inform our decision before we invest substantial time/money.

— Reply to this email directly or view it on GitHub https://github.com/williamflaherty/pearing/issues/12#issuecomment-75377296 .

Sent from Gmail Mobile

danielcash commented 9 years ago

:+1: for using a free service.

Node.js sounds cool too if something like realtime.co doesn't fit our needs.

williamflaherty commented 9 years ago

Alright, I think we're gonna go with realtime.co here. @nziebart said he could have it running on the app fairly quickly because he's used it before and I think this will give us the best user experience. real time is way better than waiting for it to load.