AgileEAS.NET SOA 中间件平台.Net Socket通信框架-完整应用例子-在线聊天室系统-下载配置

本文涉及的产品
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
注册配置 MSE Nacos/ZooKeeper,118元/月
性能测试 PTS,5000VUM额度
简介:

一、AgileEAS.NET SOA中间件Socket/Tcp框架介绍

     在文章AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架介绍一文之中我们对AgileEAS.NET SOA中间Socket/Tcp框架进行了总体的介绍,我们知道

AgileEAS.NET SOA中间件Socket/Tcp框架是一套Socket通信的消息中间件:

image_thumb2_thumb3

二、简单的服务器客户段消息应答

     在文章AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架-简单例子-实现简单的服务端客户端消息应答中我们实现了一个简单的客户端消息请求==>服务端应答的简单的Socket应用。

三、完整的应用-实现完整的聊天室

     本文我们将实现一个多人聊天室的应用,类似于早年的网络聊天室或者当年的QQ网络聊天室或者游戏里面的聊天功能,聊到室主界面如下:

H_%A[}

     聊天室支持公聊和私聊频道,理论上可以支持几百甚至几千人,具体上限没有经过测试,在这个案例之中,大家将会掌握基于AgileEAS.NET SOA中间件Socket/Tcp框架的比较复杂的消息定义及消息处理及消息协调,同时还会掌握如何管理服务端的链接、聊天室用户在线状态、消息的多目标转发等功能。

     本案例的可执行客户端程序和服务端已经在我们的服务器上为大家部署了一套,大家可以下载客户段http://42.121.30.77/downloads/eas/examples/chat.client.rar体验,下载客户端压缩包之后解压缩,注册一个账号就可以使用这个账号登录我们为大家搭建的聊天室服务端。

MZVLR1_LY2AQB$ASWM$G{)P

三、下载源代码编译配置运行

     本案例源代码请通AgileEAS.NET SOA中间件官方网站的最新下载中的栏目进行下载或者从SVN中获取最新版本的源代码:

LW38B4P5OHU~WZ{`)`[Y197

下载或者SVN-OUT得到代码之后我们来看一下代码文建构:

一级目录

二级目录

说明

Code

 

程序源代码

 

Entities

实体(ORM)代码

 

BLL.Contracts

业务契约定义代码

 

BLL.Host

数据实现代码

 

Messages

Socket通信消息定义

 

Services

Socket服务定义

 

ChatRoom

客户段程序代码

 

UserManage

注册用户管理代码

db

 

用户数据库文件,Sqlite数据库

Documents

 

文档,用户模型文档

Publish

 

引用程序集及编译输出

             然后用VS2010或者VS2012打开Code目录之中的ChatRoom解决方案进行编译,编译写成之后我们开始进行配置。

     打开Publish目录之中的EAS.SOA.Server.exe.config进行服务端配置:

4W5DT(AWNV}`YX%0U@OEDJJ

WJ0OWEV1PXE}_`SI{YO2BFU

     其中最重要的配置就是配置服务端sqlite数据库文件的路径,以及端口号,当然端口号是可以不用修改的,配置完成之后我们启动Publish目录之中的soaserver.start.bat指指理文件来启动聊天室服务端:

N6HE]4DVN%_N}6ST}FABXR3

     启动聊天室服务端的本质是启动AgileEAS.NET SOA 中间件SOA服务,在SOA服务之中我们集成了Socket插件服务系统,我们的聊天室做为一个SOA的Socket插件服务被进行加载和处理,需要说明的是如果你的运行环境是Win7或者Win2008操作系统,需要以管理员权限运行启动脚本:

BL@PQ)_6(B95%MID}JBCJSK

接下来我们配置客户段,打开ChatingRoom.MainClient.exe.config文件,修改以下地方:

5P~7LUEK6T_YJFT}K5P@QT4

    这样我们变完成了聊天室客户端的配置,运行ChatingRoom.MainClient.exe程序启动客户端的登录窗口:

L$ZPI7X6_6N]1I`[TQZ)]9U

    点用户注册注册一个新用户:

9H3P~K47S%S51)H4K6D$9{C

    注册成功之后使用这个用户登录聊天室:

MVA{M14~7~[DU9LSTZT_INS

     到时为止,聊天室案例的配置过程到此完成!

四、源代码学习

     要学习和研究本案例的源代码,请参考:

     1.AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架介绍

     2.AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架-简单例子-实现简单的服务端客户端消息应答

     在之后的文章之中我们将会对本案例源代码进行分析。

五、特别感谢

     感谢团队成员计文忻同学为大家编写了本案例的第一版本,之后我在通信和界面上做了一些小的调整,也感谢王涛同学为本应用案例提供了Banner图片和一些界面美工建议,也感谢在此案例进行测试和提出建议的客户和小伙伴们。

六、联系我们

     为了完善、改进和推广AgileEAS.NET而成立了敏捷软件工程实验室,是一家研究、推广和发展新技术,并致力于提供具有自主知识产权的业务基础平台软件,以及基于业务基础平台了开发的管理软件的专业软件提供商。主要业务是为客户提供软件企业研发管理解决方案、企业管理软件开发,以及相关的技术支持,管理及技术咨询与培训业务。

     AgileEAS.NET平台自2004年秋呱呱落地一来,我就一直在逐步完善和改进,也被应用于保险、医疗、电子商务、房地产、铁路、教育等多个应用,但一直都是以我个人在推广,2010年因为我辞职休息,我就想到把AgileEAS.NET推向市场,让更多的人使用。

     我的技术团队成员都是合作多年的老朋友,因为这个平台是免费的,所以也没有什么收入,都是由程序员的那种理想与信念坚持,在此我感谢一起奋斗的朋友。

团队网站:http://www.agilelab.cn

AgileEAS.NET网站:http://www.smarteas.net

官方博客:http://eastjade.cnblogs.com

QQ:47920381,AgileEAS.NET

QQ群:113723486(AgileEAS SOA 平台)/上限1000人

199463175(AgileEAS SOA 交流)/上限1000人

120661978(AgileEAS.NET 平台交流)/上限1000人

212867943(AgileEAS.NET研究)/上限500人

147168308(AgileEAS.NET应用)/上限500人

172060626(深度AgileEAS.NET平台)/上限500人

116773358(AgileEAS.NET 平台)/上限500人

125643764(AgileEAS.NET探讨)/上限500人

193486983(AgileEAS.NET 平台)/上限500人

邮件:james@agilelab.cn,mail.james@qq.com,

电话:18629261335。


作者:魏琼东 
出处:http://www.cnblogs.com/eastjade
关于作者:有13年的软件从业经历,专注于中小软件企业软件开发过程研究,通过在技术与管理帮助中小软件企业实现技术层面开源节流的目的。熟悉需求分析、企业架构、项目管理。现主要从事基于AgileEAS.NET平台的技术咨询工作,主要服务于医疗卫生、铁路、电信、物流、物联网、制造、零售等行业。如有问题或建议,请多多赐教! 
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,如有问题,可以通过mail.james@qq.com 联系我,也可以加入QQ群:113723486、199463175、116773358、116773358、212867943、147168308、59827496、193486983、15118502和大家共同讨论,非常感谢。


    本文转自魏琼东博客园博客,原文链接:http://www.cnblogs.com/eastjade/p/3380244.html,如需转载请自行联系原作者

相关文章
|
7月前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
251 7
|
2月前
|
数据采集 中间件 开发者
Scrapy爬虫框架-自定义中间件
Scrapy爬虫框架-自定义中间件
64 1
|
5月前
|
中间件 数据处理 Apache
|
1月前
|
消息中间件 NoSQL Java
springboot整合常用中间件框架案例
该项目是Spring Boot集成整合案例,涵盖多种中间件的使用示例,每个案例项目使用最小依赖,便于直接应用到自己的项目中。包括MyBatis、Redis、MongoDB、MQ、ES等的整合示例。
114 1
|
2月前
|
网络协议 机器人 C++
KUKA机器人Socket通讯配置方法:技术干货分享
【10月更文挑战第7天】在现代自动化生产线上,KUKA机器人凭借其高效、灵活和精确的特点,成为众多企业的首选。为了实现KUKA机器人与其他设备或系统之间的数据交互,Socket通讯配置显得尤为重要。本文将详细介绍KUKA机器人Socket通讯的配置方法,帮助大家在工作中更好地掌握这一技术。
302 2
|
5月前
|
JSON 中间件 数据处理
实践出真知:通过项目学习Python Web框架的路由与中间件设计
【7月更文挑战第19天】探索Python Web开发,掌握Flask或Django的关键在于理解路由和中间件。路由连接URL与功能,如Flask中@app.route()定义请求响应路径。中间件在请求处理前后执行,提供扩展功能,如日志、认证。通过实践项目,不仅学习理论,还能提升构建高效Web应用的能力。示例代码展示路由定义及模拟中间件行为,强调动手实践的重要性。
61 1
|
4月前
|
开发框架 .NET API
.Net Core Console 项目如何使用 HttpClient 与 Web 服务通信
.Net Core Console 项目如何使用 HttpClient 与 Web 服务通信
|
5月前
|
缓存 监控 安全
中间件在Python Web框架中的角色与应用场景
【7月更文挑战第21天】中间件在Python Web开发中作为服务器与应用间的软件层,拦截、处理请求和响应,无需改动应用代码。它扩展框架功能,复用跨应用逻辑,加强安全,优化性能。如Django中间件处理请求/响应,Flask通过WSGI中间件实现类似功能,两者均在不触及核心代码前提下,灵活增强应用行为,是现代Web开发关键组件。
66 0
|
5月前
|
中间件 数据库 开发者
解析Python Web框架的四大支柱:模板、ORM、中间件与路由
【7月更文挑战第20天】Python Web框架如Django、Flask、FastAPI的核心包括模板(如Django的DTL和Flask的Jinja2)、ORM(Django的内置ORM与Flask的SQLAlchemy)、中间件(Django的全局中间件与Flask的装饰器实现)和路由(Django的urls.py配置与Flask的@app.route()装饰器)。这些组件提升了代码组织和数据库操作的便捷性,确保了Web应用的稳定性和可扩展性。
70 0
|
6月前
|
Linux Docker 容器
蓝易云 - net.ipv4.ip_forward=0导致docker容器无法与外部通信
完成以上步骤后,Docker容器应该能够正常与外部通信了。
329 2

热门文章

最新文章