Java-апплет запускается очень медленно для некоторых пользователей? - PullRequest
0 голосов
/ 15 апреля 2009

[ОБНОВЛЕНИЕ: я забыл добавить, что это 30 сек. проблема с зависанием возникает только при первой попытке загрузить файл с сервера. Последующие загрузки очень быстрые. Может быть, какой-то странный обратный поиск DNS? Я размещаюсь на устройстве Google.]

Я недавно начал небольшой проект под названием http://www.chartle.net, который построен на апплете.

Время запуска является важным фактором в восприятии пользователем апплета. Я собираю статистику и шокирован тем, что часто нахожу очень длительное время запуска (в 50–100 раз больше необходимого)

Апплет запускается через 1-3 секунды в зависимости от скорости вашего компьютера и соединения. Тем не менее, для некоторых пользователей это занимает до 100 секунд.

Я смешал результаты своих собственных тестов. В основном это очень быстро, но иногда зависает надолго, и консоль Java не говорит мне, почему. Лучше всего предположить, что он останавливается при загрузке сохраненного графика.

Пожалуйста, помогите мне разобраться в этом - лучший тест, открыв уже сохраненный график (нажмите на одну из ссылок «создать» на http://www.chartle.net/gallery)

Cheers, Дитер

Ответы [ 2 ]

2 голосов
/ 15 апреля 2009

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

Замораживание апплетов

В каталоге bin JDK есть очень удобная программа под названием jstack . Обновите окно браузера, пока оно не выйдет из строя, а затем запустите:

jstack *process_id*

Это даст вам трассировку стека любого замороженного процесса Java. Если Java не является отдельным процессом, вы можете использовать процесс браузера (например, для Opera).

Следующие несколько проблем были / являются общими для меня:

  1. Я рекомендую вам использовать invokeLater вместо invokeAndWait в методе init (хотя вы не можете сделать это, если используете методы start / stop)
  2. Пользовательский плагин Opera работает очень плохо ...
  3. Мертвые блокировки, вызванные блоками синхронизации, и вызов

Медленные апплеты

Возможно, браузер загружает ресурсы с сервера, не может использовать файл jar?

1 голос
/ 15 апреля 2009

Вполне возможно, что только старый плагин вызывает эти проблемы. Это означает, что в основном все люди, работающие на OSX и другие пользователи с Java до 1.6_update_10.

Итак, я бы очень признателен людям с такими настройками, чтобы посмотреть их консоль Java и описать первое поведение при запуске.

Ура, Дитер

...