What technologies do Google and Facebook use for their back-end and front-end?
What are their database technologies, and languages they use to process the back-end data.
Angular. Angular is Google's offering in the front-end framework space. It started life in 2010 as AngularJS (or Angular 1) and was an immediate hit, primarily because it was the first framework that enabled developers to build what we now refer to as single-page applications.
The languages Google uses for backend development are: C / C++ / C#, Java, Python and Go, they also required experience with: Agile software development, building cloud applications, natural language processing and deep learning.
Facebook uses several different languages for its different services. PHP is used for the front-end, Erlang is used for Chat, Java and C++ are also used in several places (and perhaps other languages as well).
Facebook uses a variety of services, tools, and programming languages to make up its core infrastructure. At the front end, their servers run a LAMP (Linux, Apache, MySQL, and PHP). Facebook's backend services are written in a variety of different programming languages including C++, Java, Python, and Erlang.
http://web.archive.org/web/20110708015633/http://panela.blog-city.com/python_at_google_greg_stein__sdforum.htm
Where is Python used?
- The Google build system is written in python. All of Google's corporate code is checked into a repository and the dependency and building of this code is managed by python. Greg mentioned that to create code.google.com took about 100 lines of python code. But since it has so many dependencies, the build system generated a 3 megabyte makefile for it!
- Packaging. Google has an internal packaging format like RPM. These packages are created using python.
- Binary Data Pusher. This is the area where Alex Martelli is working, on optimizing pushing bits between thousands of servers
- Production servers. All monitoring, restarting and data collection functionality is done with python
- Reporting. Logs are analyzed and reports are generated using Python.
- A few services including code.google.com and google groups. Most other front ends are in C++ (google.com) and Java (gmail). All web services are built on top of a highly optimizing http server wrapped with SWIG.
I can tell you that Facebook uses PHP as a frontend presentation layer and backend is mostly MySQL and (for message search) Cassandra. More information can be found here.
Google uses BigTable for backend repository (I don't know if they use MySQL or other technologies).
Google makes use of Map Reduce to process huge amount of data.Facebook uses an open source implementation of Map Reduce called Hadoop.
Heard a rumor that Facebook uses Erlang for its messaging system: http://gregosuri.com/how-facebook-uses-erlang-for-real-time-chat
Facebook uses HBase for its messaging infrastructure. Have attached the paper published by Facebook on how they used HBase and the optimizations they have done. Its a good read: http://sites.computer.org/debull/A12june/facebook.pdf
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With