6

一个程序员的战斗:在线客服系统,一年30个版本更新,收获首批忠实用户

 2 years ago
source link: https://www.cnblogs.com/sheng_chao/p/16037370.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

一个程序员的战斗:在线客服系统,一年30个版本更新,收获首批忠实用户

就像没有一个画匠不想办一场属于自己的画展,没有一个歌者不想写一首自己的歌。
也许只有为数不多的听众,但是当他怀疑自己时,还是会有忠实的听众支持他继续走下去。

我在业余时间开发维护了一款在线客服系统,一是兴趣使然,另一方面,正如上文。
我想如果有一天我离开了这个行业,我也会继续维护更新,作为我曾经做过这个行业的一个见证。

也许,我可以休息一段时间了

本文记录我这一年主要的版本更新情况和心路历程。

经过这一年的战斗,客服系统终于稳定了下来,基本功能满足了用户的需要,稳定性得到了充足的验证,针对各种复杂网络都有了很好的兼容性。

可是最近因为疫情对生活的影响,以及作为一个35岁的打工人,工作中的种种烦心事,越来越难以沉静下来继续客服系统下一步的规划和开发。

很想好好休息一段时间,希望客服系统能够为用户提供一些价值吧,就像开头所说的:如果有一天我离开了这个行业,作为我曾经做过这个行业的一个见证。


最新免费版本下载:https://kf.shengxunwei.com

2021年3月28日,首个版本发布

回望一年前的第1个版本,称之为“简陋”毫不为过,仅仅实现了基本的网站访客监测和会话功能,以及基础的历史记录管理、留言管理功能。

更不提首个版本中,对于消息处理的各种 BUG,因为我在开发环境中无法完全模拟用户的真实场景,以至首个用户在上线使用之后,频繁出现各种不稳定的情况,无数次救火,花了超过一个月的时间,才勉强稳定下来,正常应对日常使用,在这一过程中,第1个用户给予了巨大的耐心和理解,如果没有第1个用户的支持,产品基本稳定不知还要走多少弯路。

2021年5月16日,发布支持 Linux 的版本

服务端程序是用 .net core 编写的,原生支持 Linux ,但在此之前,我没有在 Linux 环境下完整部署验证,也没有编写如何在 Linux 上部署的说明书。

直到 5 月份我遇到了另1个热心的用户,帮助我完成了在 Linux 环境上的全过程部署,测试,并向我反馈了遇到的问题,还告诉了我应该采用的处理方法。

在我彻底完成对 Linux 版本兼容性的处理后,发布了新的版本,并编写了在 Linux 上安装部署的详细说明书。

2021年6月5日,发布自动化配置工具

在安装部署客服系统时,一直需要手工修改一些配置文件,对程序员来说似乎并不是很难,但我遇到了越来越多的普通用户,一直使用记事本修改配置文件就显得繁琐了,于是我做了一个小工具,让用户能够很容易的理解各项配置,并一次性写入对应的目录。

我把这个小工具与新版本一并发布,在此之后,联系我询问如何配置的用户少了许多,我想他们能够自行完成安装配置了。

2021年7月4日,发布支持 MySQL 数据库的版本

随时用户越来越多,特别是使用 Linux 作为服务器的用户越来越多,希望能够支持 MySQL 数据库的反馈意见就像雪花一样飞了过来,堆积在我的邮箱里、QQ上。

在此之前,系统只支持 SQL Server,虽然其也有 Linux 版本,但是安装使用和大多数用户的习惯有所差异。

于是我在2021年7月4日,正式发布了新版本,实现了对 SQL Server 和 MySQL 的同时支持,可以在一套程序中通过切换配置文件,切换所要使用的数据库引擎。

这个版本似乎像是一个里程碑,越来越的用户采用了我的客服系统,大部分使用了 Linux + MySQL 的方案,这件事也让我意识到开源世界的强大。

2021-10-13,生日当天,我没有闲着,发布了高并发稳定版

印象中在2021年8月的时候,有1个用户联系我,反馈了一些使用过程中的不稳定现象,经过和对方技术的沟通协调,我震惊了:仅仅使用了我的客服系统两三个月,他们的数据库中就已经存储了超过100万条聊天记录!使用强度之大远远超过我的想像,我自己都从来没有验证过几百个访客同时在线聊天会是什么场景,他们做到了。

之所以与我联系,还是出现了一些稳定性的故障,如偶发的掉线或者消息中断,不能收到新消息。

这个问题我和他们对接的时间可能长达两个月左右,问题实在是很难定位,大流量、大并发、还是偶发,极难重现。问题定位和修复的过程很艰难。

好在,赶在10月13日生日那天,更新了版本,完善的解决了问题。

2022年1月8日,实现多国语言自动翻译

大约是2021年下半年,陆续有用户联系我,表示从事外贸行业,希望客服系统能够实现客服与访客之间双向的实时自动翻译。

一开始我想的比较复杂,拖着没做这个功能,后来询问的朋友越来越多,我仔细调研了一下这个需求,发现通过公有云上的接口实现起来,也不复杂,那段时间工作很忙,一直拖到了年底,才算把这件事完成,在2022年1月8日,正式发布了新版。

2022年3月13日,在 TCP 通信的基础上,实现纯 HTTP 通信

随时用户越来越多,时常有用户将服务器部署在香港或其它海外地区,从中国大陆登录客服端时,会出现容易掉线的情况。

我调查之后发现在香港不管是阿里、亚马逊、微软都无法向中国大陆提供稳定的长连接,且网络一般都比较慢,而一些专门做香港服务器的二线服务商,反而有可能可以通过专线的方式提供更稳定和更高速的连接。

一些用户重新选择服务商后问题得以解决,但仍然有一些用户,因为各种网络问题,客服端无法维持长连接,为了彻底解决这个问题,服务好每一个用户,我对数据传输层进行了大的改造,通过纯 HTTP 的方式实现了原来的 TCP/IP 报文传输。

几天前,我发布了最新版本,可以在登录画面选择纯HTTP通信模式了。第一时间,我将这个版本推送给了所有的用户。

也许,可以休息一段时间了


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK