Giter VIP home page Giter VIP logo

bench-ws's Introduction

简介

if/else 工程师,个人兴趣=研究协议

开发环境

vscode + vim 模式

语言 go为主力,正在学习rust。

开源项目

协议

websocket

quickws 满足高tps场景的websocket协议库,包含客户端,服务端, 5800h cpu tps可以到47-48w/s

greatws 针对海量websocket链接特别优化,基于kqueue和epoll, 100w websocket连接,只需400-500MB内存(早期阶段)

TODO

。。。

util包

gout restful api和 http benchmark lib

clop 命令行解析器,只要会写struct,定义tag,轻松实现gnu 风格命令行

pcurl 解析curl命令库,生成*http.Request,让你的应用瞬间秒懂curl。

timer 基于5级时间轮实现的定时器,性能可观,fast, fast, fast

pcopy 高性能深度拷贝库。相比上个版本提升4-10倍性能

brouter 高性能http router库,API风格类似httprouter,比1.3.0的httprouter快50-60%的样子,比开发版本的httprouter慢一点,大约是 92-95%的性能

httparser 高性能http 1.1解析器,为你的异步io库插上http1.1解析的翅膀, 每秒可以处理630.15MB/s流量

bench-ws's People

Contributors

guonaihong avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

bench-ws's Issues

tps-数据

limpo1989.A机器

quickws.0:忽略第一个的成绩
1s:424626/s 2s:665929/s 3s:749439/s 4s:791409/s 5s:817370/s 6s:833468/s 7s:844036/s 8s:852378/s 9s:856967/s 10s:863055/s 11s:868130/s 12s:872418/s 13s:876401/s 14s:878874/s 15s:881614/s 16s:883628/s 17s:885876/s 
quickws.1:
1s:484312/s 2s:697016/s 3s:766364/s 4s:802175/s 5s:826361/s 6s:847223/s 7s:857816/s 8s:865200/s 9s:871588/s 10s:875985/s 11s:879190/s 12s:883508/s 13s:885814/s 14s:888082/s 15s:889805/s 16s:891090/s 17s:892368/s 
gws.2:
1s:560043/s 2s:729358/s 3s:781955/s 4s:808096/s 5s:826968/s 6s:839878/s 7s:847495/s 8s:855903/s 9s:859343/s 10s:862290/s 11s:865434/s 12s:868609/s 13s:870049/s 14s:872051/s 15s:873737/s 16s:875305/s 17s:876904/s 18s:876959/s 
gws-std.3:
1s:567607/s 2s:734162/s 3s:789408/s 4s:821992/s 5s:836667/s 6s:850333/s 7s:861250/s 8s:868337/s 9s:873293/s 10s:876059/s 11s:879619/s 12s:882591/s 13s:883176/s 14s:885835/s 15s:886611/s 16s:888143/s 17s:890210/s 
gorilla-linux-ReadMessage.4.1:
1s:286296/s 2s:444661/s 3s:507044/s 4s:540640/s 5s:555274/s 6s:563253/s 7s:571484/s 8s:577652/s 9s:584428/s 10s:587467/s 11s:591100/s 12s:594459/s 13s:597144/s 14s:600785/s 15s:602847/s 16s:604742/s 17s:606058/s 18s:606428/s 
gorilla-linux-UseReader.4.2:
1s:511501/s 2s:692386/s 3s:753035/s 4s:783320/s 5s:801374/s 6s:811884/s 7s:820888/s 8s:826992/s 9s:832886/s 10s:837658/s 11s:842280/s 12s:845754/s 13s:847584/s 14s:848585/s 15s:850090/s 16s:852107/s 17s:853758/s 18s:853651/s 
nettyws.5:
1s:529747/s 2s:705844/s 3s:771650/s 4s:801821/s 5s:821031/s 6s:832117/s 7s:839327/s 8s:847633/s 9s:852089/s 10s:855342/s 11s:859704/s 12s:862147/s 13s:864475/s 14s:865933/s 15s:867866/s 16s:868771/s 17s:870202/s 
gobwas.6:
1s:234636/s 2s:382999/s 3s:432794/s 4s:458346/s 5s:473420/s 6s:484353/s 7s:491078/s 8s:496945/s 9s:502361/s 10s:506489/s 11s:509529/s 12s:510435/s 13s:512543/s 14s:513698/s 15s:515243/s 16s:515795/s 17s:517313/s 
nbio-std.7:
1s:466460/s 2s:667427/s 3s:739744/s 4s:773999/s 5s:791056/s 6s:806980/s 7s:815562/s 8s:822499/s 9s:827858/s 10s:832346/s 11s:836135/s 12s:839041/s 13s:842223/s 14s:844670/s 15s:847335/s 16s:848614/s 17s:850948/s 18s:851075/s 
nbio-nonblocking.8:
1s:268767/s 2s:510809/s 3s:588145/s 4s:626699/s 5s:654363/s 6s:669045/s 7s:683051/s 8s:691284/s 9s:696243/s 10s:702066/s 11s:705771/s 12s:709416/s 13s:711269/s 14s:714563/s 15s:717487/s 16s:719261/s 17s:721852/s 18s:723738/s 
nbio-blocking.9:
1s:482472/s 2s:682763/s 3s:744555/s 4s:778190/s 5s:798407/s 6s:814704/s 7s:824109/s 8s:830391/s 9s:836023/s 10s:840401/s 11s:842814/s 12s:844622/s 13s:847808/s 14s:849048/s 15s:851331/s 16s:853486/s 17s:854863/s 
nbio-mixed.10:
1s:432256/s 2s:647123/s 3s:722613/s 4s:760294/s 5s:784748/s 6s:798117/s 7s:810530/s 8s:819469/s 9s:825740/s 10s:829910/s 11s:834250/s 12s:837753/s 13s:841330/s 14s:843499/s 15s:845877/s 16s:847358/s 17s:848980/s 
hertz.11:
1s:223249/s 2s:324504/s 3s:354576/s 4s:369974/s 5s:379028/s 6s:384333/s 7s:388339/s 8s:390516/s 9s:391929/s 10s:393482/s 11s:394271/s 12s:394940/s 13s:395791/s 14s:396339/s 15s:396644/s 16s:396838/s 17s:396947/s 18s:397173/s 19s:376519/s 20s:357693/s 21s:340688/s 22s:325202/s 23s:311063/s 24s:298102/s 25s:286178/s 26s:275171/s 27s:264979/s 28s:255516/s 29s:246712/s 30s:238489/s 31s:230795/s 32s:223583/s 
hertz-std.12:
1s:282754/s 2s:475741/s 3s:545586/s 4s:584511/s 5s:607733/s 6s:623986/s 7s:636190/s 8s:643944/s 9s:647417/s 10s:650372/s 11s:652353/s 12s:656036/s 13s:658070/s 14s:660504/s 15s:662528/s 16s:663915/s 17s:665513/s 
fasthttp-ws.13:
1s:242703/s 2s:440122/s 3s:508122/s 4s:540632/s 5s:559469/s 6s:572262/s 7s:584002/s 8s:590958/s 9s:596634/s 10s:599457/s 11s:601923/s 12s:605229/s 13s:608737/s 14s:609951/s 15s:612527/s 16s:614392/s 17s:615761/s 18s:617012/s 

limpo1989.B机器

quickws.0:忽略第一个的成绩
1s:370890/s 2s:546136/s 3s:607710/s 4s:632179/s 5s:648389/s 6s:656941/s 7s:665264/s 8s:671822/s 9s:676628/s 10s:681275/s 11s:684764/s 12s:688520/s 13s:690812/s 14s:691951/s 15s:693774/s 16s:694083/s 17s:695431/s 18s:695435/s
quickws.1:
1s:380537/s 2s:543326/s 3s:604346/s 4s:633863/s 5s:640450/s 6s:650319/s 7s:654897/s 8s:664067/s 9s:669046/s 10s:668144/s 11s:669627/s 12s:674094/s 13s:677551/s 14s:680132/s 15s:683335/s 16s:685896/s 17s:685727/s 18s:685183/s
gws.2:
1s:388992/s 2s:554838/s 3s:610307/s 4s:637223/s 5s:652786/s 6s:664897/s 7s:673441/s 8s:676319/s 9s:681477/s 10s:685375/s 11s:688757/s 12s:691595/s 13s:695192/s 14s:698294/s 15s:699610/s 16s:700524/s 17s:702284/s
gws-std.3:
1s:351746/s 2s:537024/s 3s:595417/s 4s:623252/s 5s:640574/s 6s:649666/s 7s:659900/s 8s:667097/s 9s:670057/s 10s:675919/s 11s:679397/s 12s:681625/s 13s:678064/s 14s:674296/s 15s:670040/s 16s:670018/s 17s:673736/s 18s:672484/s
gorilla-linux-ReadMessage.4.1:
1s:298067/s 2s:427056/s 3s:479181/s 4s:505465/s 5s:521277/s 6s:529997/s 7s:537039/s 8s:538293/s 9s:538288/s 10s:539531/s 11s:543128/s 12s:548662/s 13s:550189/s 14s:551044/s 15s:552892/s 16s:552862/s 17s:553903/s 18s:552525/s
gorilla-linux-UseReader.4.2:
1s:418643/s 2s:536101/s 3s:577353/s 4s:599881/s 5s:613966/s 6s:621968/s 7s:627808/s 8s:632587/s 9s:635292/s 10s:635701/s 11s:638730/s 12s:641046/s 13s:642994/s 14s:644369/s 15s:646224/s 16s:647275/s 17s:648164/s
nettyws.5:
1s:361988/s 2s:502956/s 3s:566226/s 4s:595850/s 5s:617506/s 6s:628559/s 7s:638224/s 8s:642767/s 9s:645846/s 10s:649669/s 11s:650257/s 12s:654624/s 13s:656175/s 14s:659219/s 15s:661403/s 16s:663442/s 17s:664744/s 18s:661928/s
gobwas.6:
1s:352194/s 2s:401445/s 3s:429976/s 4s:448114/s 5s:461321/s 6s:468045/s 7s:472306/s 8s:477424/s 9s:479721/s 10s:482750/s 11s:484422/s 12s:485864/s 13s:486469/s 14s:487719/s 15s:488619/s 16s:489792/s 17s:491175/s
nbio-std.7:
1s:322248/s 2s:492079/s 3s:540417/s 4s:571234/s 5s:590755/s 6s:608397/s 7s:620854/s 8s:624318/s 9s:625140/s 10s:624209/s 11s:623488/s 12s:622099/s 13s:622259/s 14s:620940/s 15s:620298/s 16s:621125/s 17s:619521/s 18s:617941/s
nbio-nonblocking.8:
1s:303977/s 2s:428770/s 3s:458946/s 4s:481885/s 5s:497765/s 6s:511257/s 7s:521230/s 8s:529160/s 9s:535614/s 10s:540836/s 11s:544396/s 12s:546648/s 13s:548649/s 14s:550856/s 15s:553328/s 16s:555330/s 17s:554895/s
nbio-blocking.9:
1s:370700/s 2s:520142/s 3s:571747/s 4s:581118/s 5s:600284/s 6s:614536/s 7s:622576/s 8s:631066/s 9s:637322/s 10s:642107/s 11s:645708/s 12s:648737/s 13s:653024/s 14s:653868/s 15s:655770/s 16s:657821/s 17s:659785/s 18s:659612/s
nbio-mixed.10:
1s:476954/s 2s:580186/s 3s:610590/s 4s:624895/s 5s:619887/s 6s:630910/s 7s:636551/s 8s:642110/s 9s:646612/s 10s:650786/s 11s:653323/s 12s:655316/s 13s:656893/s 14s:658287/s 15s:657695/s 16s:659157/s 17s:660514/s 18s:659591/s
hertz.11:
1s:161466/s 2s:211852/s 3s:228574/s 4s:237111/s 5s:241492/s 6s:243335/s 7s:245744/s 8s:247609/s 9s:248343/s 10s:249108/s 11s:250066/s 12s:250555/s 13s:251217/s 14s:251508/s 15s:251721/s 16s:252079/s 17s:252416/s 18s:251912/s 19s:238793/s 20s:226865/s 21s:216062/s 22s:206241/s 23s:197274/s 24s:189054/s 25s:181492/s 26s:174511/s 27s:168048/s 28s:162046/s 29s:156469/s 30s:151254/s 31s:146375/s 32s:141800/s
hertz-std.12:
1s:367618/s 2s:452054/s 3s:487478/s 4s:506108/s 5s:518913/s 6s:525966/s 7s:529862/s 8s:532306/s 9s:533586/s 10s:535893/s 11s:537456/s 12s:538718/s 13s:540028/s 14s:541671/s 15s:542386/s 16s:543365/s 17s:544107/s
fasthttp-ws.13:
1s:389861/s 2s:475975/s 3s:502641/s 4s:510354/s 5s:513877/s 6s:516891/s 7s:518677/s 8s:519835/s 9s:518719/s 10s:517562/s 11s:515906/s 12s:517725/s 13s:520102/s 14s:522114/s 15s:522646/s 16s:521145/s 17s:520267/s 18s:518275/s

guonaihong.A机器成绩

quickws.0:忽略第一个的成绩
1s:313068/s 2s:389056/s 3s:417478/s 4s:431029/s 5s:440088/s 6s:445722/s 7s:449257/s 8s:452608/s 9s:455005/s 10s:456908/s 11s:458640/s 12s:459916/s 13s:460498/s 14s:461529/s 15s:462352/s 16s:463055/s 17s:463642/s 18s:463579/s 
quickws.1:
1s:304634/s 2s:387463/s 3s:416143/s 4s:431297/s 5s:439730/s 6s:447722/s 7s:450923/s 8s:454143/s 9s:455810/s 10s:457593/s 11s:459475/s 12s:460245/s 13s:461577/s 14s:462460/s 15s:462920/s 16s:463709/s 17s:464193/s 
gws.2:
1s:305732/s 2s:389780/s 3s:419542/s 4s:433004/s 5s:443108/s 6s:449603/s 7s:453561/s 8s:456305/s 9s:457914/s 10s:459794/s 11s:461816/s 12s:463165/s 13s:464750/s 14s:465536/s 15s:466554/s 16s:466832/s 17s:467559/s 18s:467589/s 
gws-std.3:
1s:299970/s 2s:389041/s 3s:420580/s 4s:435822/s 5s:443812/s 6s:450387/s 7s:454677/s 8s:457205/s 9s:460176/s 10s:462449/s 11s:464003/s 12s:465087/s 13s:466167/s 14s:466933/s 15s:468733/s 16s:469195/s 17s:470060/s 18s:469897/s 
gorilla-linux-ReadMessage.4.1:
1s:254211/s 2s:317042/s 3s:339815/s 4s:350378/s 5s:357906/s 6s:362952/s 7s:366702/s 8s:369361/s 9s:370762/s 10s:371987/s 11s:373019/s 12s:374305/s 13s:375120/s 14s:375913/s 15s:377202/s 16s:377684/s 17s:378509/s 18s:378112/s 
gorilla-linux-UseReader.4.2:
1s:311877/s 2s:377858/s 3s:398867/s 4s:409972/s 5s:416281/s 6s:421312/s 7s:423316/s 8s:425987/s 9s:427724/s 10s:428943/s 11s:430462/s 12s:431159/s 13s:432414/s 14s:433106/s 15s:433671/s 16s:434011/s 17s:434238/s 18s:434489/s 
nettyws.5:
1s:312410/s 2s:384938/s 3s:411164/s 4s:423346/s 5s:431171/s 6s:435868/s 7s:438748/s 8s:441548/s 9s:444242/s 10s:446246/s 11s:447308/s 12s:448616/s 13s:450267/s 14s:451183/s 15s:451542/s 16s:452040/s 17s:452391/s 18s:452345/s 
gobwas.6:
1s:237234/s 2s:283298/s 3s:298947/s 4s:306009/s 5s:311021/s 6s:315263/s 7s:317536/s 8s:319222/s 9s:320630/s 10s:321689/s 11s:322494/s 12s:323031/s 13s:323372/s 14s:324013/s 15s:324367/s 16s:324759/s 17s:324911/s 18s:324928/s 
nbio-std.7:
1s:302241/s 2s:373338/s 3s:401829/s 4s:415367/s 5s:423890/s 6s:428888/s 7s:433989/s 8s:435858/s 9s:438982/s 10s:440737/s 11s:442856/s 12s:443227/s 13s:444996/s 14s:445556/s 15s:446227/s 16s:446954/s 17s:447192/s 
nbio-nonblocking.8:
1s:242248/s 2s:320767/s 3s:347682/s 4s:360023/s 5s:367289/s 6s:372310/s 7s:375553/s 8s:378394/s 9s:380717/s 10s:382373/s 11s:383803/s 12s:384978/s 13s:385885/s 14s:386672/s 15s:387213/s 16s:388062/s 17s:388511/s 18s:388987/s 
nbio-blocking.9:
1s:324156/s 2s:381828/s 3s:403689/s 4s:416394/s 5s:424291/s 6s:428940/s 7s:431663/s 8s:434863/s 9s:435953/s 10s:437603/s 11s:439673/s 12s:440793/s 13s:441320/s 14s:442264/s 15s:443374/s 16s:443338/s 17s:443710/s 18s:444105/s 
nbio-mixed.10:
1s:311931/s 2s:383745/s 3s:405900/s 4s:415628/s 5s:422491/s 6s:427881/s 7s:432601/s 8s:434462/s 9s:436749/s 10s:438288/s 11s:439526/s 12s:440751/s 13s:441240/s 14s:441670/s 15s:442307/s 16s:442543/s 17s:442948/s 18s:443225/s 
hertz.11:
1s:160384/s 2s:190650/s 3s:200633/s 4s:205401/s 5s:207823/s 6s:209905/s 7s:211036/s 8s:212045/s 9s:212743/s 10s:213265/s 11s:213757/s 12s:213999/s 13s:214301/s 14s:214533/s 15s:214694/s 16s:214786/s 17s:214929/s 18s:214750/s 19s:203737/s 20s:193550/s 21s:184333/s 22s:175954/s 23s:168304/s 24s:161291/s 25s:154840/s 26s:148884/s 27s:143370/s 28s:138250/s 29s:133482/s 30s:129033/s 
hertz-std.12:
1s:237175/s 2s:307505/s 3s:331970/s 4s:342339/s 5s:349431/s 6s:354293/s 7s:357577/s 8s:359639/s 9s:362946/s 10s:363838/s 11s:366120/s 12s:367046/s 13s:367950/s 14s:368370/s 15s:369353/s 16s:369491/s 17s:370286/s 
fasthttp-ws.13:
1s:255385/s 2s:322100/s 3s:342931/s 4s:353373/s 5s:359908/s 6s:363203/s 7s:366060/s 8s:368713/s 9s:370126/s 10s:372194/s 11s:373344/s 12s:374356/s 13s:374905/s 14s:375740/s 15s:376567/s 16s:377388/s 17s:377843/s 18s:377599/s 

guonaihong.B机器成绩

1s:343507/s 2s:419491/s 3s:444689/s 4s:456647/s 5s:464009/s 6s:468571/s 7s:473850/s 8s:475046/s 9s:476882/s 10s:478182/s 11s:478393/s 12s:479069/s 13s:479285/s 14s:479369/s 15s:479445/s 16s:480090/s 17s:480420/s 
quickws.1:
1s:357999/s 2s:418860/s 3s:440650/s 4s:453360/s 5s:461108/s 6s:465898/s 7s:469211/s 8s:470780/s 9s:472923/s 10s:473821/s 11s:474525/s 12s:475463/s 13s:476021/s 14s:476410/s 15s:477593/s 16s:477943/s 17s:478038/s 
gws.2:
1s:333886/s 2s:405853/s 3s:434975/s 4s:448664/s 5s:457195/s 6s:461753/s 7s:465995/s 8s:468062/s 9s:470393/s 10s:471428/s 11s:473531/s 12s:474027/s 13s:475485/s 14s:475589/s 15s:476405/s 16s:476262/s 17s:476966/s 
gws-std.3:
1s:269407/s 2s:379486/s 3s:416983/s 4s:433452/s 5s:444460/s 6s:451196/s 7s:455971/s 8s:458606/s 9s:461808/s 10s:464309/s 11s:465015/s 12s:466240/s 13s:466919/s 14s:467555/s 15s:468606/s 16s:468656/s 17s:469559/s 
gorilla-linux-ReadMessage.4.1:
1s:271126/s 2s:329367/s 3s:353468/s 4s:364842/s 5s:371908/s 6s:377633/s 7s:380870/s 8s:383271/s 9s:384646/s 10s:385986/s 11s:386448/s 12s:386554/s 13s:387573/s 14s:388263/s 15s:388701/s 16s:388867/s 17s:389383/s 18s:388404/s 
gorilla-linux-UseReader.4.2:
1s:293888/s 2s:377628/s 3s:399744/s 4s:413150/s 5s:421092/s 6s:426666/s 7s:430239/s 8s:432801/s 9s:434977/s 10s:436058/s 11s:436805/s 12s:437865/s 13s:438421/s 14s:438901/s 15s:439133/s 16s:439409/s 17s:439578/s 
nettyws.5:
1s:317480/s 2s:394388/s 3s:419181/s 4s:435207/s 5s:443099/s 6s:447553/s 7s:450505/s 8s:452086/s 9s:454062/s 10s:454676/s 11s:454595/s 12s:455477/s 13s:457664/s 14s:457783/s 15s:457905/s 16s:458393/s 17s:458335/s 
gobwas.6:
1s:215995/s 2s:279405/s 3s:302249/s 4s:312545/s 5s:318922/s 6s:323800/s 7s:326908/s 8s:329977/s 9s:330959/s 10s:331510/s 11s:331911/s 12s:332396/s 13s:332418/s 14s:332887/s 15s:333198/s 16s:333390/s 17s:333550/s 18s:333478/s 
nbio-std.7:
1s:303795/s 2s:388729/s 3s:418072/s 4s:431592/s 5s:440640/s 6s:446256/s 7s:450956/s 8s:453865/s 9s:455683/s 10s:457372/s 11s:458313/s 12s:458639/s 13s:459302/s 14s:459607/s 15s:460789/s 16s:461046/s 17s:461249/s 
nbio-nonblocking.8:
1s:282179/s 2s:348894/s 3s:371019/s 4s:380910/s 5s:387892/s 6s:392137/s 7s:395072/s 8s:397110/s 9s:398323/s 10s:399571/s 11s:400264/s 12s:400760/s 13s:401356/s 14s:401510/s 15s:401825/s 16s:401963/s 17s:402186/s 18s:402079/s 
nbio-blocking.9:
1s:338365/s 2s:403412/s 3s:424495/s 4s:432649/s 5s:439772/s 6s:444467/s 7s:445203/s 8s:447260/s 9s:449184/s 10s:449800/s 11s:450152/s 12s:451489/s 13s:451418/s 14s:451445/s 15s:451608/s 16s:451987/s 17s:452086/s 18s:451726/s 
nbio-mixed.10:
1s:302518/s 2s:382148/s 3s:410579/s 4s:422532/s 5s:430563/s 6s:435723/s 7s:439457/s 8s:442615/s 9s:444526/s 10s:445960/s 11s:446628/s 12s:447380/s 13s:447764/s 14s:448223/s 15s:448540/s 16s:449088/s 17s:449177/s 
hertz.11:
1s:156750/s 2s:198223/s 3s:212159/s 4s:218764/s 5s:222560/s 6s:225163/s 7s:226889/s 8s:228192/s 9s:229109/s 10s:229619/s 11s:230213/s 12s:230389/s 13s:230589/s 14s:230692/s 15s:230719/s 16s:230742/s 17s:230792/s 18s:230805/s 19s:219120/s 20s:208199/s 21s:198285/s 22s:189272/s 23s:181043/s 24s:173499/s 25s:166559/s 26s:160153/s 27s:154222/s 28s:148714/s 29s:143586/s 30s:138799/s 31s:134322/s 
hertz-std.12:
1s:259728/s 2s:323454/s 3s:344668/s 4s:356511/s 5s:362301/s 6s:366949/s 7s:369687/s 8s:371785/s 9s:373524/s 10s:373916/s 11s:375332/s 12s:375767/s 13s:376571/s 14s:377922/s 15s:377760/s 16s:378542/s 17s:378764/s 
fasthttp-ws.13:
1s:266280/s 2s:330069/s 3s:351054/s 4s:362566/s 5s:369327/s 6s:374184/s 7s:377261/s 8s:379832/s 9s:382432/s 10s:383539/s 11s:383645/s 12s:384371/s 13s:384540/s 14s:384636/s 15s:384874/s 16s:385560/s 17s:385603/s 18s:385153/s 

lxzan.A机器

quickws.0:忽略第一个的成绩
1s:118062/s 2s:172657/s 3s:191553/s 4s:200811/s 5s:206203/s 6s:209270/s 7s:211546/s 8s:212966/s 9s:214666/s 10s:215627/s 11s:216323/s 12s:216610/s 13s:216540/s 14s:216549/s 15s:217197/s 16s:217637/s 17s:217768/s 18s:218111/s
quickws.1:
1s:122083/s 2s:174840/s 3s:190387/s 4s:199804/s 5s:205733/s 6s:209046/s 7s:211940/s 8s:213684/s 9s:214735/s 10s:216215/s 11s:217419/s 12s:218169/s 13s:218626/s 14s:219056/s 15s:219373/s 16s:220349/s 17s:220156/s 18s:220489/s
gws.2:
1s:72692/s 2s:149709/s 3s:177071/s 4s:190118/s 5s:197438/s 6s:203216/s 7s:206725/s 8s:209295/s 9s:210889/s 10s:212528/s 11s:214062/s 12s:215088/s 13s:215956/s 14s:216550/s 15s:216677/s 16s:217328/s 17s:217958/s 18s:217519/s
gws-std.3:
1s:65030/s 2s:149031/s 3s:174915/s 4s:189335/s 5s:195998/s 6s:200112/s 7s:203369/s 8s:206413/s 9s:208147/s 10s:209443/s 11s:211073/s 12s:212337/s 13s:212937/s 14s:213519/s 15s:214002/s 16s:214189/s 17s:215053/s 18s:215363/s
gorilla-linux-ReadMessage.4.1:
1s:55553/s 2s:119130/s 3s:137207/s 4s:142465/s 5s:147583/s 6s:150595/s 7s:153774/s 8s:156399/s 9s:156917/s 10s:157923/s 11s:158189/s 12s:158911/s 13s:159066/s 14s:158989/s 15s:159250/s 16s:159111/s 17s:158948/s 18s:158822/s
gorilla-linux-UseReader.4.2:
1s:89053/s 2s:143133/s 3s:162935/s 4s:172881/s 5s:179394/s 6s:179912/s 7s:182704/s 8s:183869/s 9s:186462/s 10s:188638/s 11s:189555/s 12s:190791/s 13s:191353/s 14s:192317/s 15s:191015/s 16s:189679/s 17s:190167/s 18s:190597/s
nettyws.5:
1s:116167/s 2s:164825/s 3s:180228/s 4s:188211/s 5s:194366/s 6s:195887/s 7s:198435/s 8s:200048/s 9s:200919/s 10s:201702/s 11s:201696/s 12s:202410/s 13s:202149/s 14s:202276/s 15s:202591/s 16s:202973/s 17s:203360/s 18s:203763/s
gobwas.6:
1s:49216/s 2s:97348/s 3s:114685/s 4s:122782/s 5s:128429/s 6s:130814/s 7s:132659/s 8s:134052/s 9s:135866/s 10s:136644/s 11s:136682/s 12s:136507/s 13s:136296/s 14s:135531/s 15s:136166/s 16s:136538/s 17s:137127/s 18s:137546/s
nbio-std.7:
1s:117470/s 2s:164429/s 3s:181444/s 4s:187817/s 5s:189304/s 6s:187113/s 7s:189178/s 8s:191997/s 9s:194442/s 10s:195606/s 11s:197760/s 12s:199364/s 13s:201134/s 14s:200346/s 15s:199450/s 16s:198912/s 17s:199261/s 18s:198899/s
nbio-nonblocking.8:
1s:91274/s 2s:136509/s 3s:151263/s 4s:159388/s 5s:162515/s 6s:163976/s 7s:166345/s 8s:167477/s 9s:166373/s 10s:165716/s 11s:165628/s 12s:166142/s 13s:166438/s 14s:167137/s 15s:167416/s 16s:167867/s 17s:168014/s 18s:167308/s
nbio-blocking.9:
1s:103071/s 2s:151960/s 3s:167742/s 4s:178529/s 5s:182470/s 6s:183913/s 7s:186341/s 8s:188368/s 9s:189641/s 10s:191029/s 11s:192640/s 12s:193544/s 13s:194859/s 14s:195612/s 15s:196177/s 16s:197070/s 17s:197994/s 18s:198464/s
nbio-mixed.10:
1s:133100/s 2s:174574/s 3s:187513/s 4s:195982/s 5s:200573/s 6s:201533/s 7s:199640/s 8s:197010/s 9s:196809/s 10s:194550/s 11s:196409/s 12s:194543/s 13s:193682/s 14s:195256/s 15s:196376/s 16s:197116/s 17s:197817/s 18s:197724/s
hertz.11:
1s:94379/s 2s:117162/s 3s:126252/s 4s:130816/s 5s:134788/s 6s:136583/s 7s:137186/s 8s:137482/s 9s:137799/s 10s:138905/s 11s:139236/s 12s:139769/s 13s:140289/s 14s:140340/s 15s:140692/s 16s:140653/s 17s:140949/s 18s:141193/s 19s:135594/s 20s:128814/s 21s:122680/s 22s:117104/s 23s:112012/s 24s:107345/s 25s:103051/s 26s:99088/s 27s:95418/s 28s:92010/s 29s:88837/s 30s:85900/s 31s:83129/s
hertz-std.12:
1s:87294/s 2s:130407/s 3s:143451/s 4s:148767/s 5s:148115/s 6s:149373/s 7s:151355/s 8s:153709/s 9s:155259/s 10s:156539/s 11s:157197/s 12s:158248/s 13s:158667/s 14s:157817/s 15s:158789/s 16s:159469/s 17s:160032/s 18s:160117/s
fasthttp-ws.13:
1s:85160/s 2s:131185/s 3s:146949/s 4s:154728/s 5s:158110/s 6s:162178/s 7s:164441/s 8s:166476/s 9s:168218/s 10s:167610/s 11s:168601/s 12s:169071/s 13s:169449/s 14s:170053/s 15s:170498/s 16s:170820/s 17s:171201/s 18s:171849/s

lesismal.A机器

quickws.0:忽略第一个的成绩
1s:177032/s 2s:211465/s 3s:235788/s 4s:249135/s 5s:256656/s 6s:257085/s 7s:260168/s 8s:260242/s 9s:260735/s 10s:262786/s 11s:263465/s 12s:264132/s 13s:265290/s 14s:266342/s 15s:266014/s 16s:266180/s 17s:267435/s 18s:268304/s 
quickws.1:
1s:172052/s 2s:230384/s 3s:250688/s 4s:259393/s 5s:264938/s 6s:267615/s 7s:268016/s 8s:269325/s 9s:271557/s 10s:273526/s 11s:275058/s 12s:275428/s 13s:275739/s 14s:276168/s 15s:276706/s 16s:277367/s 17s:277981/s 
gws.2:
1s:160686/s 2s:213970/s 3s:234341/s 4s:243627/s 5s:249968/s 6s:252931/s 7s:255810/s 8s:258819/s 9s:259188/s 10s:260333/s 11s:261901/s 12s:264005/s 13s:265401/s 14s:265851/s 15s:266130/s 16s:267360/s 17s:267861/s 18s:267266/s 
gws-std.3:
1s:175007/s 2s:224086/s 3s:241407/s 4s:248798/s 5s:253856/s 6s:258921/s 7s:262793/s 8s:265800/s 9s:268242/s 10s:270082/s 11s:271144/s 12s:272650/s 13s:273487/s 14s:274139/s 15s:275115/s 16s:275709/s 17s:276418/s 18s:276256/s 
gorilla-linux-ReadMessage.4.1:
1s:143366/s 2s:183065/s 3s:197298/s 4s:205778/s 5s:209176/s 6s:211953/s 7s:213954/s 8s:215468/s 9s:216594/s 10s:218208/s 11s:219304/s 12s:220230/s 13s:220925/s 14s:221528/s 15s:222003/s 16s:222297/s 17s:222546/s 18s:222507/s 
gorilla-linux-UseReader.4.2:
1s:169522/s 2s:213663/s 3s:234594/s 4s:241797/s 5s:245499/s 6s:249373/s 7s:250861/s 8s:253565/s 9s:255024/s 10s:255787/s 11s:256603/s 12s:257384/s 13s:257880/s 14s:258816/s 15s:259224/s 16s:259535/s 17s:260133/s 18s:260097/s 
nettyws.5:
1s:149361/s 2s:213286/s 3s:236872/s 4s:247690/s 5s:252394/s 6s:255639/s 7s:259195/s 8s:262270/s 9s:264135/s 10s:265579/s 11s:267110/s 12s:267677/s 13s:268676/s 14s:269379/s 15s:269881/s 16s:270271/s 17s:270742/s 18s:270706/s 
gobwas.6:
1s:128807/s 2s:166719/s 3s:179080/s 4s:186760/s 5s:189299/s 6s:191985/s 7s:194715/s 8s:195563/s 9s:196468/s 10s:197109/s 11s:198194/s 12s:198221/s 13s:198948/s 14s:199146/s 15s:199540/s 16s:199685/s 17s:199897/s 18s:199614/s 
nbio-std.7:
1s:207289/s 2s:245739/s 3s:258435/s 4s:264086/s 5s:268501/s 6s:272493/s 7s:273811/s 8s:274668/s 9s:274174/s 10s:275674/s 11s:276319/s 12s:276402/s 13s:277094/s 14s:277434/s 15s:277622/s 16s:278026/s 17s:278343/s 
nbio-nonblocking.8:
1s:144380/s 2s:194672/s 3s:208318/s 4s:216850/s 5s:221401/s 6s:225108/s 7s:227836/s 8s:229503/s 9s:230521/s 10s:230687/s 11s:231436/s 12s:232378/s 13s:233072/s 14s:233495/s 15s:234412/s 16s:234559/s 17s:234887/s 18s:235201/s 
nbio-blocking.9:
1s:183933/s 2s:227215/s 3s:243272/s 4s:251342/s 5s:255548/s 6s:259345/s 7s:261899/s 8s:263728/s 9s:265260/s 10s:265018/s 11s:264559/s 12s:265534/s 13s:266352/s 14s:266733/s 15s:266715/s 16s:266990/s 17s:267798/s 18s:268105/s 
nbio-mixed.10:
1s:177397/s 2s:227735/s 3s:242940/s 4s:251595/s 5s:256991/s 6s:258526/s 7s:260224/s 8s:262813/s 9s:264628/s 10s:266090/s 11s:266387/s 12s:265861/s 13s:264984/s 14s:264542/s 15s:264846/s 16s:265892/s 17s:266531/s 
hertz.11:
1s:126045/s 2s:161440/s 3s:170376/s 4s:176040/s 5s:178421/s 6s:181108/s 7s:182741/s 8s:183877/s 9s:184735/s 10s:184137/s 11s:184623/s 12s:184977/s 13s:185327/s 14s:185979/s 15s:186355/s 16s:186472/s 17s:186678/s 18s:186759/s 19s:177351/s 20s:168483/s 21s:160460/s 22s:153192/s 23s:146531/s 24s:140426/s 25s:134809/s 26s:129624/s 27s:124823/s 28s:120365/s 29s:116216/s 30s:112345/s 31s:108721/s 
hertz-std.12:
1s:98689/s 2s:147967/s 3s:170671/s 4s:185168/s 5s:195127/s 6s:199259/s 7s:203703/s 8s:206811/s 9s:210274/s 10s:212063/s 11s:213032/s 12s:214527/s 13s:216263/s 14s:217374/s 15s:218166/s 16s:219112/s 17s:219805/s 18s:220179/s 
fasthttp-ws.13:
1s:39059/s 2s:132888/s 3s:167766/s 4s:185683/s 5s:196652/s 6s:203543/s 7s:208310/s 8s:212013/s 9s:214433/s 10s:216868/s 11s:219098/s 12s:220329/s 13s:221946/s 14s:222993/s 15s:223997/s 16s:224944/s 17s:225639/s 18s:226056/s 

历史版本数据-tcpkali-流量测试

2023.7.21

module github.com/guonaihong/bench-ws

go 1.20

require (
        github.com/antlabs/quickws v0.0.8-0.20230720134744-a1d56ef03e75
        github.com/go-netty/go-netty-ws v0.0.0-20230609110133-51861cf6ab29
        github.com/gobwas/ws v1.2.1
        github.com/gorilla/websocket v1.5.0
        github.com/guonaihong/clop v0.2.11
        github.com/lxzan/gws v1.6.1
)

require (
        github.com/antlabs/strsim v0.0.2 // indirect
        github.com/antlabs/wsutil v0.0.11-0.20230719145545-cc6d4a700436 // indirect
        github.com/go-netty/go-netty v1.6.3 // indirect
        github.com/go-netty/go-netty-transport v1.7.1 // indirect
        github.com/go-playground/locales v0.14.0 // indirect
        github.com/go-playground/universal-translator v0.18.0 // indirect
        github.com/go-playground/validator/v10 v10.10.1 // indirect
        github.com/gobwas/httphead v0.1.0 // indirect
        github.com/gobwas/pool v0.2.1 // indirect
        github.com/klauspost/compress v1.16.5 // indirect
        github.com/leodido/go-urn v1.2.1 // indirect
        golang.org/x/crypto v0.6.0 // indirect
        golang.org/x/sys v0.6.0 // indirect
        golang.org/x/text v0.7.0 // indirect
)
  • ./quickws.linux -o -d -u
    ➜ ~ tcpkali -c 10000 --connect-rate 10000 -r 10000 -T 30s -f 1K.txt --ws 127.0.0.1:9001/
WARNING: Dumb terminal, expect unglorified output.
Destination: [127.0.0.1]:9001
Interface lo address [127.0.0.1]:0
Using interface lo to connect to [127.0.0.1]:9001
Ramped up to 10000 connections.
Total data sent:     108991.9 MiB (114286341911 bytes)
Total data received: 109577.8 MiB (114900700111 bytes)
Bandwidth per channel: 6.083⇅ Mbps (760.4 kBps)
Aggregate bandwidth: 30639.468↓, 30475.643↑ Mbps
Packet rate estimate: 2637144.3↓, 2663145.9↑ (8↓, 35↑ TCP MSS/op)
Test duration: 30.0007 s.

./quickws.linux -o -d

~ tcpkali -c 10000 --connect-rate 10000 -r 10000 -T 30s -f 1K.txt --ws 127.0.0.1:9001/

WARNING: Dumb terminal, expect unglorified output.
Destination: [127.0.0.1]:9001
Interface lo address [127.0.0.1]:0
Using interface lo to connect to [127.0.0.1]:9001
Ramped up to 10000 connections.
Total data sent:     102123.6 MiB (107084371183 bytes)
Total data received: 102122.3 MiB (107083045091 bytes)
Bandwidth per channel: 5.703⇅ Mbps (712.9 kBps)
Aggregate bandwidth: 28555.424↓, 28555.778↑ Mbps
Packet rate estimate: 2606461.2↓, 2508085.4↑ (8↓, 33↑ TCP MSS/op)
Test duration: 30.0001 s.

2023.7.18

github.com/antlabs/wsutil v0.0.10 // indirect
github.com/antlabs/quickws v0.0.8-0.20230718173244-1dec3bb7131e

  • ./autobahn-quickws.linux -o -d -u
~ tcpkali -c 10000 --connect-rate 10000 -r 10000 -T 30s -f 1K.txt --ws 127.0.0.1:9001/

WARNING: Dumb terminal, expect unglorified output.
Destination: [127.0.0.1]:9001
Interface lo address [127.0.0.1]:0
Using interface lo to connect to [127.0.0.1]:9001
Ramped up to 10000 connections.
Total data sent:     108343.7 MiB (113606565266 bytes)
Total data received: 109005.9 MiB (114301011678 bytes)
Bandwidth per channel: 6.072⇅ Mbps (759.0 kBps)
Aggregate bandwidth: 30479.730↓, 30294.548↑ Mbps
Packet rate estimate: 2781393.2↓, 2603418.4↑ (8↓, 35↑ TCP MSS/op)
Test duration: 30.0005 s.
  • ./autobahn-quickws.linux -o -d
~ tcpkali -c 10000 --connect-rate 10000 -r 10000 -T 30s -f 1K.txt --ws 127.0.0.1:9001/

WARNING: Dumb terminal, expect unglorified output.
Destination: [127.0.0.1]:9001
Interface lo address [127.0.0.1]:0
Using interface lo to connect to [127.0.0.1]:9001
Ramped up to 10000 connections.
Total data sent:     100629.5 MiB (105517672379 bytes)
Total data received: 101493.2 MiB (106423292661 bytes)
Bandwidth per channel: 5.651⇅ Mbps (706.4 kBps)
Aggregate bandwidth: 28378.892↓, 28137.399↑ Mbps
Packet rate estimate: 2598520.7↓, 2477706.6↑ (8↓, 34↑ TCP MSS/op)
Test duration: 30.0007 s.

历史版本数据-未解锁功能墙-tps

quickws

2023.7.21

go.mod

module github.com/antlabs/quickws

go 1.20

require github.com/antlabs/wsutil v0.0.11-0.20230719145545-cc6d4a700436
  • ./quickws.linux -o -d
    sec: 10, count: 5094962, qps: 463178 //开tcp delay
    sec: 100, count: 47833191, qps: 473595
  • ./quickws.linux -d
    sec: 10, count: 5097579, qps: 463416
    sec: 100, count: 47856879, qps: 473830
  • ./quickws.linux -o -u
    sec: 10, count: 4906140, qps: 446012
    sec: 100, count: 45881213, qps: 454269
  • ./quickws.linux -u
    sec: 10, count: 4875008, qps: 443182
    sec: 100, count: 45704561, qps: 452520

2023.7.18

github.com/antlabs/wsutil v0.0.10 // indirect
github.com/antlabs/quickws v0.0.8-0.20230718173244-1dec3bb7131e

  • ./autobahn-quickws.linux -o -d
    sec: 10, count: 5099934, qps: 463630
    sec: 100, count: 47862831, qps: 473889

  • ./autobahn-quickws.linux -d
    sec: 10, count: 5068083, qps: 460734
    sec: 100, count: 47871154, qps: 473971

  • ./autobahn-quickws.linux -o -u
    sec: 10, count: 4840470, qps: 440042
    sec: 100, count: 45841064, qps: 453871

  • ./autobahn-quickws.linux -u
    sec: 10, count: 4851773, qps: 441070
    sec: 100, count: 45622880, qps: 451711

gorilla

默认ReadMessage

sec: 10, count: 4191293, qps: 381026
sec: 100, count: 39367626, qps: 389778
内存占用 272M

开个buffer

sec: 10, count: 4824085, qps: 438553
sec: 100, count: 45291122, qps: 448426

内存占用 379M

gobwas

sec: 10, count: 3538193, qps: 321653
sec: 100, count: 33054749, qps: 327274
内存占用384M

nettyws

sec: 10, count: 4678365, qps: 425305
sec: 100, count: 44165161, qps: 437278

nbio-std

sec: 10, count: 4906323, qps: 446029
sec: 100, count: 46186772, qps: 457294

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.