返回顶部
首页 > 资讯 > 精选 >sysbench怎么用
  • 848
分享到

sysbench怎么用

2023-06-04 11:06:41 848人浏览 安东尼
摘要

本篇内容主要讲解“sysbench怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sysbench怎么用”吧!对于sysbench,里面用到了大量的lua模板,而且lua模板是sysbenc

本篇内容主要讲解“sysbench怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sysbench怎么用”吧!

对于sysbench,里面用到了大量的lua模板,而且lua模板是sysbench压测的必备选项,所以我们要更好的理解它的实现逻辑,如果可以根据自己的需求来定制它的实现,使得符合真实业务,这种基准测试会更有意义。想到了这些,说干就干。

我们从sysbench的角度来理解Lua,开始Lua的学习旅程。

sysbench启动测试的时候,会在头部显示如下的信息:

sysbench 1.1.0 (using bundled LuaJIT2.1.0-beta3)

这句话信息量很大,我们可以慢慢分析,可以明显看到sysbench匹配的这个Lua是选用了LuaJIT,是一个beta版本。而如此一来,我们就需要确认两点,一个是Lua调用c的方法,在这里使用了LuaJIT,那么应该是使用ffi库来调用c了,否则一般是使用c的Lua C api这种方式。

这个信息可以在sysbench基础的lua文件中看到如下的内容印证。

local ffi = require("ffi")

接着第二个问题,系统层面是默认安装了Lua,基本上是5.1以上的版本,但是LuaJIT我们印象中是不曾安装过。安装sysbench的时候是否又安装了LuaJIT呢?我们使用find来简单验证一下,果然是默认安装了。

sysbench怎么用

这是这个地方的引用是sysbench在脚本中绑定的路径,没有放到系统级的环境变量中。LuaJIT里调用c还是很流畅的,比如可以写一个简单的脚本,如下:

sysbench怎么用

该例子参考了网络资源,执行结果如下:

sysbench怎么用

然后我们就可以暂时先来系统的学习一下Lua,然后抓住要点之后再来看sysbench的代码就会容易多了。

先来一个最简单的Hello World

> print("Hello World!")

Hello World!

> print 'hello world'

hello world

Lua中的保留字有下面的这些:

and break do else

elseif end false for

function if in local

nil not or repeat

return then true until

while

如果要添加注释,有单行和多行,多行可以使用--[[ xxx --]]的方式来标注。

> -- this is a test comment --单行注释

> --[[ --多行注释

>> this is a test,line 1

>> this is a test comment line 2

>> this is a test comment line 3

>> --]]

如果变量b没有赋值,就会显示为nil,我们可以基于这个方式来处理一下变量值。

> print (b)

nil

> b=10

> print b --这种命名方式是不达标的

stdin:1: '=' expected near 'b'

> print(b)

10

然后就开始逐步有难度了。

我们看看学习套路之数据类型, Lua中有8个基本类型分别为:nil、boolean、number、string、userdata、function、thread和table。

要验证还是比较容易的,使用type方法即可。

> print (type('hello world'))

string

> print (type(10+3))

number

> print (type(print))

function

> print (type(type))

function

> print (type(nil))

nil

> print (type(true))

boolean

> print (type(type(x)))

string

遍历元组

如果有键值对这种形式的数据,可以通过循环映射的方式来返回,下面的两个实例,逻辑看起来是一样的,最后的输出还是有较大的差别。

> tab1 = {key1='val1',key2='val2','val3'}

> for k,v in pairs(tab1) do

>> print(k.."-"..v)

>> end

1-val3

key1-val1

key2-val2

> tab1 = {key1='val1',key2='val2',key3='val3'}

> for k,v in pairs(tab1) do

print(k.."-"..v)

end

key1-val1

key3-val3

key2-val2

关于类型转换,是在程序中很常见的一类处理方式,数值转换为字符型,或者字符型转换为数字,这一点上Lua的表现还不错。

> print("2" + 6)

8

> print('2' + 6)

8

>

> print ("2"+"6")

8

> print ("2+6")

2+6

> print ("-2e2"*"6")

-1200

> print ("error"+1)

stdin:1: attempt to perfORM arithmetic on a string value

stack traceback:

stdin:1: in main chunk

[C]: ?

>

> print ("a".."b")

ab

> print(123..456)

stdin:1: malformed number near '123..456'

> print(123 .. 456)

123456

如果要计算字符的长度,可使用len方法或者变量的方式。

> len = "www.jeanron100.com"

> print(#len)

18

> print(#"www.jeanron100.com")

18

如果要初始化table,则可以使用如下的方式:

比如声明这样一个table a,然后赋值取值做数据处理,里面比较重要的就是下标的处理了,Lua的实现下标是从1开始。

> a = {}

> a["key"] = "value"

> key=10

> a[key]=100

> a[key]=a[key]+1000

> for k,v in pairs(a) do

>> print(k .. ":" .. v)

>> end

key:value

1100

如果要强化一下循环的部分,可以参考下面的例子,把fruits里的元素都循环输出。

[root@oel641 lua]# cat test1.lua

local fruits={'apple','orange','banana'}

for key,val in pairs(fruits) do

print("key",key)

end

[root@oel641 lua]# lua test1.lua

key 1

key 2

key 3

还有Lua中的函数,甚至支持匿名函数。

[root@oel641 lua]# cat test3.lua

function factorial1(n)

if n == 0 then

return 1

else

return n * factorial1(n-1)

end

end

print (factorial1(5))

factorial2=factorial1

print(factorial2(5))

这段代码和c非常相似,但是Lua里面比较有意思,函数可以更加灵活的使用,直接通过类似赋值的方式就搞定了,输出结果如下:

[root@oel641 lua]# lua test3.lua

120

120

到此,相信大家对“sysbench怎么用”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: sysbench怎么用

本文链接: https://lsjlt.com/news/237622.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • sysbench怎么用
    本篇内容主要讲解“sysbench怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“sysbench怎么用”吧!对于sysbench,里面用到了大量的lua模板,而且lua模板是sysbenc...
    99+
    2023-06-04
  • Mysql中myslash与sysbench怎么用
    这篇文章主要介绍Mysql中myslash与sysbench怎么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!MYSLASH--auto-generate-sql, -a 自动生成...
    99+
    2024-04-02
  • 压测工具之Sysbench怎么用
    这篇文章主要为大家展示了“压测工具之Sysbench怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“压测工具之Sysbench怎么用”这篇文章吧。一、sys...
    99+
    2024-04-02
  • sysbench 0.5有什么用
    这篇文章主要介绍sysbench 0.5有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 一 前言  因为在准备做压力测试方面的...
    99+
    2024-04-02
  • 使用mysqlslap与sysbench怎么对MySQL进行压测
    这篇文章将为大家详细讲解有关使用mysqlslap与sysbench怎么对MySQL进行压测,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。mysqlslap...
    99+
    2024-04-02
  • Centos8下怎么使用Sysbench进行性能测试
    本篇内容介绍了“Centos8下怎么使用Sysbench进行性能测试”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SysBench 是一个基...
    99+
    2023-06-27
  • sysbench安装、使用、出图
    背景 最近着迷于性能测试,遂学习一把压测神器sysbench sysbench是github上开源的项目 链接地址:https://github.com/akopytov/sysbench 通用安装方法 1...
    99+
    2024-04-02
  • MySQL中 sysbench如何使用
    MySQL中 sysbench如何使用,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。sysbench  mysql,...
    99+
    2024-04-02
  • 如何安装使用sysbench
    本篇文章为大家展示了如何安装使用sysbench,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。yum -y ins...
    99+
    2024-04-02
  • 如何安装与使用sysbench
    这篇文章主要为大家展示了“如何安装与使用sysbench”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何安装与使用sysbench”这篇文章吧。sysbench是一个开源的、模块化的、跨平台的...
    99+
    2023-06-27
  • 使用sysbench对MySQL进行测试
    因sysbench版本更新问题,某些命令选项发生改变,查询help进行酌情更改。 https://yq.aliyun.com/articles/66651spm=5176.100239.blogcont6...
    99+
    2024-04-02
  • 使用sysbench压力测试MySQL(二)
       昨天有了第一篇的测试之后,仅仅是一个开始。    我接下来做sysbench压测的主要思路是根据现有的配置作出调整,能够持续性的优化和压力测试达到目的...
    99+
    2024-04-02
  • sysbench安装、使用、结果解读
    sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。 目前sysbench代码托管在launchpad上,项目地址:https://launc...
    99+
    2024-04-02
  • 如何使用sysbench做oltp测试
    小编给大家分享一下如何使用sysbench做oltp测试,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!sysbench是一款开源...
    99+
    2024-04-02
  • 安装sysbench时报错libmysqlclient.so.18()(64bit)怎么解决
    这篇文章主要介绍“安装sysbench时报错libmysqlclient.so.18()(64bit)怎么解决”,在日常操作中,相信很多人在安装sysbench时报错libmysqlclient.so.18...
    99+
    2024-04-02
  • 如何使用sysbench测试Mysql性能
    这篇文章主要介绍了如何使用sysbench测试Mysql性能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 s...
    99+
    2024-04-02
  • MySQL如何使用sysbench做OLTP基准测试
    这篇文章给大家分享的是有关MySQL如何使用sysbench做OLTP基准测试的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 一、 安装① 下载源码...
    99+
    2024-04-02
  • 压测工具swingbench和sysbench有什么区别
    小编给大家分享一下压测工具swingbench和sysbench有什么区别,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!swingbench  先来说说swingbench,这...
    99+
    2024-04-02
  • 如何使用sysbench对MySQL实施压力测试
    下面一起来了解下如何使用sysbench对MySQL实施压力测试,相信大家看完肯定会受益匪浅,文字在精不在多,希望如何使用sysbench对MySQL实施压力测试这篇短内容是你想要的。1.背景出自perco...
    99+
    2024-04-02
  • 使用 LOAD DATA LOCAL INFILE,sysbench 导数速度提升30%
    1. LOAD DATA INFILE 为什么比 INSERT 快? 2. sysbench 压测 MySQL 的四个标准步骤。 3. 怎么让 sysbench 支持 LOAD DATA LOCAL IN...
    99+
    2015-03-27
    使用 LOAD DATA LOCAL INFILE,sysbench 导数速度提升30%
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作