这几天尝试使用一个libhv的开源网络框架,遇到了在使用其提供的TCP客户端断开连接后,出现TIME_WAIT
的问题。经过反复测试,连接同一个服务端软件,同样的端口,只有使用libhv编程的客户端会导致这个问题。于是取官方群里询问原因,一个管理员跟我说“为什么呢?”,我一脸懵逼的也回了句“为什么呢?”。
接着他说抓个包看看原因,我回他咋不让我看一遍libhv源码呢,他说那样也行。把我惹生气了!我告诉他用libevent等编程的客户端都没这问题,只有libhv有。closesocket()和stop()接口都调用了,你可以告诉我缺少哪个步骤,或者哪个步骤错了,让我抓包是闹哪样!抓包、看源码可不是一时半会儿能搞定的。我说连基本的TCP通信都卡壳就算了,管理员也回了句那就算了,于是我退群。
他们这种遇到问题自己查,爱用不用的态度实在让我失望。排查具体原因是他们的责任,不是我的,开源免费并不能成为推脱的理由。
我觉得他们没有把我当一名用户看待,而是一个“开源项目参与者”。也就是说在他们眼里,我既然用了这个开源项目,就应当帮助他们排查问题,参与项目的维护。
代码使用人员也是参与到开源项目中的,使用开源库或者代码是在参与项目测试反馈等等,遇到问题可以反馈到作者,也可以自己解决。开源作者不是保姆,没有责任提供你需要的帮你排查代码问题服务,要不你跟作者商业合作服务?
不知道你所说的“遇到问题可以反馈到作者”是什么意思?我那时遇到问题了,也反馈到作者了,作者回了句“为什么呢?”,请问我下一步该咋做?
开源作者是没有责任帮我排查代码问题,但我当时可是认为是它项目自身问题,而不是我代码问题。开源的作者既然开放了交流渠道,那么就应该有责任回答使用者的问题,否则干脆直接弄成付费加群得了。
你所说的商业合作是确定要在项目中使用,然后在使用过程中再遇到问题,才会考虑掏钱咨询。这连前期调研的demo都出现严重问题,我哪敢谈商业合作?!