關於訪問量,我們在談些什麼?

2021-08-17 05:54:12 字數 1358 閱讀 6587

what about load ?

關於訪問量,我們在談些什麼?

可以是每秒的讀寫訪問量,每秒的寫訪問,每秒的讀訪問

單獨描述讀訪問,比如乙個資料庫,只有讀訪問,那麼怎麼衡量讀的最大訪問量?

在什麼樣的配置下,有多少訪問量之後,效能才會有問題。

單獨描述每秒的寫訪問,訪問瓶頸會在記憶體達到乙個滿負荷之後,才會顯現出來。訪問的併發會加劇這種瓶頸的顯現。1000個寫請求,寫入同乙個表,或者寫入不同的表,等待的時間長短。

用什麼度量或者關鍵指標kpi,可以精確描述目前系統的健壯性?

關於 web server, 我們可以用每秒處理多少請求來衡量;

關於 database, 我們可以用 「讀寫比率」 ,「併發數」,「快取命中率」 來衡量;

第一方法是絕大多數人都會想到的,就是用二維表關聯的方法:

設計以下三個表:微博表,人物表,人物關係表。

微博表用來儲存傳送的微博;

人物關係表就是用來儲存使用者互相關注的資訊。

這裡可見的瓶頸,是:

發微博的這張表,歷史記錄會非常大。一秒4600,一天就是 4600 * 60 * 60 *24 , 差不多 4億一天。加上人物表,人物關係表的數量也巨大,10左右的使用者都在裡面。這種方法對於每秒 4600 的讀來說,都將是災難。

所以很快就產生了下面一種設計方法,而這種設計方法可能大多數人都不會碰到,因為平日的資料庫體量不會有那麼大的使用者群:

扯遠了,拉回來。如果讓你來設計這個架構,你會怎麼辦呢?

twitter 的做法是,將 大v 與普通使用者區分開來存放。大v 使用第一種方法,小v和普通使用者就採用第二種架構。

提幾個開放性的問題,以待下次回答:

1 在乙個資料庫系統中,我們如何獲得讀和寫的請求流量?

2 更深層次的問題是,怎麼知道乙個資料庫系統中,讀和寫各佔的流量比率,從而來獲得資料庫系統中,到底是讀請求佔的多,還是寫請求佔的多?讀和寫,都是請求操作。乙個系統能夠在當前配置下,支援的最大訪問量,就是他的瓶頸。

3 怎麼知道一資料庫系統或者資料應用的瓶頸,怎麼來測試?

唯讀,測試;

只寫,測試;

讀和寫,併發測試;

4 怎麼才能設計一套靈活的配置來支援線性擴充套件伺服器,滿足日益增加的訪問量

歡迎關注【有關sql】,入群討論

Python 刷訪問量

ip通過 獲取,我使用的的是https 協議的 根據自己需求選擇http或者https 協議的頁面。廢話不多說,直接上 coding utf 8 from urllib import request import requests import random import time import r...

NGINX訪問量統計

1.根據訪問ip統計uv awk access.log sort uniq c wc l 2.統計訪問url統計pv awk access.log wc l 3.查詢訪問最頻繁的url awk access.log sort uniq c sort n k 1 r more 4.查詢訪問最頻繁的ip...

linux nginx訪問量統計

nginx訪問量統計 1.根據訪問ip統計uv awk access.log sort uniq c wc l 2.統計訪問url統計pv awk access.log wc l 3.查詢訪問最頻繁的url awk access.log sort uniq c sort n k 1 r more 4...