请选择 进入手机版 | 继续访问电脑版

乐收

金牌服务用户

30

主题

53

帖子

285

积分

金牌服务用户

积分
285

时代开发者征文活动

乐收
金牌服务用户   /  发表于:2022-11-22 12:16  /   查看:1776  /  回复:3
1金币
各位大佬好,

      有个项目需要部署两个活字格系统,中间只能通过tcp进行通讯。发起tcp请求比较好处理,有格友做好的插件,但是接收端活字格怎么样监听tcp链接呢。
      我理解的是要有一个常驻进程进行监听。但是视乎活字格没有提供这种功能。我想可能通过Schedule API来变向实现,但是好像不是很靠谱。
       各位大佬有没有好的想法。

最佳答案

查看完整内容

大佬您好,您这个问题涉及到网络层面,偏底层,我实在没有信心能给您提个解决方案。看有没有其他格友大佬做个类型的通信场景。 说实话这个问题已经脱离活字格层面了,如果您想让进程能够自动重启的话,在 Linux 上您可以参考下面这个帖子: (7条消息) 使用Supervisor进行监控进程并实现自动重启_土豆西瓜大芝麻的博客-CSDN博客_supervisord 重启 如果是 Windows 平台看能否创建一个 Windows 服务来实现。 我这边想到的方案是 ...

3 个回复

最佳答案
最佳答案
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-22 12:16:35
来自 4#
大佬您好,您这个问题涉及到网络层面,偏底层,我实在没有信心能给您提个解决方案。看有没有其他格友大佬做个类型的通信场景。
说实话这个问题已经脱离活字格层面了,如果您想让进程能够自动重启的话,在 Linux 上您可以参考下面这个帖子:
(7条消息) 使用Supervisor进行监控进程并实现自动重启_土豆西瓜大芝麻的博客-CSDN博客_supervisord 重启
如果是 Windows 平台看能否创建一个 Windows 服务来实现。

我这边想到的方案是首先网闸两端得有一个 TCP Server 和 TCP Client,进行交互,然后网闸两端的活字格应用在设法和这些 TCP Server 进行交互。
或者考试使用基于 TCP 传输的中间件,比如 Redis、MQ,然后活字格应用设法和这些中间件交互。

既然存在网闸,部署实施的那方有没有解决方案呢?是不是可以询问下,以前上限的系统时怎么通过网闸进行通信的。




回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2022-11-22 16:52:11
2#
您好,首先想问下为什么一定要走 TCP,不能通过 HTTP 来进行通信呢?
您说的那个发起 TCP 请求的插件是什么呢?

如果一定要通过 TCP 进行通信的话,看能不能通过代码去实现,比如:
(7条消息) 【C#】使用TcpListener和TcpClient实现简单通信_diligentyang的博客-CSDN博客_tcplistener
回复 使用道具 举报
乐收
金牌服务用户   /  发表于:2022-11-22 17:27:17
3#
因为是电力系统,所以两个活字格系统之间有单向网闸,这个网闸只能通过TCP连接,而且返回的数据包只能有1byte。无法建立http连接。
我们可以进行代码开发,但是数据接收端需要的是一个常驻进程进行长时间监听并接收数据,并在监听服务挂掉的情况下进行重启。我不懂活字格如何开启这个常驻进程。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部