数据搬运工DSS~介绍
DSS介绍
DSS是为了实现异地数据同步而开发的一套.net平台的应用程序,它寄宿到windows服务上,由多个客户端和一个服务端组成,其中客户端用来收集数据(数据源端),服务端用来将数据写入指定数据库(数据目的端),整个数据传输的过程采用socket来实现,数据量单次在200K左右,保证了传输的性能;在服务端通过仓储大叔的CacheQueue队列组件来解决高并发的问题,队列为了便于后台维护,采用了文件存储的方式。
DSS系统架构图
DSS数据一致性的设计
DSS解决方案图
DSS为每个客户端配置一个单独的端口,减少数据冲突
<socketServer> <servers> <!-- maxMessageSize:1000K,socketBufferSize:8192,缓冲区指处理多少字节后进行真实的处理,如写文件写库等--> <server name="client1" port="8403" socketBufferSize="819200" messageBufferSize="819200" maxMessageSize="10240000" maxConnections="200000" serviceType="Tsingda.DSS.Server.ListeningService.Application.DSSCommandManager, Tsingda.DSS.Server.ListeningService.Application" protocol="dssBinary"/> <server name="client2" port="8402" socketBufferSize="819200" messageBufferSize="819200" maxMessageSize="10240000" maxConnections="200000" serviceType="Tsingda.DSS.Server.ListeningService.Application.DSSCommandManager, Tsingda.DSS.Server.ListeningService.Application" protocol="dssBinary"/> <server name="strCmd" port="8404" socketBufferSize="8192" messageBufferSize="8192" maxMessageSize="102400" maxConnections="20000" serviceType="Tsingda.DSS.Server.ListeningService.Application.StringCommandManager, Tsingda.DSS.Server.ListeningService.Application" protocol="asyncBinary"/> </servers> </socketServer>
好了,对于数据搬运工就介绍到这里,下次我们将分析一下源代码的实现!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core GC计划阶段(plan_phase)底层原理浅谈
· .NET开发智能桌面机器人:用.NET IoT库编写驱动控制两个屏幕
· 用纯.NET开发并制作一个智能桌面机器人:从.NET IoT入门开始
· 一个超经典 WinForm,WPF 卡死问题的终极反思
· ASP.NET Core - 日志记录系统(二)
· 在外漂泊的这几年总结和感悟,展望未来
· 博客园 & 1Panel 联合终身会员上线
· 支付宝事故这事儿,凭什么又是程序员背锅?有没有可能是这样的...
· https证书一键自动续期,帮你解放90天限制
· 在 ASP.NET Core WebAPI如何实现版本控制?
2012-03-03 你必须要知道的架构知识~第三章 接口用来制定操作的统一性