On 23/09/14 19:29, Devananda van der Veen wrote:
On Mon, Sep 22, 2014 at 5:47 PM, Zane Bitter <zbit...@redhat.com> wrote:
On 22/09/14 17:06, Joe Gordon wrote:

If 50,000 messages per second doesn't count as small-to-moderate then
Zaqar
does not fulfill a major SQS use case.


It's not a drop-in replacement, but as I mentioned you can recreate the SQS
semantics exactly *and* get the scalability benefits of that approach by
sharding at the application level and then round-robin polling.


This response seems dismissive to application developers deciding what
cloud-based messaging system to use for their application.

If I'm evaluating two messaging services, and one of them requires my
application to implement autoscaling and pool management, and the
other does not, I'm clearly going to pick the one which makes my
application development *simpler*.

This is absolutely true, but the point I was trying to make earlier in the thread is that for other use cases you can make exactly the same argument going in the other direction: if I'm evaluating two messaging services, and one of them requires my application to implement reordering of messages by sequence number, and the other does not, I'm clearly going to pick the one which makes my application development *simpler*.

So it's not a question of "do we make developers do more work?". It's a question of "*which* developers do we make do more work?".

Also, choices made early in a
product's lifecycle (like, say, a facebook game) about which
technology they use (like, say, for messaging) are often informed by
hopeful expectations of explosive growth and fame.

So, based on what you've said, if I were a game developer comparing
SQS and Zaqar today, it seems clear that, if I picked Zaqar, and my
game gets really popular, it's also going to have to be engineered to
handle autoscaling of queues in Zaqar. Based on that, I'm going to
pick SQS. Because then I don't have to worry about what I'm going to
do when my game has 100 million users and there's still just one
queue.

I totally agree, and that's why I'm increasingly convinced that Zaqar should eventually offer the choice of either. Happily, thanks to the existence of Flavours, I believe this can be implemented in the future as an optional distribution layer *above* the storage back end without any major changes to the current API or architecture. (One open question: would this require dropping browsability from the API?)

The key question here is if we're satisfied with the possibility of adding this in the future, or if we want to require Zaqar to dump the users with the in-order use case in favour of the users with the massive-scale use case. If we wanted that then a major re-think would be in order.

cheers,
Zane.

_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to