
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
29.09.2007, 17:26:52
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Сетка сто мегабит. Классы маленькие, тестовые. Два компа. Когда делаю всё на локальном на скорость не жалуюсь. Но если клиент на другом компе, то до заветного сообщения об успешном получении удалённого объекта проходит минута, а то и более. Скажите, оно так нормально чтоли? Я на RMI хотел один проект сделать. Тоесть использовать его там. А соединение там будет намного хуже. К тому же через Интернет. И объекты совсем немаленькие передаваться будут. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 19:25:37
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Потрассируй свой код. Может ты теряешь время на каком-то пустяке вроде разрешения DNS или что-то в этом роде. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 19:40:59
|
|||
|---|---|---|---|
|
|||
RMI фигасетормоза!!! |
|||
|
#18+
Sarin Скажите, оно так нормально чтоли? Нет. Смотри у себя баги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 20:22:43
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
maytonПотрассируй свой код. Может ты теряешь время на каком-то пустяке вроде разрешения DNS или что-то в этом роде. Врядли. По айпи лазил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 20:54:27
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Насколько оптимально используется сеть? К примеру если ты вызовешь 1500 раз SendByte(int byteVal) и один раз SendVector1500Bytes(char[] vect), то по смыслу, вроде-бы передал 1,5 К информации, но с точки зрения TCP протокола в первом случае канал пропустил 3000 IP пакетов, а во втором случае - всего два. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:14:23
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Посмотрите, хотя врядли это что-то даст. В комментах к строкам указано время исполнения в миллисекундах. Первое на одной машине, второе, когда клиент на другой: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. По этой же сети с этой же клиентской машине лазил по HTTP на томкат, стоящий на той же машине, где и сервер RMI. Адресация таже самая, по IP. Никакой задержки не видел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:30:54
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Хм... получается, что тормозит у нас javax.naming.Context.lookup("rmi://" + server + "/hi"); А может-быть этот лукап только первый раз медлителен? Попробуйте вызвать его 5 - 10 раз, не выходя из прогаммы. Может быть для последующих вызовов, отклик будет очень быстрый? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:36:12
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
maytonХм... получается, что тормозит у нас javax.naming.Context.lookup("rmi://" + server + "/hi"); А может-быть этот лукап только первый раз медлителен? Попробуйте вызвать его 5 - 10 раз, не выходя из прогаммы. Может быть для последующих вызовов, отклик будет очень быстрый? Конечно я пробовал. Сократилось до 88600 миллисекунд:(( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:39:25
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Есть надежда, что остальная работы с сервером столько проблем не вызовет. Тоесть через лукап получается корневой объект, а дальше всё через него. Но проблема в том, что даже для первого вызова 90 секунд излишне много. Человек, работающий с этой программой будет сидеть с ноутбуком в глухом лесу, или на льдине, или вообще, Бог знает где, Инет у него будет по GPRS, а данные надо будет отсылать очень быстро, потомучто засиживаться на одном месте ему крайне не рекомендуется. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:52:25
|
|||
|---|---|---|---|
|
|||
RMI фигасетормоза!!! |
|||
|
#18+
1. попробуйте явно указать порт и сервер указывать по ip 2. покажите серверный код ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 21:53:09
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
1) Вот классический пример использования RMI из учебников по Java. Он не тормозит. В этом я на 100% уверен, потому-что брал его за основу своих разработок. Правда он использует более примитивную модель безопасности (или вообще её не использует). Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. Попробуйте "плавно" приблизить свою постановку к этому примеру. 2) Всё таки попробуйте толкнуть команду java -Xrunhprof:heap=sites,cpu=samples,depth=10,monitor=y,thread=y,doe=y <classname> Профилятор развернёт стек и мы увидем полный путь к методу который жрет время внутри lookup-a. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 22:29:44
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
mayton Попробуйте "плавно" приблизить свою постановку к этому примеру. А как это Вы без безопасности обходитесь? Попробую, обязательно. То, что написано у меня списано, с изменениями, с Хорстмана. Выполнение той команды дало такое: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 22:30:31
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Не думаю, что если захардкожу хост это поможет... В любом случае такие параметры потом будут из конфигов читаться. Сервер: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 23:18:21
|
|||
|---|---|---|---|
|
|||
RMI фигасетормоза!!! |
|||
|
#18+
Думаю на секюрити и тормозит...или вообще вылетает... Где то я на такое уже нарывался...когда поправили...то рабтало как автомат...Калашникова.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 23:18:47
|
|||
|---|---|---|---|
|
|||
RMI фигасетормоза!!! |
|||
|
#18+
Сам RMI тут не причём ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 23:21:22
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Олег ГапонДумаю на секюрити и тормозит...или вообще вылетает... Где то я на такое уже нарывался...когда поправили...то рабтало как автомат...Калашникова.. У меня тоже возникло подозрение, что дело в секьюрити. Но как же без секьюрити то жить?.. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 23:27:34
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
Возможно проблема в том, что в Java 5 используется динамическая генерация стабов, что должно отрицательно сказываться на быстродействии lookup, только тогда не понятно почему при работе на одной машине все работает быстро? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
29.09.2007, 23:29:08
|
|||
|---|---|---|---|
RMI фигасетормоза!!! |
|||
|
#18+
SarinУ меня тоже возникло подозрение, что дело в секьюрити. Но как же без секьюрити то жить?.. - по крайней мере можно легко проверить, отключив секьюрити менеджер, а то может и не в нем дело ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=59&mobile=1&tid=2144490]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
16ms |
get forum data: |
4ms |
get page messages: |
73ms |
get tp. blocked users: |
2ms |
| others: | 325ms |
| total: | 500ms |

| 0 / 0 |
