2012-06-14 8 views
0

Быстрый вопрос, кто-нибудь сделал бенчмарк по генерации случайных чисел между javascript и php? Я не говорю о 4-5 вызовах случайных функций, но в больших масштабах меня больше интересуют скорее скорости, чем лучшие случайные числа.Случайное число поколения скорость

+2

Зачем беспокоиться о нескольких математических операциях, когда вы можете получить лучшую производительность при просмотре большего изображения? ! –

+0

Также имейте в виду, что Javascript сейчас на порядок быстрее, чем PHP из-за успехов в JIT-компиляционных методах, используемых для Javascript, в то время как PHP все еще интерпретируется. – Joey

+0

@Ed Heal Я не уверен, что вы имеете в виду – slash197

ответ

0

Как отметил Алан, выполнение случайных чисел JavaScript зависит от ресурсов, которые клиентская сторона приносит на вечеринку. Тем не менее, есть еще несколько вещей, которые следует учитывать:
Поскольку вы ищете случайные числа, созданные в больших масштабах, важно отметить, что браузеры могут помешать вашему JavaScript доходить до конца цикла. Некоторые браузеры могут предположить, что сценарий содержит где-то тупик и попросит пользователя остановить или отладить скрипт.
В дополнение к этому числа будут генерироваться только до тех пор, пока клиент находится на странице и имеет JavaScript.

На PHP есть две вещи, которые следует учитывать (помимо серверного оборудования). Если вы действительно планируете генерировать огромное количество случайных чисел, ответ на ваш клиент также будет замедлен. Хотя PHP быстрее, чем JavaScript (безусловно), неудивительно, что ваши посетители слишком долго ждут ответа от сервера.
Возможным решением может быть отправка ответа в любом случае и получение произвольно сгенерированных чисел через ajax. Недостатком здесь является: вы потеряли преимущество в скорости php.

В вашей ситуации я бы сохранил сервер случайного генератора. Возможно, посмотрите на другие языки, чтобы собрать небольшую программу на C, если вы действительно сосредоточены на скорости и нагрузке на сервер (PHP - дорогостоящий ресурс). Но придерживаться тегов, опять же: придерживаться php - в конце концов, довольно много это C anyways ...

1

Это будет зависеть от вашего оборудования и окружающей среды. Например, в Javascript разные браузеры будут работать с разной скоростью.

Лучшая ставка - написать цикл в каждом и запустить его для генерации большого количества случайных чисел и показать вам, сколько времени потребовалось. Таким образом, вы узнаете, что работает лучше для вашей конкретной установки.

+0

Если это зависит от браузера, то мне, возможно, придется сделать это на стороне сервера, все его пользователи будут использовать его. – slash197