成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL壓力測試中定制sysbench的Lua模板

數(shù)據(jù)庫 MySQL
sysbench是依舊是我們MySQL壓力測試的老朋友,這么多年,還依然是主流的測試工具,自有他流行的道理。回到定制Lua模板的部分,如果我們反推Lua的邏輯,和sysbench聯(lián)系起來,我們可能要花上幾倍的代價,不如聽聽sysbench作者怎么說。

對于sysbench的定制,自己給自己定了一個小目標(biāo),但是實踐的時候發(fā)現(xiàn),難度比想象的要大很多。

都說Lua很簡單,性能很不錯,但是定制sysbench的模板的時候,越是深入去看,越覺得少了一些東西。

這個時候我想起了學(xué)習(xí)的周期和復(fù)雜度的一個說法,如果想快速學(xué)習(xí)一門技術(shù),一種方式是通過代碼來理解它的實現(xiàn),來反推它的邏輯,這種方式的難度極大,而我前幾天發(fā)現(xiàn)嘗試的就是這種,這種方式非常苦悶,但是如果能夠沉下心來,看代碼看到一種程度之后,有了感覺相信就會融會貫通了。

還有一種方式,算是捷徑,就是去聽聽作者怎么說,通過他的分享來從整體對一個項目有一個基本的認(rèn)識和了解,就好比你去拜訪一個朋友,他熱情的把你領(lǐng)進(jìn)門,帶著你走走客廳,走走臥室,給你介紹房子的裝修風(fēng)格,里面的家具和電器,為什么要這么設(shè)計,很快你就能夠?qū)@一切熟悉起來。這種方式很好,而且最省事,但是可遇不可求。

對于sysbench的學(xué)習(xí)如果有這樣的方式也是極好的,所以我們就可以想辦法找找sysbench作者的心路歷程。自從0.5版本之后,有相當(dāng)長的一段時間就沒有深入維護(hù)了。

而從2016年開始,重啟了這個計劃。

所以sysbench是依舊是我們MySQL壓力測試的老朋友,這么多年,還依然是主流的測試工具,自有他流行的道理。

回到定制Lua模板的部分,如果我們反推Lua的邏輯,和sysbench聯(lián)系起來,我們可能要花上幾倍的代價,不如聽聽sysbench作者怎么說。

壓力測試前,我們配置一下環(huán)境,創(chuàng)建一個用戶和數(shù)據(jù)庫。

  1. mysql> create user sysbench_test identified by 'mysql'
  2.  
  3. Query OK, 0 rows affected (0.08 sec) 
  4.  
  5.  
  6. mysql> create database sysbench_db character set utf8; 
  7.  
  8. Query OK, 1 row affected (0.08 sec) 
  9.  
  10.  
  11. mysql> grant all on sysbench_db.* to sysbench_test@'%'
  12.  
  13. Query OK, 0 rows affected (0.00 sec) 

 

然后配置一個最簡單的Lua模板,內(nèi)容如下:

  1. #!/usr/bin/env sysbench 
  2.  
  3. function event() 
  4.  
  5.   db_query( 
  6.  
  7. "SELECT 1" 
  8.  
  9.  
  10. end 

 

運行的時候,配置執(zhí)行權(quán)限,chmod +x test1.lua,然后執(zhí)行

  1. ./test1.lua  --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run 

其中參數(shù)--mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535是為了連接,如果你是使用3306端口的默認(rèn)配置命令就更簡單了,輸出如下:

此外我們還可以驗證命令選項。我們推出第2個Lua模板 test2.lua

  1. sysbench.cmdline.options = { 
  2.  
  3.   tables = {"Number of tables", 1}, 
  4.  
  5.   table_size = {"Number of rows per table", 10000}, 
  6.  
  7.   create_secondary = {"Create a secondary key"true
  8.  

 

如果命令選項不對,會檢查出來。

  1. sysbench --tbales=8 test2.lua --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run 
  2.  
  3. invalid option--tbales=8 

 

如果沒有問題,則可以使用help來得到初始化后的選項值。

  1. #  sysbench test2.lua help 
  2.  
  3. sysbench 1.0.3 (using bundled LuaJIT 2.1.0-beta2) 
  4.  
  5. test2.lua options: 
  6.  
  7.   --table_size=N              Number of rows per table [10000] 
  8.  
  9.   --tables=N                  Number of tables [1] 
  10.  
  11.   --create_secondary[=on|off] Create a secondary key [on] 

 

接下來就是重點了,關(guān)于SQL API的定制,其實是有規(guī)則可循的。

我們來看看第3個Lua模板,test3.lua

 

  1. function thread_init() 
  2.  
  3.   drv = sysbench.sql.driver() 
  4.  
  5.   con = drv:connect() 
  6.  
  7. end 

 

  1. function event() 
  2.  
  3.   con:query("SELECT 1" 
  4.  
  5.  
  6. end 
  1. function thread_done() 
  2.  
  3.   con:disconnect() 
  4.  
  5. end 

使用命令即可完成測試。

  1. sysbench  test3.lua --mysql-user=sysbench_test --mysql-password=mysql --mysql-host=127.0.0.1 --mysql-port=65535 --mysql-db=sysbench_db run 

后續(xù)繼續(xù)補(bǔ)充更多的Lua模板。 

 

責(zé)任編輯:龐桂玉 來源: 楊建榮的學(xué)習(xí)筆記
相關(guān)推薦

2017-10-12 10:57:51

MySQL基準(zhǔn)測試sysbench工具

2021-07-03 08:54:49

LinuxSysbench性能

2010-05-17 13:16:23

MySQL壓力測試工具

2020-05-18 07:00:00

性能測試壓力測試負(fù)載測試

2011-06-08 16:59:04

性能測試載測試壓力測試

2023-06-06 16:10:11

2012-03-02 11:09:08

壓力測試

2010-02-23 16:24:47

Visual Stud

2012-02-16 10:18:04

Nginx壓力測試

2019-07-22 09:24:54

LinuxMySQL數(shù)據(jù)庫

2014-06-12 09:02:10

MariaDB壓力測試

2011-08-30 11:09:26

MySQL ProxyLua

2020-07-07 13:00:00

Linux壓力測試

2015-07-27 18:19:22

Linuxstress參數(shù)

2010-10-14 09:24:08

Ruby on RaiCakePHP

2023-12-08 13:15:00

MySQL數(shù)據(jù)庫Java

2011-08-30 10:36:31

Ubuntu 9.04Mysql ProxyLua

2009-05-18 08:52:17

壓力測試Rpplet測試

2021-12-07 09:00:00

測試數(shù)據(jù)自動化數(shù)據(jù)隱私

2019-03-15 09:17:22

Web測試工具
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 精品一二区 | 欧美日韩国产欧美 | 日日操av | 超碰男人天堂 | 天天操夜夜操 | 日本a在线 | 亚洲福利视频一区二区 | 男女搞网站 | 91精品国产综合久久久久久首页 | 一级片在线观看视频 | 性色视频 | 国产精品久久久久久久久久久久 | 91在线网站 | 亚洲一二视频 | 婷婷久久精品一区二区 | 精品久久久久久亚洲综合网站 | 视频在线亚洲 | 天天干夜夜操 | 97人人超碰 | 成人欧美在线 | 天天爽夜夜爽精品视频婷婷 | 亚洲最大成人综合 | 亚洲一区二区中文字幕在线观看 | 日韩一区二区三区在线观看视频 | 五月婷婷激情网 | 久久精品亚洲 | 国产一级片一区二区 | 日韩在线免费视频 | 国产98色在线 | 日韩 | 成人在线视频一区 | 精品久久一区 | 一级毛片色一级 | 先锋资源在线 | 国产一区二区三区高清 | 日本大香伊一区二区三区 | 亚洲国产精品一区二区久久 | 亚洲影音先锋 | 亚洲第一中文字幕 | 黑人巨大精品欧美黑白配亚洲 | 成人日b视频 | 亚洲一区日韩 |