社区
Linux/Unix社区
帖子详情
我要做一个网络通信的程序,会涉及到从几个连接接收数据,然后整合
superdai
2007-04-06 03:24:52
就象是一个tcp服务器,从几个不同的连接接收数据,我看了些样例,linux中都是要将连接fork成子进程,那么子连接接收的数据必定是在子进程当中,这样几个子进程再将数据进行组合(比如统一由父进程来处理),应该是要使用共享内存来做。
不知道有没兄弟知道这个的比较成熟的做法,我的思路是否正确?
...全文
429
6
打赏
收藏
我要做一个网络通信的程序,会涉及到从几个连接接收数据,然后整合
就象是一个tcp服务器,从几个不同的连接接收数据,我看了些样例,linux中都是要将连接fork成子进程,那么子连接接收的数据必定是在子进程当中,这样几个子进程再将数据进行组合(比如统一由父进程来处理),应该是要使用共享内存来做。 不知道有没兄弟知道这个的比较成熟的做法,我的思路是否正确?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
superdai
2007-04-10
打赏
举报
回复
多谢楼上各位,受教了
worldnews
2007-04-09
打赏
举报
回复
如果是这种情况,我倒是建议楼主将接收和整合部分分开成两个独立的程序模块,两个程序模块间可以使用各种IPC进行通讯(比如消息队列,也可以使用第三方的中间件交互),接收的只接收,整合的只整合,这样会更便于以后扩展,也更符合unix下的设计思想。
hwz_119
2007-04-09
打赏
举报
回复
同意楼上,用什么方法实现还是要根据你的实际情况,如果客户端少,连接时间长的话推荐使用fork,安全稳定.CLIENT数目有最大数值的(不是越多越好的),连接时间比较长的这一类服务,用多THREAD几乎没有什么意义。 THREAD的优势是创建开始运行比进程快些(pthread_create比fork), 一旦运行起来,进程的切换和thread的切换差别没有什么。调度也都按进程做的。
THREAD因为共享了内存使得物理内存节省。然而进程本身也有共享的物理页(比如共享库部分)。
还有一开始用多THREAD在那里等着(池)。对于连接数量小并且固定的服务意义不大。正是因为共享内存,使得多THREAD程序的调试麻烦,运行稳定性不如进程。所以我建议,能不用THREAD尽量不用。如果必须用,也可以先不用--用进程,等都调试好了后在改THREAD。也不晚。
ylc8131
2007-04-08
打赏
举报
回复
并发量不是很大的话,或者对处理时间要求不严的情况下 单进程select或者poll就可以了,不用太复杂
并发量大的情况下肯定要用到多进程,进程间传递数据的方式有很多, 不一定要用共享内存,个人觉得消息队列比较好用,不用自己做互斥,呵呵
darkone
2007-04-06
打赏
举报
回复
正确,我这里处理消息量每天都在几千万,就是这种方式.子进程的优势在于可以一直保持服务端的端口稳定,不会因为进程处理消息意外core掉而影响其他客户端的服务
字与码
2007-04-06
打赏
举报
回复
不妨使用多线程,这样就没有进程间通信的麻烦了。
STM32F407-摄像头拍照
网络通信
实验
应单片机课设要求,
做
了
一个
摄像头拍照
网络通信
C/S实时LCD显示。该工程基于原子STM32F4的摄像头与
网络通信
实验,在此基础上,将其
整合
。 1.预期功能: 摄像头拍取的内容实时传输至LCD进行显示 通过
网络通信
C/S方式将STM32摄像头拍取的照片传输到电脑端 在PC端开发可视化界面接受摄像头数据并更新显示 2.实施步骤: 1.参考STM32原子摄像头实验与
网络通信
实验例程,主要需要了解以下知识。
一个
整合
性、功能丰富的.NET
网络通信
框架
NET
网络通信
框架有什么好推荐的吗?今天大姚给大家分享一款基于Apache License开源的
一个
整合
性、功能丰富的.NET(包括 C# 、VB.Net、F#)
网络通信
框架:TouchSocket。
java
网络通信
:Springboot
整合
Websocket
WebSocket(Web套接字)是一种在单个 TCP
连接
上实现全双工通信的协议,允许客户端和服务器之间进行双向实时通信。双向通信: WebSocket 允许服务器向客户端主动推送消息,同时也允许客户端发送消息给服务器,实现了双向通信。持久
连接
: 与传统的 HTTP 请求-响应模型不同,WebSocket
连接
在建立后可以一直保持,而不需要为每个消息都建立新的
连接
,减少了通信的延迟和开销。
IO操作在
网络通信
中起着核心的作用,在网络编程中,IO通常指的是输入输出,主要
涉及
到数据的读取和写入
IO操作在
网络通信
中起着核心的作用。在网络编程中,IO通常指的是输入输出,主要
涉及
到数据的读取和写入。让我们更详细地了解这些操作在
网络通信
中的应用。
科技中介服务机构在为中小企业提供转型支持时,如何利用“区域科技创新数智大脑”优化服务流程?.docx
科技中介服务机构在为中小企业提供转型支持时,如何利用“区域科技创新数智大脑”优化服务流程?
Linux/Unix社区
23,223
社区成员
74,536
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 应用程序开发区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章