BeetleX自定义http/websocket压测用例视频

        虽然BeetleX扩展了tcp/websocket/webapi压测工具(工具下载可以访问https://github.com/beetlex-io/TCPBenchmarks),但测试工具都是针对消息定义来进行测试,很难整合完整的业务流程;如果能写代码那BeetleX组件提供一个测试组件可以更好地完成针对业务流程的压力测。

        NetBenchmark工具是基于Beetlex扩展的网络服务测试组件,它提供了tcp/websocket/webapi的调用方法,通过相关方法可以把业务流的访问进行一个组装并压测。

功能方法

        组件提供了几个简单的功能方法,通过这些方法可以定义tcp/websocket/webapi的压力测试用例。

    public class Benchmark
    {
        public Benchmark();


        public static Runner Http<Token>(Uri host, int connections, Func<IHttpHandler, Token, Task> handler) where Token : new();
        public static Runner Tcp<Packet, Token>(string host, int port, int connections, Func<AwaiterClient, Token, Task> handler)
            where Packet : IClientPacket, new()
            where Token : new();
        public static Runner Websocket<Token>(Uri host, int connections, Func<WSClient, Token, Task> handler) where Token : new();
        public static Runner WebsocketJson<Token>(Uri host, int connections, Func<JsonClient, Token, Task> handler) where Token : new();
        public static Runner WebsocketText<Token>(Uri host, int connections, Func<TextClient, Token, Task> handler) where Token : new();
    }

以下是简单的websocket测试用例定义并运行

    class Program
    {
        static void Main(string[] args)
        {
            var runer = NetBenchmark.Benchmark.WebsocketText<Program>(new Uri("ws://192.168.2.19"), 100,
                async (ws, token) =>
                {
                    ws.Send("beetlex.io");
                    await ws.Receive();
                });
            runer.Run();
            runer.Print();
        }
    }

使用视频

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值