gpt4 book ai didi

PHP 套接字还是 Python、Perl、Bash 套接字?

转载 作者:可可西里 更新时间:2023-11-01 00:12:03 24 4
gpt4 key购买 nike

我正在尝试实现一个将在大多数共享 PHP 托管中运行的套接字服务器。

要求是 Socket 服务器可以从 PHP 自动安装、启动和停止,而无需用户做任何事情。套接字服务器用什么语言编写并不重要,只要它能在全局大多数共享主机上运行即可。

目前,我已经用 PHP 编写了一个实现对象缓存的套接字服务器: http://code.google.com/p/php-object-cache/

来源:http://code.google.com/p/php-object-cache/source/browse/trunk/socket.class.php

但是,PHP 必须编译为支持套接字,并且运行 PHP 套接字支持的服务器并不多。

我真正的问题是:我应该用什么语言来实现套接字服务器,并获得最大的平台支持并可以从 PHP 中调用。

换句话说,什么脚本语言在支持 PHP 的服务器上最常见?

或者我是否必须用编译语言编写套接字服务器才能让它在所有服务器上工作?

目前让 IIS 不在考虑范围之内,只考虑 Linux 服务器。我认为没有很多 PHP 站点在 IIS 上运行...


编辑:

抱歉,我觉得我的问题不清楚。

我想知道,在满足以下要求的情况下,哪种语言最适合创建套接字服务器:

该语言必须存在于共享主机中,以及运行在 Apache(而非 CLI)中的 PHP。必须在 native 启用套接字支持,而不是通过所需的扩展。PHP 必须能够将守护进程写入文件以及启动和停止守护进程。

我不是在寻求针对单个服务器的解决方案。它必须在大多数共享托管服务器上本地运行。

最佳答案

任何服务器都可以在 Linux 下由 PHP 停止或启动。当然,如果你运行的服务器接受来自互联网的套接字,那么你可以直接连接到服务器并告诉它关闭。无需通过 PHP!

至于“从 PHP 启动服务器”,好吧,在 Linux 下,几乎可以从任何东西启动任何东西。只需 shell 启动进程并让它进入守护进程模式。

我自己是 Perl 的粉丝。毫不奇怪,有一个 Perl Daemon library available .

如果您的托管服务提供商提供 Perl 脚本支持,那么您可能有权使用“系统”或反引号 command。然后你很可能会启动一个守护进程。但是,您需要使用非特权端口(超过 1024)。另外,你应该先问他们!他们可能不喜欢您占用他们服务器上的端口。这绝对是您应该与您的托管服务提供商讨论的事情。

关于PHP 套接字还是 Python、Perl、Bash 套接字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1047991/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com