Kurnik - jaka to technologia

0

Witam.
Planuję napisać coś podobnego do gier online jak na kurniku tj:
-centralne stoły/pokoje gier, spełniającę rolę serwera
-końcówki w postaci apletów java.

Przypuszczam, że to nie jest rowzwiązanie typu applet-applet tylko applet-server-appelt. Wnosze po tym że: do pokoi,stołów przychodzą/wychodzą poszczególne osoby, a pokój zostaje itp. Wyobrażam sobie hipotetycznie, że applety dynamicznie przejmują rolę servera ale to raczej nie to.
Pytanie: czy żeby postawić taki server trzeba jakiś specjalny hosting? Jakiś tomcat itp? A czy da sie to wszystko zrobić w technologi nazwijmy to potocznie appletowej.
no i pytanie zasadnicze - czy moje przypuszczenia odnośnie technologi użytej są prawidłowe.

Z chęcią poczytam inne prozpozycje rozwiązania. Np server w php? Aczkolwiek nie mam o tym pojęcia i potrzebowałbym jakieś przykłady, źródło informacji. Da się uruchomić php jako usługe w tle/server? Głównie mnie interesują propozycje servera. Bo po stronie klienckiej to musi być applet.

0

Zapewne centralny serwer, a wszystkie aplety w javie o każdego klienta łączą się z tym serwerem. Czy serwer będzie w javie czy nie to akurat nie ma żadnego znaczenia, ważny jest protokół, do którego dostosowana jest cała reszta.

Analogicznie jak działa np. czat - przeważnie serwer irc, a aplety java u klientów logują się na czat. Tutaj to samo, tylko protokół umożliwia oprócz rozmów przeprowadzanie gier online i całą dodatkową funkcjonalność.

0

No dobra. A jakią technologie wybrać uwzgędniając to żeby hosting był możliwie najtańszy. Da sie taki serwer postawić w php? Co szukać na google? Czy jeśli bym chciał to w javie napisać to musiałby to już być jakiś serwlet? Bo wiadomo, że można w C++ itp, ale kto mi to zahostuje:)

0

A może po stronie clienta wystarczy zwykły javascript? Wtedy komunikację załatwisz ajax'em?

0

Komunikacje czego z czym?:) To czy klient będzie appletem czy np gwt (znam javę), to nie ma znaczenia na razie. Jest cała masa technologi. Intereuje mnie serwer.

0

Jeśli chcesz użyć Javy po stronie serwera to możesz użyć np:

  • Google App Engine - mają w zasadzie własne API do wszystkiego, dość proste w użyciu, no ale całkowicie niestandardowe; GWT jednak powinno chodzić od kopa,
  • Amazon Elastic Compute Cloud (EC2) - kup instancję Linuksa i postaw na tym np Jetty,
  • kupno VPSa, postawienie Jetty, itd
  • znalezienie hostingu Javy - kiedyś szukałem, ale nie znalazłem nic sensownie wycenionego, w porównaniu do App Engine czy EC2,
    (zamiast Jetty może być Tomcat czy cokolwiek innego, na EC2 szukałem teraz i nie ma Jetty)
0

Zaciekawił mnie temat. Jakie narzędzia i technologie trzeba by użyć aby coś takiego napisać dla jednej konkretnej gry? Albo dla rozwiązania ja i komputer na początek?

0

Krótka zabawa z FireBugiem mówi, że interfejs web jest napisany w PHP. Czyli jak to działa?
Zapewne serwer napisany w php ma za zadanie "kojarzenie" apletów. W takiej sytuacji gra
a) odbywa się bezpośrednio pomiędzy klientami, a usługi dodatkowe np. chat, tablica wyników, log gry, są zapisywane na serwer jako dodatkowe rozwiązanie
b) gra odbywa się z pośrednictwem serwera, który utrzymuje aktualny stan gry, a poszczególne aplety często go odpytują o tenże.

Jeżeli miałbym się za coś takiego zabrać to podszedłbym do sprawy w następujący sposób:

  1. interfejs klienta jako aplikacja GWT/Vaadin względnie Wicket+dużo JS.
  2. na serwerze w części klienckiej Guice + baza nosql
  3. na serwerze w części administracyjnej - osobna aplikacja najlepiej by nie była bezpośrednio dostępna z poziomu sieci guice+vaadin+shiro+normalny sql
0

Dziękuje wszystkim za udział w dyskusji:)

Wybrałem/przetestowałem architekturę. Google App Engie po stronie servera (pewnie java, bo znam najlepiej, ale jak bedzie czas to w pytona też się pobawię). Po stronie klienckiej GWT. I jestem bardzo podjarany tą architekturą. Nie twierdze że nie ma lepszych, być może prostszych, nie to mam na myśli. W każdym razie ja wybrałem, przetestowałem - spełnia moje oczekiwania w 100 %.

Pozdrawiam:)

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