Назад |
Перейти на главную страницу
проблемы с тайм-аутом при подключении к локальному серверу tomcat с динамическим DNS сайтом fear.org
задний план
Я работаю в очень небольшой команде, чтобы обновить CSS на веб-сайте Struts 2. Я развертываю свой код на сервере tomcat для тестирования, и сервер извлекает свои данные из базы данных oracle, работающей в виртуальном ящике centos. нуждаясь в способе подключения моих товарищей по команде к моей машине, я подключил IP-адрес своего компьютера к динамической службе DNS (ddns) на freedns.afraid.org и настроил переадресацию на моем маршрутизаторе для маршрутизации трафика порта 8080 на мою локальную машину (базовый Пример URL: http://nameOfMyApplication.chosenDDNSDomain.com:8080/nameOfApplicationRootDirectory/)
спецификации
- процессор: Intel Core i7-9700k cpu @ 3,60 ГГц
- установленная оперативная память: 16,0 ГБ (можно использовать 15,7 ГБ)
- ОС: Windows 10 Pro, 64-разрядная версия 1903
- Интернет: Wi-Fi подключение к at & t fiber
- маршрутизатор: arris bgw210
- сервер: apache tomcat версии 6.0.37
- среда выполнения java: 1.6.0_45
- vm: Oracle Virtualbox версия 5.2.6 r120293 (Qt5.6.2)
- vm os: centos версии 5.7
- база данных: база данных Oracle версии 11.2.0
проблема
хотя я думаю, что эта конфигурация обычно должна работать для очень небольшого нагрузочного тестирования (максимум 3 пользователя), У меня возникают проблемы, даже когда я единственный пользователь, тестирующий приложение. страницы загружаются долго, а время ожидания соединения на моем локальном компьютере прерывается примерно в половине случаев. иногда содержимое страницы загружается без применения моего CSS. css, похоже, либо работает полностью, либо не работает вообще, и css данной страницы может работать в одной точке, но не работать в другой. сборка нашего веб-сайта включает строку «baseUrl», поэтому я не верю, что смогу создать приложение для доступа к локальному хосту и ddns одновременно.
вопросы / просьбы о консультации
- Есть ли что-нибудь в подключении к моей машине через Интернет, что могло бы сделать загрузку особенно медленной? хотя я ожидаю некоторого замедления, поскольку моя машина отправляет запрос, принимает / обрабатывает запрос, отвечает на запрос и получает / обрабатывает ответ, мне интересно, следует ли мне ожидать, что замедление будет настолько большим, что сайт не будет надежно в использовании.
- как мне определить, где происходит замедление? в то время как домен, который я использую для своих ddns, работает без видимых простоев, мне интересно, есть ли какие-то проблемы, связанные с доменом, или, возможно, неэффективность того, как домены freedns.afraid.org выполняют поиск dns. по сути, я хочу выяснить, вызвана ли моя проблема общей стратегией, которую я использую, или только конкретным поставщиком ddns, который я выбрал.
Пара вещей:
- Вы указали спецификации своей машины (предположительно), но не спецификации вашей виртуальной машины. Вы должны проверить доступные ресурсы виртуальной машины CentOS и убедиться, что ей не хватает ЦП, ОЗУ или жесткого диска (включая пространство подкачки).
- У вас должна быть возможность напрямую проверить IP-адрес вашей системы и исключить ddns как источник замедления. Я бы вообще не считал ddns проблемой, тем более что после первоначального разрешения системы должны кэшировать запись на период TTL (время жизни), который обычно составляет 1 час. Это означает, что служба DDNS не используется, пока не истечет TTL. Поэтому, если вы видите, что начальное соединение медленное, а затем более быстрое, это может быть связано, но в остальном я не думаю, что DDNS связан
- Некоторые интернет-провайдеры - придурки и будут связываться с прямыми подключениями, в том числе с теми, которые они воспринимают как «угрозу» (потеря дохода от платных услуг, чрезмерное использование полосы пропускания или угрозы безопасности). Попробуйте разместить что-то совершенно другое на том же порту и / или то же самое на нестандартном порту и посмотрите, наблюдаете ли вы ту же проблему.
- Способ подключения виртуальной машины к сети может влиять на ее работу. В общем, вы увидите два варианта: NAT или прямое соединение. При использовании NAT виртуальная машина находится на искусственном IP-адресе за IP-адресом хоста. При прямом подключении машина будет пытаться имитировать физическую машину в хост-сети. Маршрут прямого подключения в целом кажется лучше, но он может стать жертвой технологий безопасности, не допускающих подмены MAC-адресов или «поддельных передач». Попробуйте оба варианта и посмотрите, заметите ли вы разницу.
- Страница по умолчанию для вашей технологии (tomcat) работает иначе, чем ваш собственный код? Попробуйте использовать другую технологию, например nginx, и посмотрите, загружается ли она по-другому.
- Ваше использование Java 6 меня огорчает. Очень очень печально. Пожалуйста, обновите до Java 8u241 как минимум или до Java 13, если можете.
- Я вижу, вы упомянули Wi-Fi. Ваш хост / виртуальная машина работает без Wi-Fi? Попробуйте напрямую подключиться к маршрутизатору через Ethernet и посмотрите, заметите ли вы разницу.
- Можете ли вы без проблем получить доступ к своему собственному серверу локально? А как насчет внешнего IP? Вы пробовали такую услугу, как https://isitdownrightnow.com или https://translate.google.com чтобы узнать, доступна ли там ваша страница? Возможно, связи ваших коллег не идеальны.