Zobrazit předchozí téma :: Zobrazit následující téma |
Autor |
Zpráva |
Crusty
Založen: 28. 08. 2007 Příspěvky: 120 Bydliště: Praha
|
Zaslal: 1. listopad 2012, 19:50:12 Předmět: HW vykon serveru |
|
|
Zdravim,
pro hru bezici v mobilu (Android) mam v planu vytvorit server. Zatim je predpoklad, ze hra bude potrebovat komunikovat zhruba jednou za sekundu a prenese max par KB.
Serverovou cast bude ridit PHP, ktere bude cerpat data z MySQL. (Zatim takoveto reseni, hadam, ze serverova cast psana treba v C++ bude rychlejsi)
Nemam zadnou predstavu o tom, jak vykony by server mel byt, aby zvladl napr 1000 online uzivatelu.
Jak mam tedy odvozovat HW naroky na server? Mate nekdo sve zkusenosti popripade odkazy nebo nakopnout, jak se dopocitat aspon neceho, ceho se chytit.
Dekuji _________________ http://www.2ox.cz |
|
Návrat nahoru |
|
|
Al
Založen: 23. 10. 2007 Příspěvky: 196
|
Zaslal: 1. listopad 2012, 20:17:23 Předmět: |
|
|
S tímto nemůžu pomoct, dám jen pár myšlenek, třeba to nějak pomůže v dalšímu bádání.
Pan Google o tom nic neví? Srovnání C++ a PHP nikde není? Při připojování 1000 lidí za sekundu přes web server (jestli to teda dobře chápu - že jeden pošle něco jednou za sekundu a celkem bude 1000 takových) to taky drsně zaseká RAMku.
Teda záleží na implementaci, já bych to prostě udělal, bez spekulací, a vyzkoušel v praxi. Udělat zátěžový test by přece nemělo být problém. Zkušenost nemám jen ze školy, kde 1000 připojení na studijní agendu znamená pro server skoro smrt. Jestli se nepletu, jede to na IBM WebSpehere a Javě. Nedělal jsem to já a věřím, že by se to dalo naprogramovat líp, ale měl bych po této zkušenosti strach, že pro 1000 online lidí zaráz to už není úplně sranda. |
|
Návrat nahoru |
|
|
josh
Založen: 30. 07. 2007 Příspěvky: 74
|
Zaslal: 2. listopad 2012, 07:54:00 Předmět: |
|
|
V dnešním světě kompjůtrů
nemá už podle mě smysl rozlišovat servery jako HW železo.
Smiř se s tím, že jestli chceš být úspěšný, tak musíš aplikaci psát tak,
aby jsi ji mohl spustit na clusteru db serverů (nebo na jednom) a na nějaký sérii aplikačních serverů.
Pak se dá za pár šušnů koupit celý hostingový řešení jako PaaS a nafukovat si jednotlivý aplikační servery automaticky nebo podle konfigurace.
např. známý www.heroku.com
Nebo si to sestavit na vlastním HW, kde si nainstaluješ Openshift nebo Cloudfoundry a mastíš si to sám.
Jinak na serverovýcj částech začíná (je) velmi úspěšný node.js, který má výkon výrazně lepší než bývá v té oblasti běžné (ruby, php, java). _________________ Tak Karle, kolik? |
|
Návrat nahoru |
|
|
Tringi
Založen: 28. 07. 2007 Příspěvky: 290
|
Zaslal: 2. listopad 2012, 10:42:53 Předmět: |
|
|
Tak nějak jak píše josh. Dneska se musíš rozhodnout, jestli tě vyjde levněji investovat do hardware nebo do času a schopností "inženýrů".
V prvním případě snadno napíšeš server (myšleno proces), který zvládne třeba jen stovku uživatelů na jednom fyzickém stroji, ale "snadno" se rozškáluje na několikanásobek serverů je-li to potřeba. Pak platíš za hardware u poskytovatele.
V druhém případě můžeš vyvinout server (opět proces), který na jednom stroji obslouží třeba pět tisíc uživatelů, ale síťová škálovatelnost je pak další ne-triviální výzvou, a celý vývoj bude trvat mnohem déle a stát mnohem, mnohem víc. _________________ WWW | GitHub | TW |
|
Návrat nahoru |
|
|
Crusty
Založen: 28. 08. 2007 Příspěvky: 120 Bydliště: Praha
|
Zaslal: 2. listopad 2012, 11:04:28 Předmět: |
|
|
Al: Google rika, ze je C++ vykonejsi, takze to bude potreba asi server hosting, nebo neco takoveho. Ted mam web hosting u Active24 a zjistil jsem, ze bych tam s PHP asi nepochodil, jelikoz maji omezeny PHP na pocet soucasnych pripojeni, coz je asi jen 12 ...
Zatezovy test zkusim, ale zatim nemam serverou cast napsanou.
josh: V serverovych vecech se zatim az tak neorientuji, ale co jsem tak vycetl, tak stavet si svuj server by bylo hodne narocne a takove prostredky nemam. Ale zkusim se porozhlednou po cloudovych nabidkach. _________________ http://www.2ox.cz |
|
Návrat nahoru |
|
|
josh
Založen: 30. 07. 2007 Příspěvky: 74
|
Zaslal: 2. listopad 2012, 17:09:16 Předmět: |
|
|
no nevim, rozumny 1U intel s dvouma diskama v raidu se da dycky koupit do 30k,
problem je ze housing te stoji skoro litr mesicne,
coz je lepsi zaplatit si minimalni heroku a nazdar
jinak je to proste stejne ale hrozne akademicka debata, protoze nevime, co tam chces poustet _________________ Tak Karle, kolik? |
|
Návrat nahoru |
|
|
Flash
Založen: 28. 07. 2007 Příspěvky: 1379 Bydliště: Nigga Land
|
Zaslal: 2. listopad 2012, 19:19:26 Předmět: |
|
|
josh napsal: |
jinak je to proste stejne ale hrozne akademicka debata, protoze nevime, co tam chces poustet |
Aniz bych mel naprosto paru co za projekt to ma byt, tak z informace, ze jde o smartphone hru, ktera bude potrebovat nejakou online funkcionalitu a ma komunikovat v prumeru jednou za sekundu mi vypadava reseni, ze pujde o nejakou "castecne tahovou" onlineovku. Proste cokoli od farmarskych her typu Farmville ci SmurfsVillage, pres vylozene tahove veci ala Words with Friends, DrawSomething nebo Hero Academy az po budovatelske hry jako Travian, The Tribezs atd...
To bych tak odhadoval ja A to serverovy reseni bude u vetsiny tehle veci dost stejny, takze je celkem sumak, o jaky konkretni pripad jde..... |
|
Návrat nahoru |
|
|
Crusty
Založen: 28. 08. 2007 Příspěvky: 120 Bydliště: Praha
|
Zaslal: 2. listopad 2012, 19:47:11 Předmět: |
|
|
ano, Flash to vicemene trefil. Da se to k tomu prirovnat. Nechci zatim byt konkretni, jelikoz je hotovo tak 50%, ale rad pak vyuziji tohoto fora pro presentaci.
V aplikaci je in-app billing a server ma na starost spravu nakoupenych predmetu + dela logicke a kontrolni vypocty (napr: hrac A utoci na B s 200 jednotkama a aktivnim predmetem, je to OK?, ...) Slibuji si od toho (snad ne najivne) ze aspon castecne znemoznim podvodum ve hre.
Pokud je to serverove reseni vicemene stejne u vsech tech her, tak jak to tedy resi? Staci tedy virtualni server a postupne navysovat kapacity s rostoucim poctem hracu?
Rad bych mel aspon nejaky odhad do zacatku s jakym poctem hracu muzu pocitat napr na takoveto konfiguraci (uvazujme stale PHP a MySQL)
kód: |
Operační systém: Linux
Kapacita HDD: 40 GB
RAM / paměť: 1024 MB (sdílená)
RAM / paměť: 512 MB (garantovaná)
Počet CPU jader: 2
Agregace CPU jádra: 1:4
|
jak rikam, s online spojenim mam skoro nulove zkusenosti, tak pokud se spatne ptam, nebo neposkytuji dostatek informaci, tak je rad doplnim. _________________ http://www.2ox.cz |
|
Návrat nahoru |
|
|
goddard
Založen: 06. 11. 2007 Příspěvky: 175 Bydliště: Brno
|
Zaslal: 3. listopad 2012, 11:33:57 Předmět: |
|
|
Crusty napsal: |
ano, Flash to vicemene trefil. Da se to k tomu prirovnat. Nechci zatim byt konkretni, jelikoz je hotovo tak 50%, ale rad pak vyuziji tohoto fora pro presentaci.
V aplikaci je in-app billing a server ma na starost spravu nakoupenych predmetu + dela logicke a kontrolni vypocty (napr: hrac A utoci na B s 200 jednotkama a aktivnim predmetem, je to OK?, ...) Slibuji si od toho (snad ne najivne) ze aspon castecne znemoznim podvodum ve hre.
Pokud je to serverove reseni vicemene stejne u vsech tech her, tak jak to tedy resi? Staci tedy virtualni server a postupne navysovat kapacity s rostoucim poctem hracu?
Rad bych mel aspon nejaky odhad do zacatku s jakym poctem hracu muzu pocitat napr na takoveto konfiguraci (uvazujme stale PHP a MySQL)
kód: |
Operační systém: Linux
Kapacita HDD: 40 GB
RAM / paměť: 1024 MB (sdílená)
RAM / paměť: 512 MB (garantovaná)
Počet CPU jader: 2
Agregace CPU jádra: 1:4
|
jak rikam, s online spojenim mam skoro nulove zkusenosti, tak pokud se spatne ptam, nebo neposkytuji dostatek informaci, tak je rad doplnim. |
Zalezi na tom jaky pouzijes middleware - pocitam s tim ze budes mit nainstalovany nejaky webovy a aplikacni server a potazmo databazi. Databazi bych dal rozhodne na jiny fyzicky server, casem bych mozna oddelil i web server od aplikacniho serveru.
Ted k te vyse zminene konfiguraci. RAM je tam rozhodne malo, pokud ten MW je napsany v jave a je to neco jako JBoss / WAS / WebLogic. WAS je schopny mit 10 vlaken / procesor, z toho si pak lze odvodit kolik to zvladne uzivatelu (zalezi jak je napsana ta aplikace na serveru). Pocital bych tak s 200, maximalne 500 uzivatelu ale rozhodne s vic RAM, tak 4gb.
Tohle je samozrejme jen hruby odhad bez znalosti te aplikace bezici na serveru. Dalsi vec co se tyka zajisteni zakladni spolehlivosti jsou 2 sitova rozhrani a nejake slusnejsi pripojeni (nejlepe od dvou poskytovatelu) s dobrym pomerem download / upload, zalozni disky (nejlip hotswap) a zalozni zdroj. Pokud mas moznost mit to virtualne (VMWare (ESX), VBox..) tak je to asi nejlepsi cesta pokud ches jednoduse rust - proste jen zkopirujes image na dalsi stroj a prenastavis par veci, porad ale rozhodne lepsi nez instalovat vsechno znovu. _________________ http://www.dredwerkz.cz |
|
Návrat nahoru |
|
|
kidd.sadam
Založen: 11. 06. 2009 Příspěvky: 18
|
Zaslal: 4. listopad 2012, 15:44:07 Předmět: |
|
|
Cus,
shodou okolnosti naky zkusenosti serverama mam, tak ti dam aspon zakladni rady:
Takze hlavni vec, PHP nebo C++ na tvorbu serveru je obrovska p*covina. Ano, C++ je vykonejsi, ale pro tvorbu serveru ABSOLUTNE nevhodna. Z me zkusenosti bych doporucil server v Jave (multiplatformni, jednoducha, spolehliva, obrovske mnozstvi knihoven a frameworku pro servery, ...). PHP by taky slo, ale vykon a vse okolo uz neni nic moc (oproti Jave). MySQL je myslim dobra volba, ale pozor na zbytecne komplexni SQL dotazy v jedne transakci (co nejmin tabulek).
Hm, co se tyce vykonu serveru, musis pocitat, ze mas dva servery - aplikacni a databazovy. Aplikacni je mozne skalovat na X mensich a slabsich serveru (takze kdyz zjistit, ze servery nestihaji, muzes pridat dalsi), ale DB je jenom jeden - takze je potreba zvolit vykonejsi.
Nejlepsi by bylo, kdybys udelal i load testy, ktery by simulovali realnou komunikaci.
Jinak pokud planujes 1000 req./sec, bude to uz chtit neco vykonejsiho a to uz neco stoji, takze je potreba to taky zvazit
Kdybys chtel vedet vic, tak mi pisni PM |
|
Návrat nahoru |
|
|
Crusty
Založen: 28. 08. 2007 Příspěvky: 120 Bydliště: Praha
|
Zaslal: 7. listopad 2012, 12:23:38 Předmět: |
|
|
vsem dekuji za rady
postupnym zkoumanim moznosti, jsem se dostal az k AppEnginu od Googlu, coz by dle meho laickeho usudku mohlo byt vhodne a do budoucna se to da i skalovat (s poplatkem)
Je to tedy vhodne pro ala Webovou hru? Mate nekdo s AppEngine zkusenost? _________________ http://www.2ox.cz |
|
Návrat nahoru |
|
|
goddard
Založen: 06. 11. 2007 Příspěvky: 175 Bydliště: Brno
|
Zaslal: 7. listopad 2012, 13:37:24 Předmět: |
|
|
Crusty napsal: |
vsem dekuji za rady
postupnym zkoumanim moznosti, jsem se dostal az k AppEnginu od Googlu, coz by dle meho laickeho usudku mohlo byt vhodne a do budoucna se to da i skalovat (s poplatkem)
Je to tedy vhodne pro ala Webovou hru? Mate nekdo s AppEngine zkusenost? |
osobni zkusenost nemam, ale z doslechu vim ze obcas je problem s rychlosti a mene casto s dostupnosti. rekl bych ale ze to jde odstranit dostatecnym mnozstvim penez doporucuju poradne si precist podminky... _________________ http://www.dredwerkz.cz |
|
Návrat nahoru |
|
|
Mem
Založen: 28. 07. 2007 Příspěvky: 1959 Bydliště: Olomouc
|
Zaslal: 9. listopad 2012, 13:08:01 Předmět: |
|
|
No kdyz clovek trochu pohleda, tak najde pribehy, kdy i pres dostatecny prisun penez byly velke appengine powered projekty dlouhe hodiny nedostupne apod. Cloudy jak je v soucasnosti resi Google, Amazon, i MS (zkouseli jsme ve firme Azure) bych osobne neriskoval, pokud se nedela bud jen nejaky proof of concept nebo to neni opravdu dobre posichrovane a overene (a takove zkusenosti nemam). Co nechapu jeste vic, ze se pouziva free GDocs (ale placene gapps jsou na tom stejne) apod. ve firmach. Resp. pouziti pro spolupraci nebo nejake drafty to muze byt sikovne, ale ukladat tam (a pouze tam) veskera data a resit problemy pri kazde zmene sluzeb, vypadcich, ... to mi hlava nebere. |
|
Návrat nahoru |
|
|
Crusty
Založen: 28. 08. 2007 Příspěvky: 120 Bydliště: Praha
|
|
Návrat nahoru |
|
|
Ladis
Založen: 18. 09. 2007 Příspěvky: 1536 Bydliště: u Prahy
|
Zaslal: 9. listopad 2012, 15:06:27 Předmět: |
|
|
Naše firma přešla s většinou dokumentů na GDocs a problémy s nedostupností nepamatuju. Co mě ale nas*alo, od nějaké doby byl nový, ale horší, webový tabulkový editor. Oproti starší verzi nekopíroval vzhled posledního řádku tabulky (písmo, barva pozadí buněk, ...), když jste vložili nový řádek. Tehdy jsem to řešil, že se zkopíroval vždycky starší dokument a obsah kopie se vymazal (získali jste tak nový dokument se starým lepším editorem). No a editor na text zas zobrazoval v IE prázdné řádky navíc, kde ostatní prohlížeče byly ok (vlastnost IE, když si nedáte pozor, tak se prázdný řádek zobrazí jako 2, ale Google editor si to měl hlídat). A nikomu ve firmě to nevadilo.
No a teď přenášíme naší nejdůležitejší databázi - databázi zákazníků - s kterou se pracuje denně, na MS Dynamics CRM, a to je opravdu "sranda" Je to pomalý, jede to jen v IE a Outlooku, našel jsem už způsob, jak do 10 sekund shodit tab IE s CRM včetně všech z něj otevřených popup oken a neumí to základní věci (automatické číslování nových záznamů, předvyplnění polí pro nový záznam, textbox s výběrem připravených hodnot, ...). Tahle chybějící funkcionalita se řeší JScriptem a .NET pluginy, ale člověk si dost ošoupe Ctrl, C a V . Dokonce ani zálohování tam pořádně nejede (napoprvý, když jsme potřebovali zálohu, nám řekli, že jim vytváření záloh prostě nefungovalo), a když, tak je to jen jedna automatická záloha (nelze udělat ve zvolený moment a je jen jedna). Toto byl pro nás problém, ale vyřešil se tím, že ten Dynamics CRM teď beží na našem serveru, takže zálohy si děláme sami. _________________ Award-winning game developer |
|
Návrat nahoru |
|
|
|