← Back to team overview

openstack team mailing list archive

Re: API Versioning and Extensibility

 

On 28/10/2011, at 2:36 AM, George Reese wrote:

> The complete lack of evolution of the OSAPI combined with the irrational resistance to the EC2 API has struck a nerve with me.
> 
> #1 Feature coverage in the OSAPI is atrocious. And I don't get the feeling there's anyone seriously doing anything about it. Of course, you can always say, "George, it's an Open Source project. If you don't like it, feel free to fix it." Of course, I'm not worrying about all kinds of bizarre OpenStack projects that have nothing to do with building a basic, functional cloud platform either.

Great - do you have a list?


> #3 Push scales a hell of a lot better than having tools polling a cloud constantly. It doesn't matter whether it is polling the API, polling a feed, or polling a message queue. Polling is one of the most unscalable things you can do in any distributed systems scenario.

That's a very absolute assertion to make, and doesn't reflect the experiences I've had.

I've helped build polling-based APIs and pull-based systems inside of Yahoo! and Akamai that scale quite well.

I've built polling-based systems where push-based message busses failed, miserably.

In my experience, push-based systems bring a LOT of complexity and implementation overhead, and are especially problematic to run across administrative domains; there are certainly cases that require them, but they're not a silver bullet. 


> Calling it a feed doesn't magically solve the problem. 

Absolutely not. They're a tool to be used, just like any other. 


> Push notifications are the only mechanism for solving the scaling issue. You push any changes to a message queue. Agents pick up the changes and send them on to subscriber endpoints. Not that hard.

Again, that's a big assertion to make. I'd rather evaluate the tools based upon the use case, rather than arguing by assertion.

Thanks,




--
Mark Nottingham   http://www.mnot.net/





References