techempower是一个Web Framework Benchmarks测试平台,世界上各大Web框架都参与其中,当然BeetleX也不例外。接下来的几篇文章中讲述aspcore使用怎样的方式在这评测中获取相对比较高的分数;而BeetleX使用了这些技巧之后也在是近测中获取的前10,仅次于aspcore,努力总会有回报相信在不久就能越aspcore。

以上是 2021-01-28的测试结果。如果你也是写Web框架,也希望能在techempower获取不错的得分,那这一系列的讲解对你来说一定有很大的帮助。

划重点

techempower会对Web框架进行多项功能测试,你需要获取综合评分那就必须所有测试项都要完成才能得取综合排名。但测试的规则就如同我们的考试一样,并不是每项的测试分数都一样的。你是全能冠军那没什么需要注意的,否则需要考虑那个项的占比重和投入回报比了。

以上是多项测试的权重占比情况,在占比低的项中即使投入大量的时间拿了很高的分数也没有多大意义。从上面权重分配表来看,你只需要在DATA UPDATES和MULTIPLE QUERIES中付出少量的时间即可获取一个不错的分数;对于PLAINTEXT即使拿个第一也不会对着综合分数带来很大的影响,毕竟权重分太低了,投入的时间优化收益比非常低。

理清规则

测试项权重比知道了,同样测试规则也需要了解清楚;相信大家都知道不同规模的代码测试出来的性能结果总是有差异的,对于techempower来说它不关心测试框架的规模,主要测试的输入和输出是否满足它的要求即可;如果你想一份代码就能得到一个综合好的评分很难在这里获取好的排名,毕竟不同场景都有针对性代码优化。

aspcore为了在这里得到更好的排名也是使用多种测试实现的策略,测试的规模有aspcore,aspcore-mv和aspcore-mvc;如果用实际应用所使用的aspcore-mvc那我相信很难排到前50名。Beetlex为了得到排名同样也使用了这种策略机制,分别使用了beetlex和beetlex-core两种不同复杂度的框架进行测试拿分。

代码技巧

有时候为了获取比较高的分数需要一些非常正常的代码手段,简单来说这些编写方式在实际应用比较少用,都为了当前测试需求而编写;虽然这些技巧对测试结果不会有一个质的飞跃,但对测试结果的提升还是有很大帮助;这些描述包括有控制线程队列,合并IO,对象池等等。

总结

在后面的文章中会针对以上几点对相关测试用例进行一个分析和讲解,了解一下aspcore是如何通过不同方式来应对techempower测试。最终你会发现凭借那几点即可以得到一个不错的测试成绩。

BeetleX

开源跨平台通讯框架(支持TLS)
提供高性能服务和大数据处理解决方案

https://beetlex.io

techempower拿分系列之aspcore分析相关推荐

  1. python机器学习案例系列教程——关联分析(Apriori、FP-growth)

    全栈工程师开发手册 (作者:栾鹏) python数据挖掘系列教程 关联分析的基本概念 关联分析(Association Analysis):在大规模数据集中寻找有趣的关系. 频繁项集(Frequent ...

  2. [循证理论与实践] meta分析系列之一: meta分析的类型

    证据是循证医学( Evidence-based medcine,EBM) 的核心,基于随机对照试验( RCT) 的系统评价/meta分析是当前 公认的最高级别证据. meta分析在医学领域应用最为广泛 ...

  3. 三星s6 html5测试分数,vivos6跑分成绩多少性能怎么样 vivos6手机安兔兔跑分及性能实测分析...

    vivos6跑分成绩多少?vivos6性能怎么样?对于最新发布的高颜值vivos6手机,很多的女生用户可是非常的喜欢,而且性价比也非常的高,但是vivos6手机的性能到底怎么样?vivos6手机跑分成 ...

  4. SonarQube系列二、分析dotnet core/C#代码

    来源:https://www.cnblogs.com/7tiny/p/11342902.html [前言] 本系列主要讲述sonarqube的安装部署以及如何集成jenkins自动化分析.netcor ...

  5. 生存分析彭非_21世纪统计学系列教材 生存分析_11396967.pdf

    21世纪统计学系列教材生存分析_11396967高清电子书图书扫描版本文档PDF [General Information] 书名=21世纪统计学系列教材 生存分析 作者=彭非,王伟编著 页数=510 ...

  6. Hadoop实战系列之MapReduce 分析 Youtube视频数据

    Hadoop实战系列之MapReduce 分析 Youtube视频数据 一.实战介绍 MapReduce 是 Hadoop 的计算框架. 在运行一个 MR 程序时,任务过程被分为两个阶段:Map 阶段 ...

  7. DL之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析)、使用方法(NLP领域/CV领域)、案例应用之详细攻略

    DL之Transformer:Transformer的简介(优缺点/架构详解,基于Transformer的系列架构对比分析).使用方法(NLP领域/CV领域).案例应用之详细攻略 目录 Transfo ...

  8. MySQL系列-高级-性能分析工具-EXPLAIN

    MySQL系列-高级-性能分析工具-EXPLAIN 1. EXPLAIN概述 1.1 官网介绍 1.2 EXPLAIN 基本语法 2. 基于函数和存储过程插入数据 2.1 创建表 2.2 创建函数和过 ...

  9. 蓝牙App系列漏洞原理分析与漏洞利用

    蓝牙App系列漏洞原理分析与漏洞利用 作者: heeeeen 本文系转载,目的是学习,如有侵权,请联系删除 转载出处:http://www.ms509.com/ 蓝牙App漏洞系列分析之一CVE-20 ...

最新文章

  1. 【组队学习】【33期】Scratch(一级)
  2. android课程设计录音机,[转载]数字录音机(微机原理与接口技术-课程设计)
  3. 【小程序】汇编实现判断回文
  4. qlineedit文本改变时_行文本编辑框QLineEdit及自动补全
  5. 实现键盘录入的第二种方式。。。。。
  6. LeetCode每日一题 530. 二叉搜索树的最小绝对差
  7. 生产环境中Oracle常用函数总结
  8. Dispatch Queue 之 Invoke 当前队列
  9. linux进入mongodb数据库命令,MongoDB 常用数据库命令,命令是如何工作的这里
  10. 读《C++ Primer(第三版)》的一些疑问(不断更新)
  11. 【shell实例】定时21:00-21:05,循环调用DSQL脚本,其它时段自动退出
  12. Ubuntu上通过FinalShell或Asbru访问CentOS虚拟机
  13. 双侧检验的p值和单侧检验_假设检验03----假设检验的步骤
  14. uva 1329(加权并查集)
  15. 【转】用instruments来检验你的app
  16. 基于asp.net的在线问卷调查系统
  17. Go语言utf8汉字字符串截取处理小记
  18. 基于51单片的电风扇系统
  19. EAUML日拱一卒--序列图(Sequence Diagram)::生命周期
  20. windows启动盘

热门文章

  1. SparkSession.read().csv()无法定位本地文件的问题
  2. mysql数据库三大引擎优缺点
  3. [function.require]: Failed opening required 杰奇cms
  4. python简单开发接口
  5. linux守护进程的编写
  6. boost asio resolver
  7. mediawiki 搭建
  8. linux去掉某一字符开头的行
  9. LOOP WITH CONTROL 用法
  10. 盗窃60秒java_EOS节点投票60秒刷新一次 EOS Asia 金马(下) 欧链·宁话区块链 EOS超级节点访谈...