asp.net发送socket请求

问题描述

用网站给硬件发送tcp请求1.发送登陆指令2.发送控制指令用网站发送请求连接会断开。一直返回要求登陆的指令。请问网站怎么实现这个功能,还是要做中间件?

解决方案

解决方案二:
登录指令返回什么?你是在登陆之后才发送指令,还是乱序?什么叫做“做中间件”?做与不做什么中间件还不是一样的东西。
解决方案三:
另外做一个windowsservice和下位机通讯,共享数据库给asp.net
解决方案四:
其实这只是一个ASP.NET的生命周期的问题,当前端post给后台,后台处理完成以后,就会自动断开。每次都是一个新的实例,因此后台通过Socket与硬件通讯肯定也会断开的。而针对这样的情况,只能如3L所说的,后台用一个Service监控队列(如MSMQ),然后监测到有数据,就往硬件发送消息。而没有监控到,也不断开与硬件的通讯。而ASP.NET仅只需要往队列中发送消息就行了。
解决方案五:
引用3楼jjkk168的回复:

其实这只是一个ASP.NET的生命周期的问题,当前端post给后台,后台处理完成以后,就会自动断开。每次都是一个新的实例,因此后台通过Socket与硬件通讯肯定也会断开的。而针对这样的情况,只能如3L所说的,后台用一个Service监控队列(如MSMQ),然后监测到有数据,就往硬件发送消息。而没有监控到,也不断开与硬件的通讯。而ASP.NET仅只需要往队列中发送消息就行了。

意思就是我还需要做一个例如winform的东西来发送协议,公用一个数据库,网站只是用来显示这些设备的状态是吧。
解决方案六:
你也可以做成短连接的也就是说,每次要给设备发送指令,都先登陆,接收到反馈之后,就断开连接,而不要企图保持什么长连接
解决方案七:
引用5楼Z65443344的回复:

你也可以做成短连接的也就是说,每次要给设备发送指令,都先登陆,接收到反馈之后,就断开连接,而不要企图保持什么长连接

当然,这种方式如果并发数非常高的话,是会出问题的每个用户登陆系统都去操作设备,同时有很多个线程都给设备发指令,估计逻辑会出问题如果并发数高,那么你需要在网站上将请求写入队列,然后另一个服务程序从队列里取出请求,顺序的给设备发指令
解决方案八:
感觉好复杂呀,帮顶下

时间: 2024-09-20 00:58:15

asp.net发送socket请求的相关文章

linux c socket-Linux c socket发送http请求得到了响应报文,但是有问题啊

问题描述 Linux c socket发送http请求得到了响应报文,但是有问题啊 我发送的是: GET / HTTP/1.1rn Host:www.baidu.comrn 但是得到的是下面的内容: HTTP/1.1 200 OK Date: Sat, 28 Jun 2014 20:13:27 GMT Content-Type: text/html; charset=utf-8 Transfer-Encoding: chunked Connection: Keep-Alive Vary: Acc

aspnet自定义请求-ASP.NET自定义一个请求成功发送,为什么服务器无法拿到数据

问题描述 ASP.NET自定义一个请求成功发送,为什么服务器无法拿到数据 场景:服务端套件要求客户端必须携带安全令牌,所以需要在客户端的请求报文头中植入一个安全令牌(也就是一个键值对),那么就不能使用HTML的表单进行提交,我需要自定义一个请求. 所以我用到了webrequest,代码如下: public class Handler : IHttpHandler { public void ProcessRequest (HttpContext context) { context.Respon

asp.net使用Socket.Send发送信息及Socket.SendFile传输文件的方法_实用技巧

本文实例讲述了asp.net使用Socket.Send发送信息及Socket.SendFile传输文件的方法.分享给大家供大家参考,具体如下: // Displays sending with a connected socket // using the overload that takes a buffer. public static int SendReceiveTest1(Socket server) { byte[] msg = Encoding.UTF8.GetBytes("Th

php 利用socket发送HTTP请求(GET,POST)_php技巧

今天给大家带来的是如何利用socket发送GET,POST请求.我借用燕十八老师封装好的一个Http类给进行说明. 在日常编程中相信很多人和我一样大部分时间是利用浏览器向服务器提出GET,POST请求,那么可否利用其它方式提出GET,POST请求呢?答案必然是肯定的.了解过HTTP协议的人知道,浏览器提交请求的实质是向服务器发送一个请求信息,这个请求信息有请求行,请求头,请求体(非必须)构成.服务器根据请求信息返回一个响应信息.连接断开.   HTTP请求的格式如下所示: <request-li

timeout-android发送http请求很不稳定,有时连不上就一直连不上

问题描述 android发送http请求很不稳定,有时连不上就一直连不上 09-13 16:41:55.705: W/System.err(29888): java.net.SocketTimeoutException: Connection timed out09-13 16:41:55.705: W/System.err(29888): at org.apache.harmony.luni.platform.OSNetworkSystem.connect(Native Method)09-1

Android系列之网络(一)----使用HttpClient发送HTTP请求(通过get方法获取数据)

[正文]  一.HTTP协议初探: HTTP(Hypertext Transfer Protocol)中文 "超文本传输协议",是一种为分布式,合作式,多媒体信息系统服务,面向应用层的协议,是Internet上目前使用最广泛的应用层协议,它基于传输层的TCP协议进行通信,HTTP协议是通用的.无状态的协议. 这几个名词有一种通俗的解释: 通讯协议:双方对话的标准 通用的:用了都说好,谁用谁知道 无状态的:翻脸不认人 超文本:除了文本,还可以是音频.视频 HTTP协议与Android开发

请问socket请求,怎么模拟?service返回的消息怎么获取

问题描述 请问socket请求,怎么模拟?service返回的消息怎么获取 请教各位大神:我们现在要模拟socket请求,类似于这样的 5:::{"name":"message","args":[{"topic":"quote","data":{"ver":134,"msgid":0,"flag":0,"uuid&qu

php发送http请求的常用方法分析_php技巧

本文实例讲述了php发送http请求的常用方法.分享给大家供大家参考,具体如下: http请求有get,post. php发送http请求有三种方式[我所知道的有三种,有其他的告诉我]. 1. file_get_contents();详情见:http://www.jb51.net/article/41833.htm2. curl发送请求.3. fsocket发送. 下面说使用curl发送. 首先环境需要配置好curl组件. 在windows中让php支持curl比较简单: 在php.ini中将e

求大神指教,关于linux c语言发送post请求问题

问题描述 求大神指教,关于linux c语言发送post请求问题 http://www.360doc.com/content/14/0428/17/7256015_372968249.shtml 请大神帮忙看看这个网页上面的程序可行么,为什么我把其中的信息改为我自己的却不好使呢 解决方案 可能你的服务器是https的,加了ssh的交互信息,socket就不够用了,因为socket不支持ssh 解决方案二: 看下服务器respons的状态码 确认下是你的程序有问题还是其它原因