![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 181 Pomógł: 14 Dołączył: 4.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Projektuję CMSa do zarządzania serwerem pewnej gry. Problem polega na tym, że taki serwer najczęściej posiada kilka odrębnych maszyn na kilka pewnych usług. Zazwyczaj są to dwie lub trzy maszyny dedykowane + serwer dla www, forum, komunikatora aka TS3, panelu graczy/zarządzania serwerem itp. I w taim przypadku na "maszynie www" znajduje się jedna baza danych, na "maszynie nr1" znajduje się druga baza danych, a na "maszynie nr2" znajduje się trzecia baza danych. Do tej pory robiłem wszystko na stałe, więc było w miarę łatwo. Oczywiście przy każdym połączeniu musiałem wywoływać nowe połączenie SQL, bo innego wyjścia nie ma/nie znam. W tej chwili chciałem przepisać CMSa tak, żeby wszystkie adresy można było łatwo ustawiać z poziomu CMSa. Czyli instalacja (jeżeli jakakolwiek będzie) CMSa polegałaby na podaniu danych do bazy na której miałby się znaleźć CMS (czyli najprawdopodobniej baza z www, forum, itp.). Resztę konfigurowałoby się z poziomu już samego CMSa. Możliwość wpisania adresu IP serwera, loginu, hasła, nazwy bazy, prefisku (o ile będzie), to wszystko jest proste dla mnie do napisania w CMSie. Za to nie mam żadnego pomysłu jak rozwiązać łączenie się z danymi serwerami. Wiadomo - dane pobierane z bazy i podstawiane zmienne. Pytanie, jak to napisać, żeby to było sprawne, szybkie i bezpieczne... Programowanie obiektowe odpada, bo nie umiem go jeszcze i jakoś nie spieszy mi się do jego uczenia, aczkolwiek jeśli są jakieś skrypty, które mógłbym przejrzeć w celu podpatrzenia jak to można byłoby ugryźć, to chętnie poczytam... Chciałbym, żebyście mi pomogli określić jak za to mniej więcej się zabrać... Chciałem utworzyć jakieś funkcje do łączenia się z bazą, wysyłania zapytań, itp. ale nie mam wizji jak one mogłyby wyglądać (nie zrozumcie mnie źle, wiem jak napisać takie funkcje do zwykłych CMSów z jedną bazą - nie mam wizji do tego projektu akurat, albo po prostu nie wpadłem jeszcze na ten prosty lecz genialny pomysł)... Z góry dziękuję za każdą wartościową odpowiedź. Pozdrawiam |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 182 Pomógł: 115 Dołączył: 4.03.2009 Skąd: Myszków Ostrzeżenie: (0%) ![]() ![]() |
OOP wcale tak bardzo nie obciąża serwera w porównaniu do programowania strukturalnego, a zysk z przejrzystości kodu i łatwości modyfikacji jest większy (IMG:style_emoticons/default/smile.gif) .
Polecam przede wszystkim symfony, ale głównie dlatego, że sam na tym piszę. Są oczywiście inne frameworki, takie jak Kohana czy Zend. Zobacz sobie tutorial Jobeet, nie trzeba za dużo umieć żeby zrozumieć. To co nazywasz guardem rozwiązałbym na bazie eventów, tak żeby odpowiednia klasa nasłuchiwała np. dodawania złota, w przypadku gdy przyrost będzie zbyt duży loguje zdarzenie jako podejrzane. Zmianę wszystkiego ułatwia ORM (w tej roli Doctrine, albo Propel), bo pozwala łatwo odwzorować strukturę bazy na obiektach, dzięki czemu w prosty sposób dostaniesz się do np. graczy z danego klanu, bez potrzeby zadręczania się odpowiednimi zapytaniami i ich przetwarzaniem. Aa, zapomniałbym. Doctrine czy Propel mają wbudowaną obsługę wielu połączeń, wystarczy ustawić połączenie z którego model ma korzystać podczas zapisu/odczytu, w ten sposób też można zrobić system master-slave. Ten post edytował Mephistofeles 1.12.2010, 22:10:32 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 22:53 |