您尚未登录,请登录后浏览更多内容! 登录 | 加入最MC

QQ登录

只需一步,快速开始

 找回密码
 加入最MC

QQ登录

只需一步,快速开始

查看: 78|回复: 1

[原创插件] [其他]AsyncKeepAlive —— 减少网络和服务器卡顿掉线[1.12-1.13.2]

[复制链接]
回帖奖励 20 个MC币 回复本帖可获得 2 个MC币奖励! 每人限 1 次(中奖概率 80%)
  • TA的每日心情
    开心
    2019-1-30 16:53
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    发表于 6 天前 | 显示全部楼层 |阅读模式
    服务端插件
    中文名称: AsyncKeepAlive
    英文名称: AsyncKeepAlive
    来源: 原创
    类型: |Bukkit/Spigot插件| 
    前置插件: ProtocolLib
    原帖地址: -
    下载地址: https://ci.ishland.com/job/AsyncKeepAlive/22/
    更新时间: 2019-02-11
    语言支持: English 
    本帖最后由 ishland 于 2019-2-12 14:16 编辑

    AsyncKeepAlive

    减少卡顿掉线

    最新版本:v0.1

    工作原理:单独开启一个异步的线程定时(每4秒)发送一次KeepAlive(心跳包)给在线玩家的客户端,减少因为低TPS、瞬间卡顿和网络丢包严重情况下玩家集体掉线的概率,本插件只能减少掉线的概率,不能提高网络传输速度。


    * 服务端会每20秒发送一次心跳包(KeepAlive)给所有客户端,客户端必须在30秒内回复这个心跳包,否则判断服务器离线,具体就表现成掉线。如果服务器突然卡顿,必然导致部分玩家掉线,如果卡顿超过20秒,必然全部玩家集体掉线,因为发送心跳包是以同步的方法运行在主线程,受到TPS低的影响则会导致发包速度和响应速度放缓。本插件开辟一个新的异步线程(不受TPS影响),每4秒发送一次心跳包,从而减少玩家在网络条件不佳和服务器TPS低与瞬卡的情况掉线的概率。

    已知Bug:
    1. 新的线程会出现无法关闭的问题,请不要重载服务器,否则将会发送更多KeepAlive



    本插件为重制插件,依赖于ProtocolLib。未来的将会跟随ProtocolLib更新。

    本插件使用MIT协议开源。Github地址:https://github.com/ishlandbukkit/AsyncKeepAlive

    欢迎大家帮忙测试插件(该插件可能支持其他版本),已测试版本:
    1.13.2,ProtocolLib 4.4.0
    1.12.2,ProtocolLib 4.4.0


    开发版本:https://ci.ishland.com/job/AsyncKeepAlive/
    (下载第一个jar)

    更新日志:
    Release v0.1:(于2月11日14:33分)
    +在Minecraft 1.12.2上测试通过
    +添加了bStats
    +添加了Minecraft版本检测



    本插件计划将向下支持。

    强调一遍:其他地址的插件均为本人发布

    bStats page: https://bstats.org/plugin/bukkit/AsyncKeepAlive


    评分

    参与人数 1人气 +5 MC币 +5 收起 理由
    逍遥珺 + 5 + 5 支持原创内容!

    查看全部评分

    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
  • TA的每日心情
    开心
    2019-1-30 16:53
  • 签到天数: 9 天

    [LV.3]偶尔看看II

     楼主| 发表于 5 天前 | 显示全部楼层
    请大家多多支持,谢谢大家
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    *滑动验证:
    您需要登录后才可以回帖 登录 | 加入最MC

    本版积分规则