Чтобы иметь конфигурацию в масштабе всей системы, нужно выполнить следующее:
sudo defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL "http://your.updates-server.lan:8088/index.sucatalog"
Для корректной работы и над Leopard и над Snow Leopard, правильная команда для издания:
defaults write /Library/Preferences/com.apple.SoftwareUpdate CatalogURL "http://your.updates-server.lan:8088/index-leopard-snowleopard.merged-1.sucatalog"
Счастливо используемый и протестированный в моей сети :)
Это оказалось ошибкой в приложении. С маленьким MTU TCP фрагментировал пакеты и не представление ошибки. С высоким MTU на обратной петле ошибка проявилась.
Все, что я имею для Вас, больше отлаживает идеи без определенного порядка...
tcpdump -i lo
, это могло бы помочь выяснить, существует ли очевидный шаблон к передаваемым пакетам.echo 1 > /proc/sys/net/ipv4/tcp_low_latency
lo
, приложение быстро, но когда это оставляют в значении по умолчанию 16k, это медленно. Захват пакетов показывает, что существует задержка ~40ms прежде, чем отправить ACK за пакетами 4 096 байтов в размере (DB отправляет те 6k в двух пакетах, 4k измеренный и измеренный 2k), но если 4k фрагментируется, это быстро. Приложение не делает ничего необычного, просто Сокет Java, перенесенный в bufferedInputStream (я пытался установить внутренний буфер даже на 1 МиБ без любых изменений).
– Hubert Kario
19 October 2010 в 22:00
Для устранения X11vnc и NX как возможные причины задержки я записал бы консольному режиму тестовую программу Java не-GUI, которая выполняет поиски базы данных или тестовые транзакции и время когда приложение, работающее на ПК и на сервере (например, использующее SSH/Putty для вызова его).
Съемка общим планом: я также проверил бы обратное разрешение DNS в случае, если драйверы JDBC используют это (например, для входа), если DNS правильно не настроен, программное обеспечение может очевидно зависнуть, ожидая тайм-аутов разрешения DNS. Как местоположение DBMS настроено в приложении Java?
Вы попытались соединиться с 127.0.0.1 вместо localhost? Это делает несколько вещей. Предотвращение сумасшедших проблем DNS является одним из них, но также и многие клиенты видят "localhost" и затем решают не использовать сеть вообще и использовать некоторый локальный сокет вместо этого. Это мог быть этот автоматический технологический переключатель, который уничтожает Ваше приложение. Несколько программ делают этого майора как mysql. Используя localhost петлевой адрес IP вынуждает их на самом деле использовать сетевой сокет.
localhost
, 127.0.0.1
и локальный IP-адрес, тот же результат
– Hubert Kario
16 October 2010 в 19:04
Мой любимый инструмент для проблем как они strace
. Вы можете просто strace клиент и видеть его пауза после выполнения чего-то (блокирующийся вызов как подключение, или читайте). Если существует некоторый цикл событий, который затеняет паузу, можно попытаться фильтровать те syscalls, или можно включить опции синхронизации к strace и сохранить весь вывод в файле. Другой прием должен ожидать просто, пока он не "заканчивает" то, что держало его и хит ^C, таким образом, можно посмотреть на то, что, оказалось, повредило его из его оцепенения.