Advertise Here

Support our Sponsors

Sunday, February 28, 2010

Technology Explained: How Does Facebook Work? The Nuts and Bolts

Social networking is the art of connecting with those who share common interests. Your 'network' is a community that helps keep you united with others and offers many benefits. Networking via social media sites has revolutionized how we use the Internet and is at the forefront of what we now call Web 2.0.

Facebook is social networking. People have been "facebooking" each other for about 6 years now, makingFacebook the most used social network with over 350 million users worldwide. But how does Facebook work?

In this article, I will discuss Facebook's inner workings, covering its architecture and frontend/backend infrastructure—the nuts and bolts that hold Facebook together.

How Does Facebook Work?—The Front End

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) stack with Memcache. Not a computer science expert? Let's take a look at exactly what that means.

Linux & Apache

how does facebook work

This part is pretty self-explanatory. Linux is a Unix-like computer operating system kernel. It's open source, very customizable, and good for security. Facebook runs the Linux operating system on Apache HTTP Servers. Apache is also free and is the most popular open source web server in use.

MySQL

how does facebook work

For the database, Facebook utilizes MySQL because of its speed and reliability. MySQL is used primarily as a key-value store as data is randomly distributed amongst a large set of logical instances. These logical instances are spread out across physical nodes and load balancing is done at the physical node level.

As far as customizations are concerned, Facebook has developed a custom partitioning scheme in which a global ID is assigned to all data. They also have a custom archiving scheme that is based on how frequent and recent data is on a per-user basis. Most data is distributed randomly.

PHP

how does facebook work

Facebook uses PHP because it is a good web programming language with extensive support and an active developer community and it is good for rapid iteration. PHP is a dynamically typed/interpreted scripting language.

Memcache

how facebook works

Memcache is a memory caching system that is used to speed up dynamic database-driven websites (like Facebook) by caching data and objects in RAM to reduce reading time. Memcache is Facebook's primary form of caching and helps alleviate the database load.

Having a caching system allows Facebook to be as fast as it is at recalling your data. If it doesn't have to go to the database it will just fetch your data from the cache based on your user ID.

Downsides to Using LAMP

Facebook has realized that there are downsides to using the LAMP stack. Notably, PHP is not necessarily optimized for large websites and therefore hard to scale. Also, it is not the fastest executing language and the extension framework is difficult to use.

how facebook works

Mike Schroepfer, Facebook's Vice President of Engineering, recently did an interview atEmTech@MIT concerning this. "Scaling any website is a challenge," Schroepfer said, "but scaling a social network has unique challenges."

He went on to say that unlike other websites, you can't just add more servers to solve the problem because of Facebook's "huge interconnected dataset." New connections are created all the time due to user activity.

Facebook has grown so quickly that they are often faced with issues regarding database queries, caching, and storage of data. Their database is huge and largely complex. To account for this, Facebook has started a lot of open source projects and backend services.

How Does Facebook Work?—The Back End

Facebook's backend services are written in a variety of different programming languages including C++, Java, Python, and Erlang. Their philosophy for the creation of services is as follows:

1. Create a service if needed

2. Create a framework/toolset for easier creation of services

3. Use the right programming language for the task

A list of all of Facebook's open source developments can be found here. I will discuss a few of the essential tools that Facebook has developed.

Thrift (protocol)

Thrift is a lightweight remote procedure call framework for scalable cross-language services development. Thrift supports C++, PHP, Python, Perl, Java, Ruby, Erlang, and others. It's quick, saves development time, and provides a division of labor of work on high-performance servers and applications.

Scribe (log server)

Scribe is a server for aggregating log data streamed in real-time from many other servers. It is a scalable framework useful for logging a wide array of data. It is built on top of Thrift.

Cassandra (database)

how facebook works

Cassandra is a database management system designed to handle large amounts of data spread out across many servers. It powers Facebook's Inbox Search feature and provides a structured key-value store with eventual consistency.

HipHop for PHP

HipHop for PHP is a source code transformer for PHP script code and was created to save server resources. HipHop transforms PHP source code into optimized C++. After doing this, it uses g++ to compile it to machine code.

Conclusion

In a nutshell, that's Facebook. This article could easily be 37 pages longer if I were to go into more detail, but to answer the question "How does Facebook work?" I think this will suffice. If you look past all of the features and innovations the main idea behind Facebook is really very basic—keeping people connected. Facebook realizes the power of social networking and is constantly innovating to keep their service the best in the business.

Monday, February 22, 2010

FarmVille Surpasses 80 Million Users

FarmVille, the massively popular Facebook game, surpassed 80 million monthly active users this week (source: AppData). Facebook has around 400 million users in total.

FarmVille has been a breakout hit, with its active user count growing by around 10 million users per month. Note that this isn't simply signups: This is a count of people using the app at least once in the 30-day span.

FarmVille's daily active user count is currently 29.7 million — that's almost 30 million people using FarmVille every day.

FarmVille's parent company, Zynga, was valued at 1 billion dollars late last year.

HOW TO: Block FarmVille on Facebook

The Facebook-platform game FarmVille has 80 million players. It's been named social networking game of the year. It's played by people young and old. It's bigger than Twitter. But that doesn't mean it's for everyone.

The game optionally advertises itself by sending out news feed updates to your friends whenever you accomplish a milestone with your farm or character. When you have lots of friends playing FarmVille, those updates can be ubiquitous enough to drive you a little crazy.

Here we'll save your sanity by showing you how to hide all those FarmVille news feed updates and notifications without burning any bridges with your passionate social gamer friends.


Hiding Friends' FarmVille News Feed Updates


This task is simple. Any time you see a FarmVille update in your news feed, move the mouse cursor to the right of the update and a "Hide" button will appear as seen above. Click on it.

As illustrated above, you'll then be given the choice to either hide that friend or just the FarmVille app. Since you probably want to keep seeing your friend's updates (we hope), click "Hide FarmVille." This will hide FarmVille news feed posts from all your friends, not just the one who published that particular update.


Blocking FarmVille Notifications


Sometimes friends will send you notifications inviting you to join them in FarmVille or other games. These can be annoying if you're not interested in playing. The easiest way to take care of this is to click the "x" next to the notification when you receive to block the FarmVille application.

But if you want to do this preemptively without waiting for another notification, just search for the FarmVille application using the Facebook () search bar, go to the application page, and look for the "Block Application" link directly below the application image. We've included a pic above so you'll know what you're looking for.

Clicking that and confirming will prevent FarmVille from accessing your information or sending you notifications, but it won't hide news feed updates from friends.

[via mashable]

Saturday, February 20, 2010

Fly By – Pakistan’s First Flash Game on Facebook


Fly By Fly By   Pakistan's First Flash Game on Facebook

As spotted by CodeWeek, Fly By, Pakistan's first Flash Game has ultimately appeared on Facebook, and already  it has attracted more than 800 users from all over the world.

Fly By is developed by Web Sketchers, a team of individuals who graduated from FAST-NU Lahore in 2009.

The game is visually spectacular, rich in colors, and encompasses eye-catching 3D modeling.

The basic theme of the game is the flight of an aircraft through the city centre. The aircraft is flying low, and has to evade the numerous skyscrapers and hot air balloons that encroach in its path. The player has to maneuver the aircraft through these obstacles. As the player progresses, points are earned and newer levels of play are attained during game play.

Web Sketchers say they are going to add more features in coming days, based on users' feedback.

Web Sketchers also intends to launch a number of new and exciting games in the near future under the umbrella of brand "Wesga".

Link on Facebook to play: http://apps.facebook.com/flybygame

Convert RPM to DEB in Ubuntu

Many Linux distributions use .RPM files, like Red Hat and Fedora.
There is a great program to convert RPM's into DEB's, Alien.

 

To install Alien, Go to Terminal and type

sudo apt-get install alien


Once installed, you can convert the RPM file like:

sudo alien -k FileName.rpm


To then install the DEB file, you can either double click on it or run the command:

sudo dpkg -i FileName.deb


Or another way to convert and then install straight after, you can run the following command:

sudo alien -i FileName.rpm

source

Thursday, February 18, 2010

Windows Activation Technologies for Windows 7 Update Available

We have covered the news about the Windows Activation Technologies for Windows 7 update earlier this month with the expectation that Microsoft would provide downloads for the update later in that month. The first step has apparently been made as a Knowledgebase article now links to the update that can be downloaded for 32-bit and 64-bit Windows 7 computer systems.

The update basically improves the capabilities of the Windows 7 operating system to spot activation hacks that have been used to activate the operating system without a purchased product key.

Windows Activation Technologies helps you confirm that the copy of Windows 7 that is running on your computer is genuine. Additionally, Windows Activation Technologies helps protect against the risks of counterfeit software.

The update is currently only offered on the Microsoft website but will be added to Windows Update at a later time. It will however be an optional update in Windows Update as well for the time being which means that it only serves the following purposes:

  • Provide the ability for users who have bought a computer system with Windows 7 or Windows 7 standalone to verify that their product is genuine and not counterfeit.
  • Provide the ability for hackers to find out if their activation hack is still working

Users who have illegally activated Windows 7 will obviously not install and run the Windows Activation Technologies for Windows 7 update as they might risk getting it flagged as non genuine.

It will be interesting to see if and when Microsoft decides to make the update mandatory for all Windows 7 operating systems.

[via ghacks]

Sunday, February 14, 2010

Mobilink’s Blackberry Stock Clearance Loot Sale


Indigo Mobilink's Blackberry Stock Clearance Loot Sale

Looks, Mobilink want to clear its stock – by all means. For the purpose, they are offering plenty of discounts on Blackberry handsets.

Earlier, Mobilink offered 30 % Discount on all Blackberry Storm smarphones, if bought online – and now the offer got even better.

Despite, the fact that Blackberry Storm didn't click the market, Mobilink's this loot sale is pretty impressive. Following are three offers you can choose from!

BlackBerry® Pearl™ Free with Blackberry Storm

The BlackBerry® Pearl™ is offered free of cost, if you buy a Blackberry Storm, till the stocks last.

BlackBerry® Pearl™ with 40 % off!

The BlackBerry® Pearl™ 8110 and Pearl 8120 both have discounts on them of 40%! This offer is only till stocks last.

BlackBerry® Storm™ with 30% off!

BlackBerry® Storm™ smartphone is available from Mobilink with 30%! This offer is only till stocks last

To avail this offer click this link and fill the form: http://www.mobilinkgsm.com/indigo/bb_offer.php

via propakistani

Get Thousands of Visitors for Your Website

autosurf

Get Free Dot Tk Domain

Earn Money by Just Shortening URL