After reviewing the report below, I would recommend that Marconi continue using 
Falcon for the v1.1 API and then re-evaluate Pecan for v2.0 or possibly look at 
using swob.

I wanted to post my recommendation to the general list, because my request to 
continue using Falcon speaks to a broader issue. I think the community can 
agree that different projects have different needs. A good craftsman has more 
than one type of hammer in his toolbox.

Most of the OpenStack APIs to date have been control-plane APIs, not data 
plane. Swift is a notable exception. Falcon was created to address the needs of 
a high-traffic data-plane API, while Pecan’s history would suggest that it was 
conceived as a solution for building web apps and control plane APIs. Two major 
differentiators between these types of APIs:

  1.  Performance (i.e., latency, throughput, efficiency). With a data plane 
API, every ms counts, esp. when it comes to running a large cloud.
  2.  Diagnostics. When your service is piping a huge number of requests/sec, 
you become very susceptible to edge cases. Also, the amount of downtime your 
users will tolerate is quite low, since even a small hiccup means a whole lot 
of work can’t get done. Having a smaller code base, minimizing dependencies, 
and making the code that is there as straightforward, predictable and 
debuggable as possible becomes very important in situations like these.

Falcon and swob were created to address these needs, hence their use in data 
plane APIs.

I’d love to get everyone’s thoughts on the requirements of data plane APIs they 
have been involved with (not necessarily OpenStack projects).

Kurt

From: Balaji Iyer <[email protected]<mailto:[email protected]>>
Reply-To: OpenStack Dev 
<[email protected]<mailto:[email protected]>>
Date: Tuesday, March 18, 2014 at 11:55 AM
To: OpenStack Dev 
<[email protected]<mailto:[email protected]>>
Subject: [openstack-dev] [Marconi] Pecan Evaluation for Marconi

I work for Rackspace and Im fairly new to Openstack Ecosystem. Recently, I came 
across an opportunity to evaluate Pecan for Marconi and produce a comprehensive 
report. I have not worked with Pecan or Falcon prior to this evaluation, and 
have no vested interest in these two frameworks.

Evaluating frameworks is not always easy, but I have strived to cover as many 
details as applicable.  I have evaluated Pecan and Falcon only on how it fits 
Marconi and this should not be treated as a general evaluation for all 
products. It is always recommended to evaluate frameworks based on your 
product's requirements and its workload.

Benchmarking is not always easy, hence I have spent a good amount of time 
benchmarking these two frameworks using different tools and under different 
network and load conditions with Marconi. Some of the experiences I have 
mentioned in the report are very subjective and it narrates mine - you may have 
had a different experience with these frameworks, which is totally acceptable.

Full evaluation report is available here - 
https://wiki.openstack.org/wiki/Marconi/pecan-evaluation

Thought of sharing this with the community in the hope that someone may find 
this useful.

Thanks,
Balaji Iyer
_______________________________________________
OpenStack-dev mailing list
[email protected]
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to