建站教程

建站教程

Products

当前位置:首页 > 建站教程 >

深度评测 | 阿里云RDS MySQL和AWS RDS谁的性能更胜一筹?(WordPress获取所有文章类型函数:get_post_types)

GG网络技术分享 2025-03-18 16:13 6


深度评测 | 阿里云RDS MySQL和AWS RDS谁的性能更胜一筹?

MySQL代表了开源数据库的快速发展。

从2004年前后的Wiki、WordPress等轻量级Web 2.0应用起步,到2010年阿里巴巴在电商及支付场景大规模使用MySQL数据库,再到2012年开始阿里云RDS for MySQL为成千上万家客户提供可靠的关系数据库服务,阿里云RDS积累了来自内外部功能、性能、安全方面的众多需求,打造了面向企业场景的AliSQL分支,包含了丰富企业级数据库特性:

DynamicThreadPool(DTP):在内核中动态管理数据库线程池,通过有限资源持续支撑大量创建数据库连接请求,维持高效稳定的请求处理能力。

IndexMutexTuning(IMT):通过IMT优化大大降低索引节点分裂成本,大大提升类TPCC场景处理能力,在全内存的测试中,单机达到了39W的TpmC,相对于原生版本提升35-50%不等。

TDE&SM4:全新优化的TDE数据加密,并且支持国产加密算法SM4。

PerformanceInsight:针对数据库SQL性能扩展多方面信息,包括表统计信息、索引统计信息、SQL单次性能数据、IO统计信息和关键性能数据输出等。

AsyncFilePurge:优化大表删除,有效降低系统IO抖动影响。

SlowLogRotate:对慢日志设计切换机制,可有效降低大量慢日志造成的不稳定影响。

SQLOutline:通过Hint优化SQL语句执行计划,可保障在各种环境变化中SQL执行计划不变,如大版本升级、统计信息变更等。

StatementConcurrencyControl(SCC):DBA可通过SCC干预系统语句执行,对具体SQL限流控制并发度,紧急状态保障数据库稳定运行。

DDLRecycleBin:内核中增加回收站,防止误执行DROPTABLE/TRUNCATE TABLE造成的不可挽回的损害。

AWS作为全球云市场的标杆,是其他云厂商不断追赶的目标。十年磨一剑,阿里巴巴MySQL数据库历经十年的发展后,阿里云RDS MySQL和AWS RDS相比,性能上谁会更胜一筹?本文将一测究竟。

01、测试概述

本测试对比了阿里云RDS通用型实例(5.7/8.0版本)和AWS RDS通用T3型实例,在OLTP读写混合模型下的性能。测试使用了标准的sysbench 1.0工具,选择的规格是8核32GB规格数据库。测试场景选用的是内存命中型场景,250张表,每张表25000行数据。

测试结论是用同规格下性能最好的T3型AWS RDS 5.7/8.0和阿里云对应版本的RDS通用型实例对比,阿里云RDS通用型实例有绝对的优势,读写混合场景峰值QPS比AWS RDS高80%左右。

02、测试环境

(*点击查看大图)

AWS RDS通用型实例分为四种类型https://aws.amazon.com/cn/rds/instance-types/,前期实测下来,相同CPU核数和内存规格的情况下,T3型实例性能最好。选用的规格是t3.2xlarge,8个vCPU。

AWS RDS的主备同步不依赖binlog。同步方式的说明见:https://aws.amazon.com/cn/blogs/database/amazon-rds-under-the-hood-multi-az/。跨AZ的情况下,AWS RDS是同步写,所以对比测试中,阿里云RDS选用多可用区+半同步开启+默认严格参数模板。

03、测试数据

3.1 RDS 5.7读写混合场景

在不同并发条件下,阿里云RDS 5.7均较AWS性能占优。

阿里云RDS 5.7的峰值QPS比AWS高80.41%

(*点击查看大图)

3.2 RDS 8.0读写混合场景

在不同并发条件下,阿里云RDS 8.0均较AWS性能占优。

阿里云RDS 8.0的峰值QPS比AWS高77.88%

(*点击查看大图)

04、总结和展望

通过上述测试数据可以看出,阿里云RDS通用型实例相比于AWS RDS有较大的优势。阿里云数据库RDS MySQL在2020年将继续快速奔跑,除了性能以外,将继续围绕企业诉求,构建数据库核心能力,覆盖安全、可靠性、可用性、可扩展性等诸多方面。

Gartner预计,到2021年,云数据库在整个数据库市场中的占比将首次达到50%;而到2023年,75%的数据库要跑在云平台之上。

去年11月,国际知名调研机构Gartner公布2019年全球数据库魔力象限评选结果,阿里云成功进入“挑战者”象限,连续两年作为唯一的中国企业入选。

根据Gartner 统计数据,阿里云已经位居全球云数据库市场份额第三位以及中国市场第一位,年增长率达到116%。目前,已有超过40万个数据库实例迁移到阿里云上,包含政务、零售、金融、电信、制造、物流等多个领域的龙头企业。

只有保持一路快跑的势态,才能在日益严峻的竞争环境中持续领先,才能满足云上企业快速增长需求。阿里云数据库RDS MySQL一直走在前列。

WordPress获取所有文章类型函数:get_post_types

WordPress函数get_post_types用于获取所有文章类型信息。

get_post_types( array|string $args = array(), string $output = \\\'names\\\', string $operator = \\\'and\\\' )

函数参数

$args

数组或字符串

根据传递的参数返回符合条件的文章类型,以下示例只返回post:

get_post_types(array(\\\'name\\\'=>\\\'post\\\'), \\\'objects\\\')

$output

字符串,默认值:names

可用值:

  • names:返回的信息比较简洁;
  • objects:返回详细的文章类型数据。

$operator

字符串,默认值:and

要执行的逻辑操作

函数返回值

当$output的值为names,返回信息如下:

Array(    [post] => post    [page] => page    [attachment] => attachment    [revision] => revision    [nav_menu_item] => nav_menu_item    [custom_css] => custom_css    [customize_changeset] => customize_changeset    [oembed_cache] => oembed_cache    [user_request] => user_request    [wp_block] => wp_block)

当$output的值为objects,返回信息如下:

Array(    [post] => WP_Post_Type Object        (            [name] => post            [label] => 文章            [labels] => stdClass Object                (                    [name] => 文章                    [singular_name] => 文章                    [add_new] => 写文章                    [add_new_item] => 撰写新文章                    [edit_item] => 编辑文章                    [new_item] => 写文章                    [view_item] => 查看文章                    [view_items] => 查看文章                    [search_items] => 搜索文章                    [not_found] => 未找到文章。                    [not_found_in_trash] => 回收站中没有文章。                    [parent_item_colon] =>                     [all_items] => 所有文章                    [archives] => 文章归档                    [attributes] => 文章属性                    [insert_into_item] => 插入至文章                    [uploaded_to_this_item] => 上传到本文章的                    [featured_image] => 特色图像                    [set_featured_image] => 设置特色图像                    [remove_featured_image] => 取消特色图像                    [use_featured_image] => 设置为特色图像                    [filter_items_list] => 过滤文章列表                    [items_list_navigation] => 文章列表导航                    [items_list] => 文章列表                    [item_published] => 文章已发布。                    [item_published_privately] => 文章已私密发布。                    [item_reverted_to_draft] => 文章已恢复为草稿。                    [item_scheduled] => 文章已排入发布计划。                    [item_updated] => 文章已更新。                    [menu_name] => 文章                    [name_admin_bar] => 文章                )            [description] =>             [public] => 1            [hierarchical] =>             [exclude_from_search] =>             [publicly_queryable] => 1            [show_ui] => 1            [show_in_menu] => 1            [show_in_nav_menus] => 1            [show_in_admin_bar] => 1            [menu_position] => 5            [menu_icon] => dashicons-admin-post            [capability_type] => post            [map_meta_cap] => 1            [register_meta_box_cb] =>             [taxonomies] => Array                (                )            [has_archive] =>             [query_var] =>             [can_export] => 1            [delete_with_user] => 1            [_builtin] => 1            [_edit_link] => post.php?post=%d            [cap] => stdClass Object                (                    [edit_post] => edit_post                    [read_post] => read_post                    [delete_post] => delete_post                    [edit_posts] => edit_posts                    [edit_others_posts] => edit_others_posts                    [delete_posts] => delete_posts                    [publish_posts] => publish_posts                    [read_private_posts] => read_private_posts                    [read] => read                    [delete_private_posts] => delete_private_posts                    [delete_published_posts] => delete_published_posts                    [delete_others_posts] => delete_others_posts                    [edit_private_posts] => edit_private_posts                    [edit_published_posts] => edit_published_posts                    [create_posts] => edit_posts                )            [rewrite] =>             [show_in_rest] => 1            [rest_base] => posts            [rest_controller_class] => WP_REST_Posts_Controller            [rest_controller] =>         )    ......)

函数使用示例

$args = array(\\\'public\\\'   => true,\\\'_builtin\\\' => false);$output = \\\'names\\\';$operator = \\\'and\\\';$post_types = get_post_types( $args, $output, $operator );

扩展阅读

get_post_types()函数位于:wp-includes/post.php

相关函数:

  • wp_filter_object_list()
  • get_post_type_object()
  • get_post_type()

标签:

提交需求或反馈

Demand feedback