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 ...
随机推荐
- 【Java实现】剑指offer53.1——在排序数组中查找数字(LeetCode34:在排序数组中查找元素的起始位置)
序数组中查找元素的起始位置):思路分享 <剑指offer>题目和LeetCode主站本质是一样的,想要找到target数目,也需要找到左右边界 题目解析: 在一个排序数组中,找到targe ...
- Java @FunctionalInterface注解-6
在学习 Lambda 表达式时,我们提到如果接口中只有一个抽象方法(可以包含多个默认方法或多个 static 方法),那么该接口就是函数式接口.@FunctionalInterface 就是用来指定某 ...
- idea自动更新代码
如何开启或关闭idea的自动更新代码? File-Setting-Appearance&Beha-System Setting-Updates 选中或取消勾选Automatically che ...
- 性能工具之Jmeter压测Thrift RPC服务
概述 Thrift是一个可互操作和可伸缩服务的框架,用来进行可扩展且跨语言的服务的开发.它结合了功能强大的软件堆栈和代码生成引擎,以构建在 C++, Java, Python, PHP, Ruby, ...
- Java核心API-日期时间
java.util.Date Date类用来表示时间点. 时间是用距离一个固定时间点的毫秒数表示的,这个时间点就是纪元. UTC时间是为表示这个纪元的科学标准时间,从1970年1月1日0时开始.另一种 ...
- 重新整理 .net core 实践篇————网关[三十六]
前言 简单整理一下网关. 正文 在介绍网关之前,介绍一下BFF,BFF全称是Backend For Frontend,它负责认证授权,服务聚合,目标是为前端提供服务. 说的通透一点,就是有没有见过这种 ...
- 14 Nginx访问日志自动按天切割
#!/bin/bash export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin LOG_DIR=/usr/loc ...
- LCA总结
作为一名合格的 OIer ,一定要有自我总结的意识,一定要通过写博客的方式来验证自己的掌握程度 ----沃.茨基硕德 目录 作为一名合格的 OIer ,一定要有自我总结的意识,一定要通过写博客的方式来 ...
- 非静态的字段、方法或属性“System.Web.UI.Page.ClientScript.get”要求对象引用
解决Response.Write("<script>alert('修改失败,请稍后再试!');</script>");布局错误的问题 在后台CS代码(不是C ...
- 13.7Cloneable接口
要点提示:Cloneable接口给出了一个可克隆对象.