Amazon Architecture

May 10th, 2009 No comments

This is a wonderfully informative Amazon update based on Joachim Rohde’s discovery of an interview with Amazon’s CTO. You’ll learn about how Amazon organizes their teams around services, the CAP theorem of building scalable systems, how they deploy software, and a lot more. Many new additions from the ACM Queue article have also been included.

Amazon grew from a tiny online bookstore to one of the largest stores on earth. They did it while pioneering new and interesting ways to rate, review, and recommend products. Greg Linden shared is version of Amazon’s birth pangs in a series of blog articles.

Information Sources

  • Early Amazon by Greg Linden
  • How Linux saved Amazon millions
  • Interview Werner Vogels – Amazon’s CTO
  • Asynchronous Architectures – a nice summary of Werner Vogels’ talk by Chris Loosley
  • Learning from the Amazon technology platform – A Conversation with Werner Vogels
  • Werner Vogels’ Weblog – building scalable and robust distributed systems

    Platform

  • Linux
  • Oracle
  • C++
  • Perl
  • Mason
  • Java
  • Jboss
  • Servlets

    The Stats

  • More than 55 million active customer accounts.
  • More than 1 million active retail partners worldwide.
  • Between 100-150 services are accessed to build a page.

    The Architecture

  • What is it that we really mean by scalability? A service is said to be scalable if when we increase the resources in a system, it results in increased performance in a manner proportional to resources added. Increasing performance in general means serving more units of work, but it can also be to handle larger units of work, such as when datasets grow.
  • The big architectural change that Amazon made was to move from a two-tier monolith to a fully-distributed, decentralized, services platform serving many different applications.
  • Started as one application talking to a back end. Written in C++.
  • Read more…

    VN:F [1.9.11_1134]
    Rating: 0 (from 0 votes)
    Categories: General Tags: ,

    Willing to learn

    May 9th, 2009 No comments

    TDD => Test Driven Development
    Continuous Integration
    Refactoring
    Design Patterns
    eXtreme Programming *
    agile design
    SOAP, REST

    VN:F [1.9.11_1134]
    Rating: 0 (from 0 votes)

    Save Penguins!

    May 7th, 2009 1 comment

    VN:F [1.9.11_1134]
    Rating: 0 (from 0 votes)
    Categories: Linux Tags:

    What is MVC Architecture? (Model – View – Controller)

    April 19th, 2009 9 comments

    MVC Architecture has implemented by Trygve Reenskaug at 1979 for the first time. It was implemented on Smalltalk at Xerox labs. Then benefits and advantages of this architecture has been accepted by most of the coders and software engineers.

    It was an information about MVC’s history above. Now lets talk about what really MVC is. What do you understand from MVC. The word M stands for Model, V stands for View and C stands for Controller. I am going to mention about each item.

    The figure above may help you while thinking what structure it might have. Let’s start with Model.

    Model:
    It handles data processing and database works part. Model processes events sent by controller. After processing these events then it sends processed data to controller (thus, controller may reprocess it) or directly to view side.

    View:
    View prepares an interface to show to the user. Controller or model tells view what to show to the user. Also view handles requests from user and informs controller.

    Read more…

    VN:F [1.9.11_1134]
    Rating: +14 (from 18 votes)
    Categories: General, Programming Tags: , , ,

    What is PHP?

    April 18th, 2009 No comments

    First of all i need to say that PHP is a language which you are going to in love with. (That is of course if you are a developer ) PHP stands for PHP: Hypertext Processsor.

    To start with it you should have knowledge about basic scripting and HTML language.

    PHP is totaly free to use and download that is because it is an open source. Well there are many scripting languages on the earth. PHP is server-side scripting language. It means codes are executing on the server-side not in the client-side.

    Thus, clients cannot see your php script, a client can only see pure html content. Now i can say PHP is secure langauge since user cannot see your PHP code. How it works? For instance, a client (user) requests a webpage from your server. Then your server executes php code and returns pure html content to the user. And user have no chance to see what is going on at the server-side.

    Extensions : .php, .php3, .phtml

    Read more…

    VN:F [1.9.11_1134]
    Rating: 0 (from 0 votes)
    Categories: PHP, Programming Tags: , ,