Linux + .net core 开发升讯威在线客服系统:首个经过实际验证的高性能版本
业余时间用 .net core 写了一个在线客服系统。并在博客园写了一个系列的文章,写介绍这个开发过程:
.net core 和 WPF 开发升讯威在线客服系统:目录
https://blog.shengxunwei.com/Home/Post/44a31a32-d4e1-4ddd-8526-8a2bcd2e22be
我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免费和分享,后来我索性就官方发了一个私有化版直接给别人下载。
7 月份有朋友联系我,反馈在使用客服系统的过程中,出现了明显的消息延迟故障。该用户日常同时在线访客量在 1000 人左右。
这个用户量远远没有达到系统的设计性能指标,经过排查此问题是一个隐性的性能瓶颈故障导致,现已解决。经过几天的验证,系统稳定运行,日高峰同时在线访客量 1000 人左右,聊天消息延迟在 1 秒以内。服务器 CPU(云主机 8 核心)占用率稳定在 10% 以下,主程序内存占用小于 1GB。
现已将此稳定版发布并提供免费下载,这是系统发布已来,首个经过实践检验的高性能版本,推荐立即升级。

简介
升讯威在线客服与营销系统是基于 .net core / WPF 开发的一款在线客服软件,宗旨是: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。
完整私有化包下载地址
详细在线文档
https://docs.shengxunwei.com/Post/f7bc8496-14ee-4a53-07b4-08d8e3da6269
当前版本信息
发布日期:2021-7-26
数据库版本:20210608a
通信协议版本:20210609
服务器版本:1.3.11.0
客服程序版本:1.3.18.0
资源站点版本:1.2.56.0
同时支持 Windows 、 Linux 服务器,同时支持 SQL Server 、 MySQL 数据库。
安装部署难度:★☆☆☆☆
安装部署时间:准备好操作系统,安装必要的组件后。部署客服系统可在 10 分钟之内完成。

本系统可以:
- 可以追踪正在访问网站或使用 APP 的所有访客,收集他们的浏览情况,使客服能够主动出击,施展话术,促进成单。
- 访客端在 PC 支持包括 IE8 在内的所有浏览器。
- 移动端支持手机浏览器、APP、各大平台的公众号。
- 具备一线专业技术水平,网络中断,拔掉网线,手机飞行模式,不丢消息。
这个项目源于2015年前后,当时开发的初版,我使用了 ASP.NET MVC 做为后端,数据库使用原生 ADO.NET 进行操作、WPF 做客服端,Web 访客端使用原生 JavaScript 开发。为了使整个系统能够向下兼容,客服端 .net 框架使用的是 .net framework 3.5 ,可以兼容 Windows XP SP2,Web 访客端为了兼容 IE6 ,也使用了许多比较麻烦的技术实现,说来话长,这次不展开说这方面的细节。
在这次重构的新版本放弃了对 Windows XP 和 IE6 的支持,后端使用 .net core 3.1 ,数据库操作使用了 entity framework core。客服端依然是 WPF,基础框架升级到了 .net framework 4.8 ,访客端依然是原生 JavaScript,兼容 IE8 及以上浏览器。
另外相对于2015年的版本,这次重构我增加了一个 Web 后台,使用 Vue 实现,把原先放在客服端的一些管理功能,改到了 Web 后台中,例如:组织机构管理、客服管理、角色权限管理、多站点管理等。
此外因为有了 Web 后台,这次有兴趣的朋友就可以自行注册体验了(https://kf-m.shengxunwei.com),当年的旧版本需要我手工开通,很是麻烦。
希望能够打造: 开放、开源、共享。努力打造 .net 社区的一款优秀开源产品。
Linux + .net core 开发升讯威在线客服系统:首个经过实际验证的高性能版本的更多相关文章
- Linux + .net core 开发升讯威在线客服系统:同时支持 SQL Server 和 MySQL 的实现方法
前段时间我发表了一系列文章,开始介绍基于 .net core 的在线客服系统开发过程. 有很多朋友一直提出希望能够支持 MySQL 数据库,考虑到已经有朋友在用 SQL Server,我在升级的过程中 ...
- .net core 和 WPF 开发升讯威在线客服系统【私有化部署免费版】发布
希望 .net 和 WPF 技术时至今日,还能有一些存在感. 这个项目源于2015年前后,当时开发的初版,我使用了 ASP.NET MVC 做为后端,数据库使用原生 ADO.NET 进行操作.WPF ...
- .net core 和 WPF 开发升讯威在线客服系统:怎样实现拔网线也不丢消息的高可靠通信(附视频)
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程.本产品已经成熟稳定并投入商用. 在线演示环境:https://kf.shengxunwei.com 注意 ...
- .net core 和 WPF 开发升讯威在线客服系统:把 .Net Framework 打包进安装程序
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程. 系列文章目录: https://blog.shengxunwei.com/Home/Post/44a3 ...
- .net core 和 WPF 开发升讯威在线客服系统:使用本地IP数据库实现访客来源快速定位,支持国外
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程.本产品已经成熟稳定并投入商用. 免费使用 & 私有化部署:https://kf.shengxun ...
- 开发升讯威在线客服系统启示录:怎样编写堪比 MSDN 的用户手册
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程. 免费在线使用 & 免费私有化部署:https://kf.shengxunwei.com 文章目 ...
- .net core 和 WPF 开发升讯威在线客服系统:调用百度翻译接口实现实时自动翻译
业余时间用 .net core 写了一个在线客服系统.并在博客园写了一个系列的文章,写介绍这个开发过程. 我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免 ...
- .net core 和 WPF 开发升讯威在线客服系统:调用有道翻译接口实现实时自动翻译的方法
业余时间用 .net core 写了一个在线客服系统.并在博客园写了一个系列的文章,写介绍这个开发过程. 我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免 ...
- .net core 和 WPF 开发升讯威在线客服与营销系统:背景和产品介绍
本系列文章详细介绍使用 .net core 和 WPF 开发 升讯威在线客服与营销系统 的过程.本产品已经成熟稳定并投入商用. 在线演示环境:https://kf-m.shengxunwei.com ...
随机推荐
- TCPIP原理
------------恢复内容开始------------ OSI参考模型 osi参考模型结构 对等通信 注释: 每一层都有自己的协议 每一层都利用下层提供的服务与对等层通信 PDU=protoco ...
- Spring Aop的执行顺序
Spring Aop的执行顺序 首先回忆一下 AOP 的常用注解 @Before:前置通知:目标方法之前执行 @After:后置通知:目标方法之后执行 @AfterReturning:返回后通知:执行 ...
- Mybatis映射文件中的参数传递
一.接口中只有一个参数 1.参数是基本类型or基本类型的包装类or字符串类型 这种情况下映射文件中#{}里的内容可以是任意的,你可以使用#{xxx} 或 #{abc} .....因为此时#{}相当于一 ...
- fiddler抓取手机APP包相关的设置
一.设置手机的代理服务器 1.前提:手机与电脑用的是同一个网络 2.fiddler设置允许远程连接,并设置好端口 3.查询电脑所在网络的ip地址(windows下,命令行窗口使用:ipconfig进行 ...
- 三、Nginx设置用户认证
要求:通过nginx服务端配置实现以下目标 访问web页面需要进行用户认证. 用户名为:tom,密码:123456 操作步骤, 更改配置文件 [root@client ~]# vim /usr/loc ...
- 【SQLite】教程01-SQLite简介与安装
为什么要用 SQLite? 不需要一个单独的服务器进程或操作的系统(无服务器的). SQLite 不需要配置,这意味着不需要安装或管理. 一个完整的 SQLite 数据库是存储在一个单一的跨平台的磁盘 ...
- ES6中的Generator函数
今天小编发现一个es6中的新概念,同时也接触到了一个新关键字yeild,下面我就简单和大家聊聊es6中的generator函数.大家还可以关注我的微信公众号,蜗牛全栈. 一.函数声明:在functio ...
- 复习Spring第一课--Spring的基本知识及使用
关于Spring: spring容器是Spring的核心,该容器负责管理spring中的java组件, ApplicationContext ctx = new ClassPathXmlApplic ...
- 如何在Linux下部署Samba服务?
Samba简介 Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件 ...
- kubernetes关闭基于角色的访问控制-匿名访问
1.关闭基于角色的访问控制 如果正在使用一个带有RBAC机制的Kubernetes集群,服务账户可能不会被授权访问API服务器(或只有部分授权).目前最简单的方式就是运行下面的命令查询API服务器,从 ...