TCPCLIENT一个客户端同时对多个服务端发送数据

问题描述

现在需求是一个客户端对多个服务端发送数据我的客户端程序是4个新线程,分别连接4个服务端现在出现的问题是发送数据到服务端时,只对一个连接就很快,但是4个同时连接,同时发送就会很慢请问是哪里的问题

解决方案

解决方案二:
是带宽的问题,楼主用的是什么网络,家用的网络只是下载很快,上传则是极慢的,这是潜规则.
解决方案三:
首先,不要扯上什么“线程”概念,这样就能先避免一部分误区。你的进程中有四个TcpClient对象,对象就是对象,跟线程没有半毛钱关系,你把它们安排到程序中作为内存中的数据对象保存。如果这时候扯上“线程”概念,那么很自然地就会用一堆的相互牵制相互阻塞的东西来把简单的问题搞复杂了。然后,假设人和线程要发送数据,那么它就是类似这样的代码(例如使用第3个TcpClient来发送数据)tcplist[2].GetStream().Write(buffer,0,buffer.Length);

或者tcplist[2].GetStream().BeginWrite(buffer,0,buffer.Length,h=>{.....},null);

这就行了。当前操作在任何线程中都可以调用这样的方法,跟你说的那些线程根本没有关系。
解决方案四:
你一但说到“客户端程序是4个新线程”,这就一眼可以看出是个“大坑”,对“线程”概念走火入魔了而错误地理解了线程。
解决方案五:
比如说你的客户端进程有100个服务器要连接,当它成功连上这100个服务器之后,现在有几个(子)线程?一个都没有!因为你有100个TcpClient对象保存到程序的内存数据中就行了,跟线程有什么关系?

时间: 2024-09-29 18:46:55

TCPCLIENT一个客户端同时对多个服务端发送数据的相关文章

如何用C#实现一个客户端同时和多个服务端通讯

问题描述 我想实现一个客户端可以向多个服务端发起请求,并能异步获取到最先应答的服务端的回应,其他收到客户端请求信息但不是第一个应答的服务端不用回应,如何实现,请大家赐教,谢谢! 解决方案 解决方案二:第一个服务端不管?什么意思你怎么标识判断它是不是第一个??第一个传送数据过来的??解决方案三:你这是要进行UDP广播咯解决方案四:你会从客户端发起请求到服务端,就行了,其他的做个标志位,谁先返回,就改变标志位,其他的返回发现标志位已经改变,就不做处理了.解决方案五: 解决方案六:你有几个服务端,就定

AJAX从服务端获取数据的三种方法

本文为原创,如需转载,请注明作者和出处,谢谢!     在本文中将给出一个例子来介绍使用AJAX技术从服务端获得数据的三种方法.这个例子很简单,就是两个选择框(html中的<select>标签),通过选中第一个select的某一项后,会从服务端得到一些数据,并加载到第2个select中. 方法一.从服务端获得XML格式的数据 从服务端获得数据的最容易想到的方法就是在服务端反加一定格式的数据,一般是XML格式,然后在服务端使用XMLDocument或其他技术来读取这些数据,并生成<sele

详解Java向服务端发送文件的方法_java

本文实例为大家分享了Java向服务端发送文件的方法,供大家参考,具体内容如下 /* *给服务端发送文件,主要是IO流. */ import java.io.*; import java.net.*; class send2 { public static void main(String[] args) throws Exception { Socket s = new Socket("192.168.33.1",10005);//建立服务 BufferedReader bufr =

客户端获取服务端纯数据,我所知的有2种方案,1是javascript读取web service,2是专门用一个iframe来请求服务端页面从而获取数据 。请大家说下哪种速度最快,或者有没有更好的方案

问题描述 客户端获取服务端纯数据,我所知的有2种方案,1是javascript读取webservice,2是专门用一个iframe来请求服务端页面从而获取数据.请大家说下哪种速度最快,或者有没有更好的方案 解决方案 解决方案二:up解决方案三:客户端获取服务端纯数据ajax请求页面返回json格式也算纯数据的解决方案四:httprequest

udp-UDP跨路由器通信,客户端无法收到服务端发送的UDP包

问题描述 UDP跨路由器通信,客户端无法收到服务端发送的UDP包 本人新手,正做一个UDP跨路由通信项目,遇如下问题:服务端(192.168.0.85)与路由器在同一网段,客户端(192.168.1.103)在该路由器组成的局域网内,现服务端可以接收到客户端发送的UDP包,但客户端无法收到服务端的UDP包.请问客户端发送的UDP包需怎样设置(IP/端口)?(PS:服务端与客服端在同一局域网内是可以UDP通信的) 以下是我的UDP设置客户端--目标IP:192.168.0.85----目标端口10

安卓手机(客户端)与PC(服务端)进行TCP通讯 可是ipv4地址老变 怎么办

问题描述 安卓手机(客户端)与PC(服务端)进行TCP通讯 可是ipv4地址老变 怎么办 换台电脑测试结果又不行了 ipv4不对 有没有让服务端自己设置一个固定IP 然后让客户端来连接 这样在哪台PC上都OK了 解决方案 服务器的IP地址你设置成固定的,或者用公网合法IP,绑定域名等.防止变化 解决方案二: 国内没有固定ip,需要映射域名,可以使用花生壳之内的软件

安卓虚拟机客户端无法连接到openfire服务端

问题描述 安卓虚拟机客户端无法连接到openfire服务端 测试一个xmpp即时聊天代码,openfire服务端和代码中的地址都为本机ip,但是虚拟机上的客户端却无法登陆连接,我是用的是genymotion虚拟机,哪位大神帮忙解答一下是什么问题? 解决方案 在同一网络下就好了,设置同一IP 解决方案二: 虚拟机网络跟服务端是什么环境,NAT还是Bridge 解决方案三: 安卓客户端,服务端

android开发-想用socket从服务端发送图片到客户端,但一直出错,求原因

问题描述 想用socket从服务端发送图片到客户端,但一直出错,求原因 开发-想用socket从服务端发送图片到客户端,但一直出错,求原因-socket客户端和服务端"> 如图所示,本人新人,求大神解答 解决方案 空指针从无,TestActivity的64行 解决方案二: 空指针 socket 不能执行关闭操作(其实是不能操作任何操作) 最好在操作前增加判断:if(null != socket) {} 在 {} 中做处理. 解决方案三: 应该是创建socket失败了. socket不能放在

服务器-客户端和服务端的数据交互?

问题描述 客户端和服务端的数据交互? 最近想做一个点外卖的系统,分为客户端和服务端.但是在进行数据交互时有一点想不通,比如像现在市场上的饿了么,商家的客户端和消费者手中的app客户端是如何进行数据交互的? 我的理解是 他们之间通过一台总服务器,消费者将订单数据发往服务器,商家从服务器接收订单信息,那么服务端有是如何进行数据传输的,能讲的详细一些么... 谢谢啦! 解决方案 看你用什么语言,可以用websocket/socket/web service等很多技术实现通讯.另外分布式架构有不止一台服