xiaonanln / goworld

Scalable Distributed Game Server Engine with Hot Swapping in Golang
Apache License 2.0
2.53k stars 450 forks source link

use pktconn #89

Closed simonlingoogle closed 3 years ago

simonlingoogle commented 4 years ago

pktconn outperforms the existing PacketConnection implementation in GoWorld in both throughput and latency and is better tested.

Networking latency reduced from ~100ms to ~20ms while using pktconn:

codecov[bot] commented 3 years ago

Codecov Report

Merging #89 into master will decrease coverage by 1.70%. The diff coverage is 4.65%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master      #89      +/-   ##
==========================================
- Coverage   34.22%   32.51%   -1.71%     
==========================================
  Files          41       37       -4     
  Lines        3708     3220     -488     
==========================================
- Hits         1269     1047     -222     
+ Misses       2277     2051     -226     
+ Partials      162      122      -40     
Impacted Files Coverage Δ
engine/entity/Space.go 0.00% <ø> (ø)
engine/kvdb/kvdb.go 36.08% <ø> (+1.76%) :arrow_up:
engine/netutil/Connection.go 0.00% <0.00%> (-100.00%) :arrow_down:
engine/netutil/MessagePackMsgPacker.go 81.81% <ø> (ø)
engine/netutil/Packet.go 0.00% <0.00%> (-22.57%) :arrow_down:
engine/netutil/PacketConnection.go 0.00% <0.00%> (-51.12%) :arrow_down:
engine/netutil/netutil.go 0.00% <ø> (ø)
engine/config/read_config.go 69.36% <100.00%> (+5.80%) :arrow_up:
engine/netutil/TCPServer.go 24.00% <0.00%> (-8.00%) :arrow_down:
... and 2 more

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 04753ca...5a253e5. Read the comment docs.

xiaonanln commented 3 years ago

Thanks, @simonlingoogle