号召大伙完善一个IM系统---------C#+JS

在我刚开始做这份工作的时候,我就一直想做个及时通讯的工具。但是那时候,能力不够,知识不足。做了两次都没做成。

现在我工作也有两年多了,懂得多了些,会的也多了些,所以又考虑做这个及时通讯的软件。

经历了三个月左右吧,大体上已经写的差不多了。但是有很多细节值得去完善,补充。所以我想将现在的代码托管到Github上去,邀请志同道合的朋友一起来做。

我打算先写几篇博客,对这个项目进行一个深度的介绍。

以下是现在前端的运行的几个界面:

已经完成的重点功能有: 视频聊天,语音聊天,群聊,表情包,单聊等。因为工作量实在有点大,有些部分写的还是比较粗糙的。 但总体结构还是比较清晰的。

 以上大概介绍了一下前端部分,以下我介绍一下后端使用的技术。

后端服务有这几个:  IM服务(基于signalR编写,托管于WPF界面,使用Redis做业务数据存储。)

文件服务:使用FASTDFS文件服务(运行在linux服务器上,用于文件传输,语音聊天)

视频流中转服务:使用linux上的turn服务

代理服务:使用nginx,运行在windowsserver上

尽管即时聊天,现在可能没有什么发展前景,但是努力去做。总能学到不少东西。如果大家有兴趣加入进来一起做。我会更详细的去介绍代码部分,以及需要的掌握的技术。

时间: 2024-10-15 03:39:41

号召大伙完善一个IM系统---------C#+JS的相关文章

号召大伙完善一个IM系统---------C#+JS (二)-------服务端封装Redis

这个IM的服务端,使用的是Redis作为数据库 我一开始使用的redis的SDK是ServiceStack.Redis,但是据说它是收费的,测试版的一个小时内只能发送1000个请求?? 后来,我改成使用StackExchange.Redis作为Sdk,并根据它的特点进行了一些封装.下面,介绍一下 为什么这样封装以及封装的内容. 我们先看一下封装后,是如何调用的(最终的目的就是要这样) 使用关系型数据库(mysql,sqlserver..)时,我们都是有一个DAL层的,dal层的每个类,对应的是一

整合了一个功能强大完善的OA系统源码,php全开源 界面漂亮美观

整合了一个功能强大完善的OA系统源码,php全开源界面漂亮美观.需要的同学联系Q:930948049

如何设计一个RPC系统

版权声明:本文由韩伟原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/162 来源:腾云阁 https://www.qcloud.com/community RPC是一种方便的网络通信编程模型,由于和编程语言的高度结合,大大减少了处理网络数据的复杂度,让代码可读性也有可观的提高.但是RPC本身的构成却比较复杂,由于受到编程语言.网络模型.使用习惯的约束,有大量的妥协和取舍之处.本文就是通过分析几种流行的RPC实现案例,提供

如何设计一个 RPC 系统

本文由云+社区发表 RPC是一种方便的网络通信编程模型,由于和编程语言的高度结合,大大减少了处理网络数据的复杂度,让代码可读性也有可观的提高.但是RPC本身的构成却比较复杂,由于受到编程语言.网络模型.使用习惯的约束,有大量的妥协和取舍之处.本文就是通过分析几种流行的RPC实现案例,提供大家在设计RPC系统时的参考. 由于RPC底层的网络开发一般和具体使用环境有关,而编程实现手段也非常多样化,但不影响使用者,因此本文基本涉及如何实现一个RPC系统. 认识 RPC (远程调用) 我们在各种操作系统

c语言中如何设计和编写一个应用系统?

C程序中,如何设计和编写一个应用系统? 一. C语言文件的操作 1. 文件操作的基本方法: C语言将计算机的输入输出设备都看作是文件.例如,键盘文件.屏幕文件等. 向屏幕输出一个信息,例如"Hello"是 #include.h> int main() { printf("Hello\\n"); } 从键盘接收一个字符串然后显示是 #include.h> int main() { char a[10]; scanf("%s",&

第四节 综合实例:使用多态完善汽车租赁系统计价功能

综合实例:使用多态完善汽车租赁系统计价功能 主讲教师:王少华      QQ群号:483773664 学习目标 在案例中应用多态; 使用父类类型作为方法的形参 一.计算一次租赁多辆汽车的总租金 (一) 需求说明 在前一章(继承)汽车租赁系统的基础上,即已经实现了汽车租赁系统的简单计价功能,客户可以租赁一辆某种型号的汽车若干天.现在要增加需求: 客户可以一次租赁多辆不同品牌的不同型号的汽车若干天,要求计算出总租赁价. 假设有一客户要租赁: 2辆宝马 1辆别克商务舱 1辆金龙(34)座 租5天共多少

跟王老师学多态(四):综合实例:使用多态完善汽车租赁系统计价功能

综合实例:使用多态完善汽车租赁系统计价功能 主讲教师:王少华      QQ群号:483773664 学习目标 在案例中应用多态; 使用父类类型作为方法的形参 一.计算一次租赁多辆汽车的总租金 (一) 需求说明 在前一章(继承)汽车租赁系统的基础上,即已经实现了汽车租赁系统的简单计价功能,客户可以租赁一辆某种型号的汽车若干天.现在要增加需求: 客户可以一次租赁多辆不同品牌的不同型号的汽车若干天,要求计算出总租赁价. 假设有一客户要租赁: 2辆宝马 1辆别克商务舱 1辆金龙(34)座 租5天共多少

关于构建一个高可用性系统的一些措施

1.何为高可用性系统 高可用性系统是指一个系统经过专门的设计,从而达到最长使用时间,最少停机时间,保持其高度可用性.一般的标准有几个九来表示.当九越多,系统的高可用性系统越高. 2.如何去建设一个高可用性系统 建设高可用性系统主要分为两个方面考虑,第一,提高系统自身的性能(内功):第二提高系统的防御能力.            内功:            1)主要有防止缓存穿透或者雪崩. 2)然后编写代码时提高编码质量,减少bug:并且提高测试质量,压测.自动化测试等. 3)最后发布时采用灰度

一个Windows 系统究竟有多复杂?

一个Windows 系统究竟有多复杂? 来源:开发者WEB Microsoft Windows问世于1985年,起初仅仅是Microsoft-DOS模拟环境,后续的系统版本由于微软不断的更新升级,不但易用,也慢慢的成为家家户户人们最喜爱的操作系统. 下面我们从代码行数.开发难度,参与人员的数量,开发的时间长度等角度来说说,一个windows系统有多复杂. Windows XP 大约40,000,000行代码. Windows Vista 大约50,000,000行代码. Windows 7 大约