Blaine Cook typeth: | When doing distribution of messages to 10,000 or 100,000 recipients, | you want to be able to batch those deliveries (PSYC's notion of | multicast) and more importantly you want low-latency, high reliability | response characteristics. If each delivery of 10,000 takes even 1ms, | the total delivery time is going to be 10 *seconds*. A more realistic
Uhm no, PSYC's notion of multicast would be, you send the notice out to a dozen already established TCP links which redistribute it to another dozen each. Something like that. And you try to do it close to simultaneously using non-blocking writes and connects where necessary. A tree of 12/12 is just an example. | *MOST* HTTP servers are terribly ill-suited to this sort of messaging | --- the sort that social networks promote. HTTP response times are | normally more like 30ms if you're lucky, 1-2s if you're not. So in | that regards, I agree, HTTP is ill-suited to this sort of work. Alright. So we have overhead, a TCP connection for each direction, and the problem of dealing with existing HTTP implementations. Which HTTP implementations are generally in place in commodity web hosting sites? | on. HTTPs stateless nature means that massive parallelism works out of | the box - not something that can be said for e.g., XMPP or IRC. Most | XMPP servers will fail to successfully negotiate an s2s link unless | both servers are clustered at the back-end (thanks to dial-back), an | approach which is far from scalable in most XMPP servers. I love XMPP, | but don't ignore the fact that it's not a panacea, either ? no | protocol is. I'm notable for my criticism of XMPP scalability. Almost needless to say, you don't have this problem with PSYC. The problem you do still have with HTTP and PSYC is that parallelism still has to go somewhere to pick the data sets for each particular person, but the problem and the solution would be the same no matter which protocol is picked. PSYC is more likely to be able to do without a "middleware" kind of approach, by having people addressed at the right server right away - but that's just another option. And you could do that with HTTP too, if you really wanted to. -- ___ psyc://psyced.org/~lynX ___ irc://psyced.org/welcome ___ ___ xmpp:[email protected] ____ https://psyced.org/PSYC/ _____
