Optimize Facebook applications beyond code
1 min read

Optimize Facebook applications beyond code

210 words

The development of applications for Facebook requires us to specially optimize them so that they work based on two very important premises: Security and speed.

Speed depends on many factors, from code optimization to the platform on which it runs, which is why all the applications we are making are executed with several servers with very specific functions.

– Load balancer: With a 100MB/s Internet connection with an nginx for this function.

– Application Servers: All are replicas that are created on demand, always allowing to give optimal quality of service regardless of the load.

– Data Servers: Data is centralized on these servers, which are also replicated. The data is, depending on the application on different database servers: SQL (MySQL, PostgreSQL), noSQL (MongoDB, Membase).

The applications also use an optimized cache system based on a system of several Memcache nodes, reducing the load of queries to the database and to the Facebook API.

Connectivity is also very important, which is why the Application Servers network has a 100MB/s connection to the internet only to access the Facebook API, and the internal connectivity of the entire ecosystem is with a GigaEthernet network.

Backups are made with another 100MB connection to Amazon’s S3 service.

Thus avoiding finding “bottlenecks” in the network.

Comments