php併發對MYSQL造成壓力的解決方法

2021-08-21 17:30:40 字數 611 閱讀 9028

php併發對mysql造成壓力的解決方法,需要的朋友可以參考一下

php頁面有乙個瀏覽量統計每秒有200併發,造成insert給mysql造成很大壓力

lnmp環境,其他頁面內容都做了快取了,沒有多大的負載,就是這個瀏覽量統計功能,給mysql帶來不小的壓力,請問諸位有什麼解決辦法嗎?

怎麼都說不要用mysql來做,每秒200併發對mysql來說不算啥難事啊。而且換成redis、memcached,持久化姑且不說,業務**和運維部署量都不小。

我給你幾個建議,盡量讓你的運維部署和業務**改動小一些。

如果你可以接受少量業務**(php)改動,還有兩個建議:

1. 分庫,分表,每個表的資料總量小了,操作起來效能會好一些,特別是對從庫的myisam表。你插入之前可能會有一些查詢,例如查詢這個ip在不在庫里,以前統計過沒。

2. 使用handlersocket外掛程式,繞過sql parser,直接操作儲存檔案。如果業務上有可能,還可以使用bulk insert(批量插入)。mysql innodb還推出了類似handlersocket的innodb nosql plugin,用的memcached協議,共享innodb buffer,再也不用操心mysql和memcached之前怎麼維護資料一致性了。

使用sysbench對mysql壓力測試

mysql的測試工具,推薦用sysbench。雖然hammerora super mark tpc c等一些其他工具也很強大,但sysbench的檔案i o測試與innodb的行為很相似,針對mysql也有比較完善的測試模型,還可以方便地修改lua指令碼,以實現更強大 更靈活的測試功能。其實,設計s...

php對mysql的了解 對MySQL的初步了解

首先安裝mysql 一.單詞部分 networking網路 option選擇 port埠 firewall防火牆 engine引擎 standard標準 character字元 collation校對 stirage儲存 二.預習部分 1.請寫出建立和刪除資料庫的sql語句 create datab...

php對Mysql基本程式設計

1 建立php工程 2 分別定義mysql資料庫的ip位址 使用者名稱 使用者密碼 資料庫名 servername localhost username username password password dbname mysql 3 用方法mysqli connect例項化mysqli 4 用m...