Z weba do desktopa

0

Witam,
muszę przerobić jedną aplikację webową na desktopa. Ogólnie pomysł już mam - serwer chcę wrzucić w serwis systemu operacyjnego, a sama aplikacji będzie w nw.js lub electronie (potrzebny dostęp do systemu operacyjnego np. dostęp do portów USB). Wiem, że może mało optymalnie, ale to jest teoretycznie tymczasowe rozwiązanie. Jednak mam parę pytań:

Po pierwsze to aplikacja ma działać zarówno na jednym kompie jak i w sieci lokalnej. Teraz pojawia się problem zarządzania serwisem z serwerem HTTP - jak to zrobić z poziomu aplikacji (temat chyba trochę podobny do "Manager zarządzania serwisami"). Tutaj bardzo mi zależy, aby była możliwość zdefiniowania czy serwis powinien wstać po restarcie lub ponownym uruchomieniu. Czy można zarządzać takimi serwisami z poziomu node.js lub Javy? Po drugie jeśli mamy rozwiązanie typu serwer-klient w sieci lokalnej to jak sprawdzić czy jest włączony serwis z serwer HTTP na serwerze w sieci lokalnej - jakiś broadcast po sieci przy użyciu np. TCP?

Następną rzeczą o którą się boje to, że to rozwiązanie może z tymczasowego stać się długotrwałe i wtedy może zaistnieć np. potrzeba wymiany danych/komunikacji pomiędzy aplikacjami. Czy w systemach operacyjnych istnieje jakiś mechanizm do tego? Wstępnie mój plan jest taki, żeby serwery HTTP aplikacji jakoś się komunikowały.

Ostatnia rzecz to jakieś rozwiązanie z licencjami. Jak sprawdzać czy użytkownik posiada prawa do korzystania z danej aplikacji? Czy jest jakiś gotowy mechanizm lub sprawdzone rozwiązania?

Aaa i chyba zapomniałem napisać, że rozwiązanie musi być możliwe do wykonania na wszystkich systemach operacyjnych (tzn. głównie Windows, OS X i Linuxy). Może jeszcze jakie technologie wchodzą w grę - głównie Java(JVM) i node.js.

0
  1. zrób interfejs REST do swojego serwera
  2. zrób instalator do serwera i aplikacji lub skrypt Puppet lub gotową VM-kę z serwerem. Oczywiście serwer startuje automatycznie.
  3. zrób grubego klienta do swojego serwera łączącego się po REST-cie (w dowolnej technologii)

Bardzo odradzam wymyślanie jakiejś logiki typu "poszukajmy serwera" bo to nie jest tego typu aplikacja. Serwery dystrybuowane to osobna, dość rozległa dziedzina i klient może nie zrozumieć jeśli będą w tym jakieś błędy. Zastosuj sztywne ustawienia. Jak klient może odnaleźć serwer? Najprościej używając nazwy logicznej na poziomie sieci (typu: "http://jira").
Jak to skonfigurować to musiałbyś popytać jakiegoś sieciowca. Ja bym to zrobił na lokalnym serwerze DNS (ale się na tym nie znam).

1 użytkowników online, w tym zalogowanych: 0, gości: 1