Benchmark

前端Tips#2

…衆ロ難τιáo~ 提交于 2020-01-07 01:00:08
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 本文同步自 JSCON简时空 - 技术博客,点击阅读 视频讲解 <iframe class="article-video" src="//player.bilibili.com/player.html?aid=81684736&cid=139770298&page=1" scrolling="no" border="0" frameborder="no" framespacing="0" allowfullscreen="true"> </iframe> 文字讲解 1、先讲结论 有很多种方式将 arguments 转换成数组,那么哪一种方式是最优的? 为节约大伙儿的时间,这里先说一下结论:如果你想将 arguments 转换成数组,最好的方式是使用 rest 参数转换的方式(即使用 ... spread 操作符),比如: function test(…args) { console.log(args) } test(1,2,3); // [1,2,3] 原因是:性能是 最优 的,可读性也挺好。 想知道为什么的话,可以继续往下看。 2、原因分析 arguments 对象是所有(非箭头)函数中都可用的局部变量,它是一个 “Array-Like” 对象,即 “像数组的对象”的意思,有些文章中也会翻译成 “伪数组对象”

技术分享 | UUID 很火但性能不佳?今天我们细聊一聊

限于喜欢 提交于 2019-12-19 17:02:29
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 作者:Yves Trudeau 翻译:管长龙 Yves 是 Percona 的首席架构师,专门研究分布式技术,例如 MySQL Cluster,Pacemaker 和 XtraDB cluster。 他以前是 MySQL 和 Sun 的高级顾问。拥有实验物理学博士学位。 原文链接: https://www.percona.com/blog/2019/11/22/uuids-are-popular-but-bad-for-performance-lets-discuss/ 如果你在网上快速的做一个关于 UUID 和 MySQL 的搜索,你会得到相当多的结果。以下是一些例子: 存储 UUID 和 生成列 在 MySQL 中存储 UUID 的值 说明 InnoDB 中的主键模型及其对磁盘使用的影响 主键选型之战 UUID vs. INT GUID / UUID 的性能突破 到底需不需要 UUID? 另:以上文章链接请在文章结尾处查看 那么,像这样一个众所周知的话题还需要更多关注吗?显然是的。 尽管大多数帖子都警告人们不要使用 UUID,但它们仍然非常受欢迎。这种受欢迎的原因是,这些值可以很容易地由远程设备生成,并且冲突的概率非常低。这篇文章,目标是总结其他人已经写过的东西,并希望能带来一些新的想法。 UUID 是什么

Beetl性能再次测试

霸气de小男生 提交于 2019-12-19 15:45:32
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 在某个“新模板引擎”的基准测试增加Beetl,测试结果如下,可以看到Beetl还是很领先,每秒渲染80685次(我的机器是Mac Pro,Core I7) Benchmark Mode Cnt Score Error Units Beetl.benchmark thrpt 10 80685.217 ± 3056.314 ops/s Enjoy.benchmark thrpt 10 71429.555 ± 626.639 ops/s Freemarker.benchmark thrpt 10 22262.620 ± 917.084 ops/s Handlebars.benchmark thrpt 10 23077.234 ± 271.438 ops/s Mustache.benchmark thrpt 10 25899.922 ± 235.957 ops/s Pebble.benchmark thrpt 10 43756.295 ± 1816.826 ops/s Rocker.benchmark thrpt 10 49089.556 ± 693.635 ops/s Thymeleaf.benchmark thrpt 10 6998.717 ± 160.461 ops/s Trimou.benchmark

Twemproxy和Redis性能压力测试

前提是你 提交于 2019-12-07 01:35:54
性能测试 Redis自带了一个叫 redis-benchmark的工具来模拟N个客户端同时发出M个请求,(类似于Apache ab程序),你可以使用redis-benchmark -h来查看基准参数。 Usage: redis-benchmark [-h ] [-p ] [-c ] [-n [-k ] -h #指定服务器名称(default 127.0.0.1); -p #指定服务器端口(default 6379); -s #指定服务器Socket(overrides host and port); -a #指定Redis密码; -c #指定并行客户端数量 (default 50); -n #指定总的请求数量(default 100000); -d #指定SET/GET一次数据大小 (default 2 Bytes); -dbnum #选择指定的数据库(default 0); -k #保持一个连接,一台服务器来处理这些请求 (default 1); -r #设置随机Key; -P #Pipeline requests. Default 1 (no pipeline). -q #显示每秒钟能处理多少请求数结果; --csv #输出为CSV格式; -l #Loop. Run the tests forever. -I #Idle mode. Just open N idle

jmeter压测和redis压测

时光毁灭记忆、已成空白 提交于 2019-12-07 01:35:42
一、jmeter 压测 1、录好 jmx(如果模拟多个用户操作,需要修改里面的文件路径) 2、命令行 sh jmeter.sh -n -t XXX.jms -l result.jtl 3、把 result.jtl 导入到 jmeter 二、redis压测 文档:http://www.redis.cn/topics/benchmarks.html 1、100个并发,100000个请求 redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000 2、存取大小为100字节的数据包 redis-benchmark -h 127.0.0.1 -p 6379 -q -d 100 3、测试指定命令的性能 redis-benchmark -h 127.0.0.1 -p 6379 -t set,lpush -n 100000 -q 4、测试指定命令的性能 redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')" 来源: oschina 链接: https://my.oschina.net/u/3777515/blog/1841437

CentOS7 ab压力测试安装与解释

送分小仙女□ 提交于 2019-12-06 22:33:28
原 CentOS7 ab压力测试安装与解释 2017年11月10日 18:43:25 moTzxx 阅读数:4889更多 个人分类: Centos7 版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011415782/article/details/78501799 背景 Apache Benchmark(简称ab) 是Apache安装包中自带的压力测试工具 ,简单易用 在此提供 ab 在 centOS7 下的安装和使用方法 注:个人发现,之前安装的centos6.5 默认已安装了ab,具体原因不明 ①.ab(apache benchmark)安装 命令: yum -y install httpd-tools ②.ab测试的命令参数 命令: ab 或 ab -help 显示命令参数如下 ab [可选的参数选项] 需要进行压力测试的url 参数说明: 此外,我们再根据上面的用法介绍界面来详细了解每个参数选项的作用。 -n 即requests,用于指定压力测试总共的执行次数。 -c 即concurrency,用于指定的并发数。 -t 即timelimit,等待响应的最大时间(单位:秒)。 -b 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。 -p 即postfile,发送POST请求时需要上传的文件,此外还必须设置

go benchmark 性能测试

ぃ、小莉子 提交于 2019-12-05 23:49:49
go 性能测试 基准测试 基准测试主要是通过测试CPU和内存的效率问题,来评估被测试代码的性能,进而找到更好的解决方案。 编写基准测试 func BenchmarkSprintf(b *testing.B){ num:=10 b.ResetTimer() for i:=0;i<b.N;i++{ fmt.Sprintf("%d",num) } } 基准测试的代码文件必须以_test.go结尾 基准测试的函数必须以Benchmark开头,必须是可导出的 基准测试函数必须接受一个指向Benchmark类型的指针作为唯一参数 基准测试函数不能有返回值 b.ResetTimer是重置计时器,这样可以避免for循环之前的初始化代码的干扰 最后的for循环很重要,被测试的代码要放到循环里 b.N是基准测试框架提供的,表示循环的次数,因为需要反复调用测试的代码,才可以评估性能 ➜ go test -bench=. -run=none BenchmarkSprintf-8 20000000 117 ns/op PASS ok flysnow.org/hello 2.474s 使用 go test 命令,加上 -bench= 标记,接受一个表达式作为参数, . 表示运行所有的基准测试 因为默认情况下 go test 会运行单元测试,为了防止单元测试的输出影响我们查看基准测试的结果,可以使用 -run=

mac系统安装redis

断了今生、忘了曾经 提交于 2019-12-05 22:13:35
1.下载 打开官网: https://redis.io/ Download---Stable---Download3.2.8,下载最新稳定版,这里是3.2.8 2.安装 下载完成后,打开命令行工具,执行解压命令 tar zxvf redis-3.2.8.tar.gz 将解压后文件夹放到/usr/local mv redis-3.2.8 /usr/local/ 切换到相应目录 cd /usr/local/redis-3.2.8/ 编译测试 sudo make test 编译安装 sudo make install 启动Redis redis-server 3.配置 在redis目录下建立bin,etc,db三个目录 sudo mkdir /usr/local/redis-3.2.8/bin sudo mkdir /usr/local/redis-3.2.8/etc sudo mkdir /usr/local/redis-3.2.8/db 把/usr/local/redis/src目录下的mkreleasehdr.sh,redis-benchmark, redis-check-rdb, redis-cli, redis-server拷贝到bin目录 cp /usr/local/redis-3.2.8/src/mkreleasehdr.sh . cp /usr/local/redis-3

BenchMark工具-JMH介绍

删除回忆录丶 提交于 2019-12-04 23:27:35
JMH是有OpenJDK开发的基准测试(Benchmark)工具。JMH可以为写基准测试和运行测试提供很好的支持。JMH在C oncurrent Benchmarks也提供很好的支持,可以说是多功能测试工具。JMH在2013被公布出来,现在最新版本到1.9。 JMH基本用法: JMH环境构建 1 使用maven工程,直接在项目中引入相应的jar包 <dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-core</artifactId> <version>${jmh.version}</version> </dependency> <dependency> <groupId>org.openjdk.jmh</groupId> <artifactId>jmh-generator-annprocess</artifactId> <version>${jmh.version}</version> <scope>provided</scope> </dependency> 2 或者直接用JMH的 archetype创建: mvn archetype:generate \ -DinteractiveMode=false \ -DarchetypeGroupId=org.openjdk.jmh \

mac下redis安装、设置、启动停止

好久不见. 提交于 2019-12-04 09:08:39
常用命令说明 redis服务器:redis-server redis客户端:redis-cli redis性能测试工具:redis-benchmark AOF文件修复工具:redis-check-aof RDB文件修复工具:redis-check-rd redis设置临时密码:config set requirepass 密码 redis获取临时密码:config get requirepass 启动和停止 服务端启动 默认启动 如上,在命令redis-server即启动redis服务端。且接受客户端连接 根据设置启动 在 /usr/local/redis目录下建立bin,etc,db三个目录 把/usr/local/redis/src目录下的mkreleasehdr.sh,redis-benchmark, redis-check-rdb, redis-cli, redis-server拷贝到bin目录 在etc下,新建配置redis.conf,内容如下。 /usr/local/redis下新建日志文件log-redis.log,并修改当前用户使用权限。sudo chown -R shoren /usr/local/redis/ 启动服务端:redis-server /usr/local/redis/etc/redis.conf #修改为守护模式 daemonize yes