Какой язык программирования я должен использовать для TCP-сервера для клиентов JavaScript? - PullRequest
0 голосов
/ 21 сентября 2010

Я прошу совета, какой язык программирования наиболее приемлем для следующей ситуации.

Программа будет выполнять роль сервера в сетевом приложении TCP, обслуживая клиентов JavaScript, которые выводят данные в браузер, с использованием предварительно написанной среды.

Серверная программа должна быть всегда включена и иметь возможность работать с JSON.

Мой первый инстинкт - использовать PHP, потому что он может запускать один и тот же веб-сервер и имеет уже существующие функции JSON и TCP. Есть ли способ запуска сценариев PHP на сервере без необходимости открывать браузер для запуска сценария? - скрипт должен работать часами без перерыва.

Другими рассматриваемыми языками являются C #, C ++, Java.

Заранее спасибо.

Ответы [ 3 ]

1 голос
/ 21 сентября 2010

node.js

Первый пример на домашней странице показывает, насколько просто в него встроить серверы

var http = require('http');
http.createServer(function (req, res) {
  res.writeHead(200, {'Content-Type': 'text/plain'});
  res.end('Hello World\n');
}).listen(8124, "127.0.0.1");
console.log('Server running at http://127.0.0.1:8124/');
0 голосов
/ 21 сентября 2010

Похоже, вы пытаетесь запустить php-скрипт для отправки данных в браузер в режиме реального времени.PHP не идеален для этого, так как он блокируется по типу io и станет ужасно медленным / аварийно завершает работу, когда не хватает доступных потоков.Это очень плохо с точки зрения масштабируемости.Java идеально подходит для этого, поскольку дает вам возможность управлять обработкой потоков.Если вы действительно хотите отправить данные в браузер в режиме реального времени, то вы захотите провести длинный опрос xhr.APE-сервер на данный момент является лучшим решением, которое я нашел для этого:

http://www.ape -project.org /

В качестве примечания вы можете запустить phpскрипты на стороне сервера без браузера.Для системы Linux вам понадобится php-cli для этого.Чтобы получить php-cli, в терминале введите sudo -s, нажмите ввод, введите пароль, нажмите ввод, введите sudo apt-get install php-cli, нажмите y, затем снова нажмите ввод.Затем создайте файл с именем yourfilename.run в том же каталоге, что и ваш php-файл, и вставьте в файл .run следующее:

php -f name_of_php_file.php

Разрешить файлу бытьвыполняется в терминале (щелкнув его правой кнопкой мыши и выбрав его), затем дважды щелкните его, чтобы открыть его в терминале.Вуаля, ваш скрипт работает без браузера.

Но еще раз, если вы пытаетесь отправить данные в браузер в режиме реального времени, php - плохой выбор.Потратьте время, чтобы заглянуть в ape-сервер.

0 голосов
/ 21 сентября 2010

Любой может сделать запрос, который запускает скрипт PHP, это не обязательно должен быть браузер. Например, задание cron может просто запросить определенную страницу, и оно будет выполнено. Или он может выполнить его напрямую .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...