Showing posts with label Architecture. Show all posts
Showing posts with label Architecture. Show all posts

Wednesday, January 23, 2019

Edge nodes

  • Edge nodes are the interface between the Hadoop cluster and the outside network. For this reason, they’re sometimes referred to as gateway nodes. Most commonly, edge nodes are used to run client applications and cluster administration tools.

Tinyurl design

We have different options to generate tiny url. The basic rule of thumb is that we need to convert the long url into tiny url and store it in database or cache for future retrieval.

1) Sometimes we would have restrictions on the tiny url. ex 41 bits
2) Allowed characters on the tiny url  could be caps and smaller alphanumeric characters

Friday, October 26, 2018

System design Twitter


Overview

Designing the architecture of Twitter and similar social networks is a popular engineering interview question asked at companies like LinkedIn, Microsoft, Google, Snapchat, NVidia and others.No solution is right or wrong and might have trade-offs.Let's try our best to take different features and design a high level solution to the problem.

Approach

When we design a  system. we first need to list the features what we need.
Lets build the system feature by feature and later test for performance and improve on it.

Let us consider 3 main features of twitter system

1.Tweeting
     This would have all the tweets.
2.Timeline
    -User
       List of all the tweets within that timeline.Content of this would be less as this would be the list of
       tweets that the user has done at a particular timeline
    -Home
       List of all the tweets of the users whom we are following. Each users might have thousands of             tweets at a particular timeline.
3.Following
      These are the list of the users that we are following. This would not dynamically change and                would have less load on the system

System design Uber



Uber architecture relies on supply and demand.

  • Demand is for the user and supply is provided by the car
  • It uses a flat map from google to generate unique cell across the world regions
  • Each cell would have a  unique id
  • It would draw a circle that would have one or more cells as shown below

Thursday, April 13, 2017

Resources in REST


  • Client consumes servers capability by interacting with resources
  • Resources are identified by a resource identifier.In http terms this is an URL
  • Client interacts with resources the client does not work directly with the resources but with representations of those resources
         Example Person can be identified by name. We directly do not work with the Person by representation of person using JSON or XML. The message should also contain meta data about what to do with the services

Wednesday, April 12, 2017

OOPS quick reference


OOPS

  • Problem solving technique to develop software systems
  • Technique to think real world in terms of objects
  • Object maps the software to real world object
  • These objects have responsibility or provide services to application or other objects

Thursday, December 10, 2015

SPA web application architecture

  • Single page web applications deliver the sleekness and fluidity of native desktop application in a browser
  • Usually all necessary code is downloaded including HTML,CSS and JavaScript , Appropriate resources are downloaded based on the need (usually data through ajax call)

Solution architecture

  • Is a practice of defining and describing an architecture of a system delivered in context of a specific solution
  • Key methods by which solution architects define value to the organizations
  • A solution architecture typically applies to a single project or project release


Labels