Beautiful Architecture

(avery) #1
Browser

FB Logic FB Display

Receiver

FB API

FB Service

FB Data

Privacy

FQL

App Logic App Display

App Service

(obj)

(obj)

$_REQUEST

App Data

SQL Objects

$_GET, S_POST

App Infrastructure
FB Infrastructure

FBML

S_COOKIE

FBML
Interpreter
+FBJS HTML, JS, CSS
app JS

FIGURE 6-6. Facebook Platform services


With developers’ social applications becoming more of an integrated service consumed by
Facebook rather than an external site consumed by a browser, we’ve had to recreate or
reengineer some of the functionality of that browser (through Platform Cookies, FBJS, etc.).
These are two examples of the significant modifications required when trying to change or
reinvent the idea of an “application.” The Facebook Platform includes additional architectural
tweaks along this line that are not detailed here, including the Data Store API and the browser-
side web service client.


Summation


Facebook’s user-contributed social information effectively motivates the utility of most any
page on http://facebook.com. However, this data is so universal that some of its best uses appear
when it is integrated with the stacks of outside developers’ applications, made possible through
data technologies such as Facebook Platform’s web services, data query services, and FBML.


DATA GROWS UP: THE ARCHITECTURE OF THE FACEBOOK PLATFORM 151
Free download pdf