目录
测试环境
测试数据集(Dataset)
测试结果
结论
首页 数据库 mysql教程 Drupal7的Field Storage性能测试报告(译)

Drupal7的Field Storage性能测试报告(译)

Jun 07, 2016 pm 04:37 PM
storage 性能 报告 测试

本篇是关于Drupal7下Field Storage的测试结果,以及不同情况下对 drupal 性能的影响,主要是MySQL和MongoDB以及在调优参数情况和不调优情况下的对比。 本篇翻译自 《Field Storage Tests with Drupal 7》 链接地址: http://posulliv.github.io/2013/01/07/b

本篇是关于Drupal7下Field Storage的测试结果,以及不同情况下对drupal性能的影响,主要是MySQL和MongoDB以及在调优参数情况和不调优情况下的对比。
本篇翻译自 《Field Storage Tests with Drupal 7》
链接地址: http://posulliv.github.io/2013/01/07/bench-field-storage/

测试环境

EC2 EBS backed Large instance (8GB of memory) in the US-EAST availability zone
Ubuntu 12.04 (ami-fd20ad94 as listed in official ubuntu AMI’s)
MySQL 5.5.28
PostgreSQL 9.2
MongoDB 2.0.4
Drupal 7.17
Drush 5.1
Migrate 2.5

测试的case是分别对MySQL和PostgreSQL进行调优和没有调优,以及配合MongoDB下进行的,具体的优化参数这里先列举一下。

MySQL的优化参数如下:

innodb_flush_log_at_trx_commit=0
innodb_doublewrite=0
log-bin=0
innodb_support_xa=0
innodb_buffer_pool_size=6G
innodb_log_file_size=512M
登录后复制

PostgreSQL的优化参数如下:

fsync = off
synchronous_commit = off
wal_writer_delay = 10000ms
wal_buffers = 16MB
checkpoint_segments = 64
shared_buffers = 6GB
登录后复制

测试数据集(Dataset)

测试数据集来自于migrate_example_baseball,现在已经是migrate模块(Drupal官网地址: http://www.drupal.org/project/migrate)的一部分了,这些数据包括了美国职业棒球大联盟2000到2009年的数据,每年的数据在一个CSV文件里面。

测试结果

测试环境 平均吞吐率
Default MySQL 1932 nodes / minute
Default PostgreSQL 1649 nodes / minute
Tuned MySQL 3024 nodes / minute
Tuned PostgreSQL 1772 nodes / minute
Default MySQL with MongoDB 4609 nodes / minute
Default PostgreSQL with MongoDB 4810 nodes / minute
Tuned MySQL with MongoDB 7671 nodes / minute
Tuned PostgreSQL with MongoDB 5911 nodes / minute

Drupal 7 Field Storage Test

结论

一目了然,结果自然不必说,MongoDB的性能肯定比默认数据库的Field Storage要好很多,优化过的数据库肯定比没有优化过的数据库性能要好很多。
不过比较有意思的是,PostgreSQL的测试数据,我们发现,在Drupal7的Field Storage机制里,每个字段都会新建表的机制,对PostgreSQL的影响还是非常大的。因此,用不用MongoDB,对PostgreSQL数据库的影响更大一些。

接下一篇关于Field Storage的测试,请点击查看:
《Drupal7 Field Storage性能之Field SQL Norevisions》

其他问题,请到Drupal大学提问 >

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

加入全新仙侠冒险!《诛仙2》'无为测试”预下载开启 加入全新仙侠冒险!《诛仙2》'无为测试”预下载开启 Apr 22, 2024 pm 12:50 PM

新派幻想仙侠MMORPG《诛仙2》“无为测试”即将于4月23日开启,在原著千年后的诛仙大陆,会发生怎样的全新仙侠冒险故事?六境仙侠大世界,全日制修仙学府,自由自在的修仙生活,仙界中的万般妙趣都在等待着仙友们亲自前往探索!“无为测试”预下载现已开启,仙友们可前往官网下载,开服前无法登录游戏服务器,激活码可在预下载安装完成后使用。《诛仙2》“无为测试”开放时间:4月23日10:00——5月6日23:59诛仙正统续作全新仙侠冒险篇章《诛仙2》以《诛仙》小说为蓝图,在继承原著世界观的基础上,将游戏背景设

不同Java框架的性能对比 不同Java框架的性能对比 Jun 05, 2024 pm 07:14 PM

不同Java框架的性能对比:RESTAPI请求处理:Vert.x最佳,请求速率达SpringBoot2倍,Dropwizard3倍。数据库查询:SpringBoot的HibernateORM优于Vert.x及Dropwizard的ORM。缓存操作:Vert.x的Hazelcast客户机优于SpringBoot及Dropwizard的缓存机制。合适框架:根据应用需求选择,Vert.x适用于高性能Web服务,SpringBoot适用于数据密集型应用,Dropwizard适用于微服务架构。

PHP 数组键值翻转:不同方法的性能对比分析 PHP 数组键值翻转:不同方法的性能对比分析 May 03, 2024 pm 09:03 PM

PHP数组键值翻转方法性能对比表明:array_flip()函数在大型数组(超过100万个元素)下比for循环性能更优,耗时更短。手动翻转键值的for循环方法耗时相对较长。

C++中如何优化多线程程序的性能? C++中如何优化多线程程序的性能? Jun 05, 2024 pm 02:04 PM

优化C++多线程性能的有效技术包括:限制线程数量,避免争用资源。使用轻量级互斥锁,减少争用。优化锁的范围,最小化等待时间。采用无锁数据结构,提高并发性。避免忙等,通过事件通知线程资源可用性。

不同语言的函数测试与覆盖率有什么区别? 不同语言的函数测试与覆盖率有什么区别? Apr 27, 2024 am 11:30 AM

函数测试通过黑盒和白盒测试验证函数功能,而代码覆盖率衡量了测试用例覆盖的代码部分。不同语言(如Python和Java)的测试框架、覆盖率工具和特性不同。实战案例展示了如何使用Python的Unittest和Coverage以及Java的JUnit和JaCoCo进行函数测试和覆盖率评估。

PHP函数的性能如何? PHP函数的性能如何? Apr 18, 2024 pm 06:45 PM

不同PHP函数的性能对应用程序效率至关重要。性能较好的函数包括echo、print,而str_replace、array_merge、file_get_contents等函数性能较慢。例如,str_replace函数用于替换字符串,性能中等,而sprintf函数用于格式化字符串。性能分析表明,执行一个示例仅需0.05毫秒,证明了函数性能良好。因此,明智地使用函数可以构建更快、更高效的应用程序。

C++ 静态函数的性能考虑有哪些? C++ 静态函数的性能考虑有哪些? Apr 16, 2024 am 10:51 AM

静态函数性能考虑如下:代码大小:静态函数通常更小,因为不包含成员变量。内存占用:不属于任何特定对象,不占用对象内存。调用开销:更低,无需通过对象指针或引用调用。多线程安全:通常线程安全,因为不依赖于类实例。

golang函数闭包在测试中的作用 golang函数闭包在测试中的作用 Apr 24, 2024 am 08:54 AM

Go语言函数闭包在单元测试中发挥着至关重要的作用:捕获值:闭包可以访问外部作用域的变量,允许在嵌套函数中捕获和重用测试参数。简化测试代码:通过捕获值,闭包消除了对每个循环重复设置参数的需求,从而简化了测试代码。提高可读性:使用闭包可以组织测试逻辑,使测试代码更清晰、更易于阅读。

See all articles