Что может быть лучшим способом для сравнения пользователей ПК, PHP или JS? - PullRequest
3 голосов
/ 20 января 2012

PHP - Apache с Codeigniter

JS - типично для jQuery и в домашних условиях lib

Проблема: Определение (без принудительной загрузки) возможности ПК и / или вируса на компьютере пользователя

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

Прогресс: Пока что мыМы нашли достойный способ проверить скорость dl, но это все.

Что мы сделали: В php мы создаем массив данных объемом 2.5 Гб для отправкипользователь в представлении, оттуда представление вычисляет время, которое потребовалось для получения данных, а затем вычитает эталонный тест php из этого времени, чтобы получить точку отсчета времени загрузки / выгрузки.Этого недостаточно.

У некоторых наших (локальных) пользователей обнаружены "дрянные" компьютеры или они инфицированы вирусом, и это может привести к двум проблемам.(1) они терпят крах в середине задачи предварительного формирования в нашей программе, или (2) их вирус 'может пытаться внедриться в наши js, создавая, таким образом, плохой опыт, который может заставить нас выглядеть плохо в среднем (необразованным в том, как этот материалработает), таким образом, нанося ущерб «нашей» целостности.

Я немного погуглил, но большинство плагинов или советов / форумов / блогов, которые я обнаружил, просто дают способы для оценки скорости вашего JS иэтого просто недостаточно.Мне нужен простой кусок кода (без визуального интерфейса, еще одна проблема, которую я обнаружил с одним хорошим фрагментом js lib, который сделал это, но потребовалось бы несколько дней, чтобы удалить весь личный визуальный код авторов), который позволит мне протестировать следующее3 вещи:

  1. Скорость передачи данных пользователя (я думаю, что мы рассмотрели это, но если будет представлен лучший метод, я не исключу)
  2. Скорость обработки пользователя, какБыстрее ли компьютер в целом
  3. Возможен ли тест на заражение вредоносным ПО, рекламным ПО, что угодно, что может быть вредно для пользователя

Что мы не собираемся делать: ремонтировать свой компьютер!Нам не важно, есть ли у них проблемы, мы просто не хотим приводить их на наш сайт, если у них слишком много проблем.Если они не могут сделать это из дома, им будет рекомендовано обратиться в ближайший местный офис, чтобы использовать это программное обеспечение, так сказать, «на дому».

Дальнейшее объяснение

Мы знаем, что вы не можете протестировать пользовательский контент с помощью PHP, мы не настолько глупы, PHP упоминается, потому что он все еще может быть полезен либо для определения скорости соединения, либо для доставки скрипта, который может делать то, что мыхочу.Кроме того, это не программное обеспечение, предназначенное только для того, чтобы кто-то в сети мог зарегистрироваться и использовать его, если вы найдете его в Интернете, если вы не связаны с какой-либо конкретной клиникой и у вас есть имя для входа, а что нет, вы не вправе использовать прицели если вы попадаете в противном случае, это незаконно.Я пока не могу раскрыть много информации, так как зрелище еще не живо.Что я могу сказать, это в основном используется клиниками / офисами для клиентов, чтобы выполнить определенную задачу.Если у них нет времени / транспорта / или другого места, и им нужно сделать это из дома, тогда опция доступна.Тем не менее, если их домашний ПК не «готов», для них это будет не чем иным, как проблемой, и превращение двухчасовой задачи, которую они должны выполнить, в 4-6-часовой кошмар.Таким образом, причина в том, что я нахожусь в одном из моих любимых квест-центров и спрашиваю, не сталкивался ли кто-нибудь с этим раньше и может знать хороший способ протестировать ПК пользователя, чтобы у него было наилучшее возможное разрешение, либо сделайте это из дома (так как их компьютер подходит) или им говорят, что они должны пойти в местный офис.Надеюсь, это прояснит ситуацию достаточно, чтобы мы могли воздержаться от «глупых» ответов.Мне нужно РЕАЛЬНОЕ жизнеспособное решение и / или предложения, пожалуйста.

Ответы [ 2 ]

2 голосов
/ 20 января 2012

PHP не имеет (практически) доступа к информации о компьютере клиента.Скорость передачи данных может быть так же легко ограничена скоростью сети, как и скорость компьютера.Хотя, если вам все равно, , какой является ограничителем, он может работать.

JavaScript может надежно проверить, насколько быстро выполняется набор операций, и отправить их обратно на сервер.но это об этом.Он не имеет доступа к файловой системе по соображениям безопасности.

РЕДАКТИРОВАТЬ: Хорошо, с этой ревизией, я думаю, я могу предложить реальное предложение - в основном, компромисс.Вы не сможете собрать достаточно информации, чтобы абсолютно гарантировать, что компьютер и подключение пользователя адекватны, но вы можете получить общее представление.

Как кто-то предложил, используйте 10 МБ-20 МБ.файл и несколько меньших, чтобы проверить фактическую скорость передачи;это даст вам разумную оценку.Затем используйте JavaScript, чтобы проверить скорость своей системы.Но не просто придерживайтесь одного теста, потому что он может сильно зависеть от браузера.Проведите исследование о том, какие тесты лучше всего дадут точное представление возможностей в разных браузерах;такие вещи, как зацикливание массивов, манипулирование (невидимыми) элементами и сложная математика.Если между браузерами есть существенное расхождение, используйте разные пороги;PHP знает , какой браузер они используют, поэтому вы можете дать системе различные «достаточно хорошие» оценки в зависимости от этого.В этом может помочь ограничение по версии (например, полное отклонение IE6).

Наконец ... сообщите пользователю.Осторожно.Сначала дайте им знать: «Привет, это будет запускать тест, чтобы увидеть, достаточно ли быстродействия вашего сетевого соединения и компьютера, чтобы использовать нашу систему».А если не получится, скажите им, какая часть, и дайте им предупреждение.«Эй, это действительно не так быстро, как мы рекомендуем. Вы действительно должны пойти в местную клинику, чтобы выполнить эту задачу; если вы решите продолжить, это может занять намного больше времени, чем предполагалось».Надеемся, что в этот момент пользователь поймет, что любые проблемы касаются их, а не вас.

0 голосов
/ 20 января 2012

То, что вы слышали правильно, нет способа эффективно сравнить компьютер на основе Javascript - особенно потому, что механизм javascript в основном зависит от реального браузера, который использует пользователь, среди множества других переменных - никаких разрешений файловой системы и т. Д. В любом случае, компьютер вряд ли позволит подпроцессам браузера подвергаться стрессу, браузер сначала просто зависнет. PHP явно отсутствует, поскольку он на стороне сервера.

Сайты, такие как Системные требования Лаборатория позволяет пользователю загрузить Java-апплет для запуска в своей области.

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