I've been logging calls to Facebook API servers in my DEV environment for some weeks now.
I'm pretty disappointed by the performance, overall:
Facebook API Call Performance Stats
I realize Facebook has scalability issues beyond my ken, but they also have resources beyond my ken as well...
Facebook doesn't wait over 4 seconds for my server; Surely I shouldn't have to wait 30 seconds for theirs! :-)
In fact, it's kind of pointless in the context of a canvas page for their servers to bother to respond at all after 4 seconds...
User --A--> Facebook server request canvas page --B--> Request to my server --C--> API Call to Facebook server.
If C can detect that we are in the context of a canvas page, and Facebook already knows that B will not wait more than X seconds, they might as well issue an HTTP 408 Request Timeout or something similar after X seconds, because there's no real point in them giving me the info they aren't going to wait for...
I went ahead and created a Feature Request in Facebook's Bugzilla. You can vote for it if you think it will help you.