Dla małego projektu edukacyjnego przeznaczonego jako zasób społecznościowy, aby pomóc ludziom w nauce Scala Szukam prostego sposobu obsługi i przetwarzania stron internetowych w wątku tła.Scala: jak osadzić mały serwer WWW w aplikacji scala?
Minimalne tło: Scalatron to gra dla wielu graczy, w której gracze umieszczają programy botów (napisane w Scali) przeciwko sobie. Towarzyszy mu samouczek Scala krok po kroku. Obecnie gracze muszą używać IDE na swoich komputerach lokalnych do kompilowania botów, które następnie są publikowane w grze, kopiując je do współużytkowanego katalogu sieciowego. To jest kłopotliwe. Dla następnej wersji byłoby miło zaoferować przeglądarkę botów do edycji i publikacji, aby maksymalnie uprościć konfigurację dla organizatorów i graczy.
ja już dostałem tle pracy nici, które skompilować kod źródłowy Scala przybyciu na serwerze w locie (eliminując potrzebę pełnego IDE). Następnie muszę uruchomić niewielki serwer sieciowy, aby zapewnić punkt dostępu dla graczy i obsługiwać wysyłanie botów (to pozbędzie się udziału sieciowego).
Wymagania są bardzo proste: początkowo planuję obsłużyć pojedynczą stronę z polem edycyjnym i przyciskiem "Go" (= przesłać na serwer, kompilować & publikować w grze); Spodziewam się, że nie więcej niż 20 równoczesnych użytkowników nie będzie przesyłać więcej niż jednego bota przez wszystkich użytkowników co 5 lub 10 sekund; Muszę posiadać minimalny stan dla każdego użytkownika (tylko nazwa) i muszę zwrócić użytkownikowi komunikat o błędzie kompilatora. Zwróć uwagę, że aktualizacje ekranu gier NIE byłyby wyświetlane w przeglądarce, ale na projektorze podłączonym do serwera. A przede wszystkim, aby umożliwić najprostszą możliwą konfigurację (dwukrotne kliknięcie na serwerze gry .jar) Myślę, że byłoby miło uruchomić serwer w wątku tła w obrębie istniejącego serwera gry.
Jaki jest najlepszy sposób na zrobienie tego? Czy powinienem użyć jakiejś istniejącej struktury, takiej jak Play czy Lift? Czy istnieje kod do robienia czegoś bardzo podobnego do tego? Czy jest nawet rozsądne zaplanowanie uruchomienia serwera sieciowego w takim wątku w tle? Każda rada jest doceniana.
Wielki, sprawdzi, że obecnie, dzięki! –
Mam wszystko, co pracuję z Jetty. Dzięki za wskazówkę. –