• Chp10: Scalability and Memory Limits


    The Step-by-Step Approach

    break down a tricky problem and to solve problems using what you do know.

    Step 1: Make Believe

    Pretend that the data can all fit on one machine and there are no memory limitations. Provide the general outline for your solution.

    Step 2:  Get Real

    figure out how to logically divide the data up, and how one machine would identify where to look up a different piece of data.

    Step 3: Solve Problems

      Dividing Up Lots of Data:

    By Order of Appearance:

    By Hash Value: 1)pick some sort of key relating to the data 2)hash the key 3)mod the hash value by the number of machines 4)store data on the machine with that value

            there is no relationship between what the data represents and which machine stores data.

    By Acutal Value: reduce system latency by using information about what the data represents.

    Arbitrarily:

    Good Example: Find all documents that contains a list of words.


    10.1 build some sort of service that will be called by up to 1000 client applications to get simple end-of-day stock price information.

    We want to start off by thinking about what the different aspects we should consider in a given proposal are:

    1. Client Ease of Use: we want the service to be easy for the clients to implement and useful for them

    2. Ease for Ourselves: consider in this not only the cost of implementing, but also the cost of maintenance

    3. Flexibility for Future Demands: 

    4. Scalability and Efficiency: not to overly burden our service.

    DataBase vs XML(json) P 343


    10.2 good problem

    10.7 LRU Cache

  • 相关阅读:
    前端之css网页布局等相关内容-54
    前端之css属性设置等相关内容-53
    前端之css选择器等相关内容-52
    前端之HTML标签等相关内容-51
    前端之HTML基础等相关内容-50
    数据库之mysql索引增删改查等相关内容-48
    累了就拥抱下自己
    平静地生活
    良心远大于失败
    独处
  • 原文地址:https://www.cnblogs.com/reynold-lei/p/3468567.html
Copyright © 2020-2023  润新知