2013-08-16 18 views
5

Używam YAWS do obsługi mojej aplikacji zdalnej. Kiedykolwiek pojawia się zmiana w pliku yaws.conf, restartuję serwer, aby wprowadzić te zmiany. Nie chcę tego robić, ponieważ moja aplikacja może ulec awarii, jeśli serwer nie działa przez dłuższy czas.Ładowanie nowego pliku konfiguracji zbaczania podczas biegu

Czy istnieje sposób na załadowanie nowego pliku konfiguracyjnego bez zatrzymywania serwera, np. Aktualizacja kodu na żywo?

+0

Jeśli zajdzie potrzeba ponownego załadowania modułów appmod, przydatne może okazać się następujące polecenie: '$ yaws --load your_appmod_module1 your_appmod_module2'' – Ning

Odpowiedz

8

Można użyć następującego polecenia z interaktywnej powłoki, aby ponownie załadować plik konfiguracyjny frambezja bez ponownego uruchamiania serwera:

yaws --hup --id ID 

gdzie część --id ID jest opcjonalny — jeśli używasz wielu wystąpień frambezja, pozwala identyfikujesz konkretny serwer Yaws, który chcesz przeładować.

+0

Oczywiście" --hup "- jakaś oczywista nazwa dla tej opcji. ;-) – RichardC

+0

Nie do końca oczywiste, zgadzam się. Opcja nosi nazwę SIGHUP, która jest tradycyjnie wysyłana, aby zmusić demony UNIX do ponownego odczytania ich konfiguracji. Ta opcja jest również wyjaśniona, jeśli uruchomisz 'yaws --help'. –

+0

Hah. To faktycznie * jest * oczywistą nazwą, tak oczywistą, że bym tego nie odgadł (np. Gdy patrzy wysoko i nisko na komendę "run" i okazuje się, że nazywa się ... "run"). Teraz tego nigdy nie zapomnę. – zxq9

1

Istnieją yaws_api: setconf (GC, SCList), przeznaczone głównie do uruchamiania "Rozerwanych" "Yaws" (tj. Pod jednym z własnych nadzorców, zamiast rozpoczynać Odchylenia jako oddzielną aplikację). Ale kiedy to zrobisz, Yaws będzie nadal niszczał wszystkie istniejące porty i połączenia, aby skonfigurować nową konfigurację. Pierwsze pytanie brzmi: czy zmierzyłeś czas potrzebny na ponowne uruchomienie aplikacji Yaws? To może być nieco wolniejsze niż ponowne wczytanie konfiguracji, w którym to przypadku sprawisz, że twój kod będzie bardziej skomplikowany, bez faktycznego zyskania czegokolwiek.

Powiązane problemy