问题标签 [tcpserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
393 浏览

jscript - WSH TCP 服务器可以吗?

我想使用WSH jscript在windows上编写一个脚本,由jsc编译。

我希望脚本充当一个非常简单的 tcp 服务器,监听指定的任何端口,并在收到任何请求时发送文本字符串。

我发现一些实现依赖于一个似乎只在安装了开发人员软件的 Windows 机器上可用的库。我需要一个可以在任何 Windows 机器上运行的实现(安装了 .NET)。如果有一个可以帮助侦听 tcp 套接字的 dll,我很高兴包含一个 dll。

是否有合适的 dll 充当 tcp 服务器?

jscript中是否有可以用jsc编译的tcp服务器实现?

0 投票
5 回答
4383 浏览

delphi - 没有 OnExecute 事件的 TCPserver

我想创建一个 TCPserver 并根据需要向客户端发送/接收消息,而不是 TCPserver 的 OnExecute 事件。

发送/接收消息不是问题;我喜欢这样:

注意 1:如果我不使用 OnExecute,程序会在客户端连接时引发异常。
注意 2:如果我在不做任何事情的情况下使用 OnExecute,CPU 使用率会变为 %100
注意 3:我没有机会更改 TCP 客户端。

所以我该怎么做?

0 投票
2 回答
1961 浏览

c# - TCP 客户端在环回时未收到响应

我在 Windows 2k8 上的 vs2010 上的 localhost 上启动并运行了一个 TCP 服务器。

当我使用 vs2010 在 127.0.0.1 上连接客户端时,服务器收到调用(我可以从调试中看到),因为 tcp 服务器执行命令行协议处理程序,但客户端确实收到服务器响应,即会话键,但在读取响应流时会在客户端阻塞。

当我在环回上对同一端口使用 Telnet 时,发送相同的命令序列时,会立即收到响应,即会话密钥。

这是客户端代码:

鲍勃

0 投票
0 回答
236 浏览

ruby - Ruby 套接字问题

我正在用 Ruby 编写一个名为 RMS 的 Minecraft Classic 服务器,它目前可以很好地向 minecraft.net 发送心跳。但问题是,当客户端(以 TCPSocket 的形式)连接时,只有服务器发送了服务器 ID 包或客户端退出。但服务器ID必须在服务器收到玩家信息后发送;每个玩家的内容都不一样。

可能是设计使然,但这是一件奇怪的事情......


您可以在此处找到当前的服务器软件。谢谢!

编辑:确切的问题位于行99-101program/server.rb

0 投票
1 回答
282 浏览

iphone - Apple IOS 应用程序和 Delphi TidCmdTcpServer

我有一个用 Delphi 编写的服务器进程,该进程已投入生产多年。它使用TidCmdTcpServer与客户端通信(也是用 Delphi 编写并使用 TidTcpClient)。此服务器使用启用了 SSL 加密。

除了现有的客户端之外,我正在考虑编写一个 iPhone/iPad 应用程序来使用。我已经搜索过,但找不到任何有关如何将 IOS 客户端连接到 Windows 上运行的 SSL 加密 TidCmdTcpServer 服务的示例。

有没有人有任何想法?

谢谢,肯

0 投票
1 回答
479 浏览

c# - Howto- 验证 app.config 中从客户端到服务器的加密用户名/密码。

我有一个客户端,它与 TCP 服务器通信。我将用户名/密码存储在 app.config 中。我想加密用户名/密码,并且 app.config 将按照标准方法加密(我知道该怎么做)。

我假设我将需要一个提供程序服务器端,它将采用加密的用户/通行证并对其进行身份验证。该服务器还由一个将使用标准成员资格提供程序的 asp.net 应用程序驱动,如果服务器使用 Sql Server 作为它的 db,或者类似 Sqlite/Oracle 的东西。

所以问题是。

  1. 服务器端对用户进行身份验证的理想提供程序是什么。
  2. 加密用户名和密码的公认方法是什么。
  3. 或者服务器是否需要采用加密用户/密码的自定义用户/密码验证器。
  4. 我可以以某种方式将服务器用户/密码提供程序挂钩到 asp.net 成员资格提供程序。
  5. 对于理想的提供商,我是否需要在服务器上创建帐户。

    可能有超过 500 多个客户。

    非常感谢。鲍勃。

0 投票
2 回答
3022 浏览

c# - c#中的tcp监听器和tcp服务器是一样的吗?

TCP侦听器和TCP服务器有什么区别?我想与一些使用 TCP/IP 协议的设备进行通信,并希望 PC 使用 C# 来组织通信。

0 投票
2 回答
1403 浏览

tcp - 在 EC2 实例上扩展 TCP 服务器的分布式问题

使用 EC2 实例(以及 Amazon Auto Scaling 和 Elastic Load Balancing)我有几个 TCP 服务器实例在Amazon Web Services中运行。每个 EC2 实例都可以访问一个集中式数据库(在 Amazon RDS 上运行)。为了使这个后端具有可扩展性,新的 EC2 实例(TCP 服务器的)会根据需求进行扩展和缩减。

服务器是使用Python Twisted框架制作的。该系统支持自定义即时消息服务,用户可以加入多个群聊。

当用户开始使用该服务时,他们会与其中一个 TCP 服务器建立一个 TCP 套接字。每个服务器在内存中存储当前连接的用户(即打开的 TCP 套接字)以及每个用户当前“加入”的“群聊”(并因此订阅)。创建的所有聊天数据都存储在数据库中。

问题

当 UserA 在 GroupChatZ 中发布消息时,GroupChatZ 中的所有用户都应该收到该消息。如果只有 1 个 TCP 服务器,这很简单:它将在其内存中搜索“群聊”中的所有用户并向他们发送新消息。然而,由于有多个服务器,当创建一条新消息时,该服务器必须将消息传递给所有其他服务器(即 EC2 实例)。

解决这个问题最有效的方法是什么?也许使用 AWS 组件。


我能想到的一种解决方案是,每台服务器在首次启动时将其 IP 地址存储在数据库中,并获取所有其他已连接服务器的 IP 地址并与它们建立 TCP 连接。当收到每条新消息时,处理它的服务器可以将它发送到它所连接的所有其他服务器。

然而,TCP 连接并非 100% 可靠,而且这种解决方案增加了复杂性。


我怀疑实际上有一种很好的方法可以使用一些 Amazon Web Services 组件来实现简单的订阅者-发布者类型机制(想想观察者设计模式)。即,一台服务器添加了一些东西,所有其他服务器都从它那里实时获取消息。

0 投票
1 回答
3273 浏览

twisted - Twisted:与 TCP 服务器的客户端连接数有限?

我正在编写一个聊天服务器,在对其进行单元测试时遇到了以下问题。在我的一个单元测试中,我将许多测试客户端连接到我的服务器。当连接的用户数达到 511 时,服务器停止响应而没有任何错误消息。在这个阶段,一切都在 PC 上本地运行。

我准备了一个简单的服务器、测试客户端和单元测试代码粘贴到论坛中。

知道为什么服务器挂断了吗?任何帮助深表感谢

这段代码基本上来自于twisted simple chat tutorial。简单服务器:

这是我的测试客户。这个客户端被单元测试多次实例化。

最后是单元测试代码文件:

0 投票
1 回答
421 浏览

testing - TCP服务器测试

我有一个用 C# 编写的 TCP 服务器(监听器)软件。许多设备(大约 5000 台)将异步连接到服务器并向服务器发送/接收消息。现在,我有 2 个问题。

  1. 我必须向每条收到的消息发送回复消息。我应该使用哪种方式?异步(收到消息后尽快)或同步(使用回复任务发送回复)。

  2. 我如何对我的服务器进行压力测试?我可以与 1-2 台计算机成功通信,但我不知道我的软件是否适用于 5000 台设备。