Beetlex之tcp/tls服务压测工具

        在编写tcp服务的时候经常需要对服务的基础性能进行一个压力测试,虽然网上这些工具有很多,但具备使用方便和高强度的测试工具则不多。为了方便这方面的高强度压测所以在beetlex的基础扩展这样一个工具。

安装

        可以访问https://github.com/beetlex-io/TCPBenchmarks 下载最新版本工作,工具可以运行在linux和windows系统,安装完成后通过浏览器访问相关服务进行操作。

操作

        工具提供的操作很简单,只需要简单地添加服务和发送的消息即可对服务进行一个压力测试。具体操作界面如下:

测试方式

        工具提供两种测试方式,分别是:请求响应和间隔两种模式。前者是工具收到响应后马上进行下一次数据发送;后者则是每隔指定时间向服务端发送数据。 本地IP选项主要告诉工具由那个IP发起请求,如果测试的连接太多单个IP的端口数满足不了测试的情况下,请根据连接数量来选择多个IP地址。测试工具占用的端口是10000-60000。

高吞吐压测

        如果服务端在局域网想测试高吞吐交互则可以选用请求响应模式,这种模式可以具备高强度的压测效果;注意这种测试模式不适合采用大量在连接,只需要适当的连接数量即可。以下用200连接对2K数据进行一个高吞吐测试。

通过测试结果可以看到测的IO读写量和相应的总带宽数。

高连接数压测

        有些情况只观察大量在线的情况,不太关注极限吞吐的能力。这个时候就设置较大的连接数,测试模式选择间隔,然后设置间隔发送的时间。接下来进行一个10W在线尝试每2秒发送一个4K数据包的情况。

使用视频 

【BeetleX通讯框架代码详解】
【WebApi示例扩展】
BeetleX

开源跨平台通讯框架(支持TLS)
轻松实现高性能:tcp、http、websocket、redis、rpc和网关等服务应用

https://beetlex.io

如果你想了解某方面的知识或文章可以把想法发送到

henryfan@msn.com|admin@beetlex.io

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/306191.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java自动随机字符_java随机字符生成工具

以下是我自己在工作中常用到的,比较好用,分享给大家。package org.phoenix.api.utils;import java.io.UnsupportedEncodingException;import java.util.Random;import java.util.concurrent.ThreadLocalRandom;/*** 随机字符工具类* author mengfeiyang*…

GraphQL:DataLoader的神奇

GraphQL 既是一种用于 API 的查询语言也是一个满足你数据查询的运行时。GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进&#xff0c…

java点击关闭弹出窗口_java – JPopupMenu在子弹出窗口打开时关闭

不可能直接,它很难覆盖已知的bug,在其他手中Swing不允许同时有两个lightwieght弹出组件import javax.swing.*;import java.awt.event.*;public class Test {public static void main(String[] args) {JFrame frame new JFrame();frame.setSize(400, 400);frame.setVisible(tru…

【Azure Show】|第九期 “我的计算机入门之路” 嘉宾秦婷婷汪宇杰文轩

欢迎来到Azure Show!Azure Show欢迎来到Azure Show 第九期!继上期【搭上AI快车】为大家带来数位微软技术专家于各自IT技术领域的经验分享,有2400多人在线上通过b站看了这个特辑的直播,非常非常感恩!本期继续和广州图书馆合作&…

java的scanner的方法_Java Scanner reset()方法

Java Scanner reset()方法java.util.Scanner.reset() 方法重置该扫描仪。重设scanner 丢弃所有的这些可能已被useDelimiter(java.util.regex.Pattern)的调用改变其明确的状态信息,useLocale(java.util.Locale),或useRadix(int)。1 语法public Scanner re…

Abp vNext 后台作业hangfire

概述ABP vNext 提供了后台工作者和后台作业的支持,基本实现与原来的 ABP 框架类似,并且 ABP vNext 还提供了对 HangFire 和 RabbitMQ 的后台作业集成。开发人员在使用这些第三方库的时候,基本就是开箱即用,不需要做其他复杂的配置…

如何在 C# 中使用 委托

委托是一个类型安全的函数指针,它可以引用与委托具有相同签名的方法,你可以利用 委托 实现事件或者回调函数,多播委托 可以引用一个或者多个具有相同签名的方法。理解 委托 本质上来说,委托包含了一个对方法的引用,概念…

java发送会议邀请邮件模板_Spring 发送邮件 HTML邮件

[java 代码 import java.security.Security; import java.util.Date; import java.util.HashMap; import java.util.Map; import java.u用到的JAR包:spring.jarmail.jaractivation.jarcommons-logging.jarlog4j-1.2.15.jarMimeMessage由发送器创建&…

java语言怎样判断文件夹_JAVA语言之如何判断文件,判断文件夹是否存在的代码...

本文主要向大家介绍了JAVA语言之如何判断文件,判断文件夹是否存在的代码,通过具体的内容向大家展示,希望对大家学习JAVA语言有所帮助。一、判断文件是否存在,不存在则创建File file new File("d:\\test.txt");if (!fil…

调试实战 | 通过转储文件分析程序无响应之使用 windbg + IDA 逆向篇

缘起 最近,接连在项目中遇到了两个界面无响应的问题。都只发生在客户特定机器上,不方便直接调试,只能抓取 dump 进行事后分析了。抓取 dump 远程连上可以重现问题的机器,使用 process explorer 初步观察卡死的进程,发现…

跟我一起学Redis之高可用从主从复制开始

前言现在遇到高并发场景时,缓存技术应该算是性能优化的第一步,缓解数据库压力的同时还能提高访问效率,而Redis应该是绝大多数应用场景的首选。但是尽快Redis性能再优秀,在当今高并发场景下,一台服务器负责读写&#xf…

【.Net core】EFCore——Code First生成数据库与表

Code First——领域设计模式中非常有用。使用 Code First 模式,专注于领域设计,创建领域类,然后生成数据库。1.创建数据模型类一般就是数据库里面有哪些表,就创建哪些模型, POCO 类就够了。public partial class SmsPu…

mysql 备份配置文件_mySQL配置文件、备份与恢复

mysql配置文件mysql的配置文件为/etc/my.cnf配置文件查找次序:若在多个配置文件中均有设定,则最后找到的最终生效/etc/my.cnf --> /etc/mysql/my.cnf --> --default-extra-file/PATH/TO/CONF_FILE --> ~/.my.cnfmysql常用配置文件参数&#xff…

oracle java写目录权限_oracle分配权限 学习笔记--转载

在全局数据库ORCL下创建一个用户首先在开始--》运行——》sqlplus,然后输入 sys/change_on_install as sysdba以sys权限登陆进去然后可以进行操作:创建用户 create user test indentified by test;这样就创建了一个用户名密码都为test的用户但这个时候te…

龙芯.NET正式发布 开源共享与开发者共成长

2020年12月19日,2020中国. NET开发者大会于苏州盛大开幕。本次大会以“开源、共享、创新”为主题,以线下城市苏州为中心,覆盖北京、上海、深圳、广州、长沙、成都、厦门、胶东等地区,是中国 .NET 开发者的大聚会,线上线…

划入 .NET 6版本目标,微软鼓励开发人员信任第三方库

喜欢就关注我们吧!鉴于许多 .NET 社区的开发人员都不愿意使用非微软官方打造的库,近日,微软 .NET Framework 团队的项目经理 Immo Landwerth 发布了一个名为”Growing the .NET ecosystem“的文档,以鼓励 .NET 开发人员加强对第三…

归并排序 java 迭代_经典排序算法之归并排序(示例代码)

归并排序(英语:Merge sort,或mergesort),是创建在归并操作上的一种有效的排序算法,效率为(大O符号)。1945年由约翰冯诺伊曼首次提出。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用,且各层分治递归可以…

新鲜高频笔面试题分享,Redis、MongoDB、ElasticSearch...

2020年可能是最短的一年,上班没几个月就发现要元旦了;2020年可能是最难的一年,各种降薪被离职风波;然而好消息是,2021年马上来了,跳槽季也要来了,一起开始备战吧,新年薪资up up&…

java读取整数列表_Java-检查整数列表中的X类整数

由于我没有足够的声誉来编辑我的文章,下面是我的答案gblodgett:嘿!谢谢你的回复。我正在做一个法克尔的游戏,因此我需要找出有多少1,2,3,4,5,6在列表中,然后给分(遵循规则)。我做了一个代码,似乎工作,尽管必须有一个更有效的方法来做。请随便看一看并给我一些反馈:公共int calc…

在 Windows 服务中托管 ASP.NET Core

概述众所周知,ASP.NET Core采用了和传统ASP.NET不同的托管和HTTP处理方式,即把服务器和托管环境完全解耦。ASP.NET Core内置了两个HTTP服务器实现,一个是基于libuv实现的Kestrel(支持跨平台),一个是基于Win…