MC server



Kolik GB RAM a takt CPU je minimum pro Minecraft server okolo 20 lidí ? Dík za odpovědi.
Takže pro jednoho člověka v případě vanilla serveru 64MB,čily 1280 by mělo stačit,ale doporučuji vždy o něco více (100na jednoho člověka)V případě Bukkitu je minimum 100MB (optimálně je 150,rezerva pro pluginy) takže 2GB-3GBCPU stačí 2,8 Ghz (dvoujádro pro dobrý chod,eventuelně 4jádro 2,6Ghz a více)
Záleží hlavně na grafické kartě, tato hra vyžaduje minimálně: Nvidia 7900 256MB alebo ATI X1900 256MB.

Nicméně na grafických kartách v noteboocích nemusí fungovat korektně. <p>pro postgresql může být výkon procesoru velmi důležitý, zejména pokud do paměti ram zapadá poměrně vysoké procento aktivní pracovní sady vašich dat. většina databází, se kterými jsem pracoval, měla většinu času cpu jako hlavní překážku. (právě jsem zkontroloval vmstat na serveru hostujícím webové stránky s miliony přístupů denně, které hostovaly více než 5 tb databázového prostoru, a nikdy jsem neviděl více než 2% času čekání na disk, ale viděl jsem vrchol 12% času cpu uživatele.)</p><p>protože postgresql je založeno na procesech, každý jednotlivý proces může běžet jen tak rychle jako jedno jádro, ale ve směsi, jako máme na výše uvedeném serveru, s velkým objemem malých požadavků, je nejdůležitější celkový procesor ve všech jádrech. při stejném celkovém výkonu procesoru bude postgresql obecně pracovat lépe s menším počtem rychlejších jader než s mnoha pomalejšími jádry.</p><p>až do mezipaměti vysokého procenta aktivní sady dat je přidání ram obvykle pro buck zobrazí větší třesk než přidání jader. po dostatečném ukládání do mezipaměti je výhodou další ram klesá a máte lepší podporu při zvyšování výkonu procesoru).</p><p>pro více informací o tomto tématu, které se týká postgresql, si nemyslím, že existuje lepší zdroj než <a href="http://www.postgresql.org/docs/books/"><em> postgresql 9.0 vysoký výkon</em></a> od <strong> greg smith </strong>. (úplné zveřejnění, byl jsem technickým recenzentem knihy, ale nezískávám na základě prodeje žádné finanční výhody.)</p> Vzhledem k tomu, float stojí 32 bit a máte 40000 plováky v každé pole byste potřebovat:



> 
> 40000 * 32 * 2 = 2.560.000 bit
> 
> 
> 


Což je 320.000 Byte. Není k hodně paměti moudrý bych řekl, protože výchozí limit pro Android App je 16 MB


Pokud jde o výkon, který by určitě získat nějaké rychlosti pomocí JNI. OpenGL by vám nedávají dostatek výhodu Řekla bych, že od vytvoření OpenGL kontext zabere nějaký čas stejně. <p>provozoval jsem systém s nejlepší částí z tisíce databází rozložených na více serverech. všechny byly identické struktury a byly synchronizovány s databází šablon, která byla na každém počítači.</p><p>to mi umožnilo migrovat databáze z jednoho db na druhý, pokud by se jeden příliš přetěžoval, a když se změnil klientský mix, mohl jsem na různých serverech vytvářet nové databáze, abych mohl načíst rovnováhu mezi servery. to byla největší výhoda, kterou jsem získal od systému, v tom, že jsem měl na několika samostatných serverech několik velkých kusů cínu, které prováděly více komplikovaných dotazů současně.</p><p>skvělá věc je, že můžete do konfigurace přidat servery svou vlastní rychlostí, protože každý server se začíná přetížit, přidat další do mixu, přenést některé dbs na nový server a skončit pěkně načíst vyváženou sadu serverů. opravdu pěkný a jednoduchý způsob, jak přidat měřítko do systému, kdykoli je to potřeba!</p><p>důvodem, proč jsem šel s tímto přístupem spíše než s jediným obrovským databázovým přístupem, byla naprostá velikost potenciální databáze, která by byla vytvořena ... každá z 1000 databází měla 200 tabulek a mnoho jednotlivých tabulek v každé z databáze obsahovaly mnoho stovek <strong>milionů</strong> řádků dat!</p><p>konfigurace jediné databáze by vyžadovala, aby určité tabulky (přibližně 8 z nich) měly více miliard řádků dat a celková velikost db by byla přes 10tb. podařilo se nám mít více serverů s 5tb úložiště raid 10, s mnoha databázemi na každém.</p><p>to bych udělal! doufám, že to pomůže vašemu rozhodování ... :)</p> <p>myslím, že se to opravdu rozpadne na váš provoz. pomalejší hardware, pomalejší (již pomalejší) generování stránky. není to specifické pro wp, je to stejné pro všechny velké php skripty.</p><p>pokud dostanete serverový hit každou chvíli, jako na dev boxu nebo rodinném blogu, není to žádný velký problém. bude to jen vyplivnout stránky pomaleji. dostanete-li pravidelně souběžné zásahy, vaše stránky se dostanou z webu poměrně snadno.</p><p>všimněte si také, že mnoho low-end sdílené host směšuje více lokalit na low-end hardware. je to samozřejmě ne tak nízké, jako to, na co jste se připojili, ale nečekal bych, že velký rozdíl ve výkonu ve srovnání s přeplněným sdíleným serverem.</p> <p>za tento limit můžete poděkovat ibm <a href="http://en.wikipedia.org/wiki/punched\_card">punčová karta</a> - měla 80 sloupců:</p><p><img src="https://i.stack.imgur.com/xvpky.jpg" alt="ibm punch card"></p> <p>s ulimitem jsou nějaké problémy. zde je užitečné přečíst si toto téma: <a href="http://coldattic.info/shvedsky/pro/blogs/a-foo-walks-into-a-bar/posts/40">omezení času a spotřeby paměti programu v linux</a> , což vede k nástroji <a href="https://github.com/pshved/timeout">timeout</a> , který vám umožní proces v kleci (a jeho vidličky) ) podle času nebo spotřeby paměti.</p><p>nástroj timeout vyžaduje perl 5+ a <code>/proc</code> připojený souborový systém. poté zkopírujete nástroj do např. <code>/usr/local/bin</code> jako tak:</p><pre><code>curl https://raw.githubusercontent.com/pshved/timeout/master/timeout | \ sudo tee /usr/local/bin/timeout &amp;&amp; sudo chmod 755 /usr/local/bin/timeout </code></pre><p>poté můžete svůj proces „klecovat“ podle spotřeby paměti jako ve vaší otázce:</p><pre><code>timeout -m 500 pdftoppm sample.pdf </code></pre><p>nebo můžete použít <code>-t &lt;seconds&gt;</code> a <code>-x &lt;hertz&gt;</code> pro omezení procesu podle času nebo omezení cpu.</p><p>způsob, jakým tento nástroj funguje, je několikanásobná kontrola za sekundu, pokud proces tření nepřesáhl stanovené hranice. to znamená, že ve skutečnosti existuje malé okno, ve kterém by proces <em> mohl potenciálně </em> být nadměrně odebírat před vypršením časového limitu a proces zabije.</p><p>správnější přístup by tedy pravděpodobně zahrnoval cgroups, ale to je mnohem více zapojeno do nastavení, i když byste použili docker nebo runc, což mimo jiné nabízí uživatelsky příjemnější abstrakci kolem cgroups.</p> <p>viz <a href="https://superuser.com/a/4252/128227">this</a> odpověď. níže uvádíme pro pohodlí:</p><blockquote> <p>vypočítejte potřebný datový tok vydělením 1 gb délkou videa v sekundách. takže pro video o délce 16:40 (1 000 sekund) použijte datový tok 10 000 000 bajtů/s:</p> <pre><code>ffmpeg -i input.mp4 -b 1000000 output.mp4 </code></pre> <p>dalšími možnostmi, které by stálo za zvážení, je nastavení faktoru konstantní rychlosti, který snižuje průměrnou bitovou rychlost, ale zachovává si lepší kvalitu. měňte crf mezi 18 a 24 - čím nižší, tím vyšší datový tok.</p> <pre><code>ffmpeg -i input.mp4 -vcodec libx265 -crf 20 output.mp4 </code></pre></blockquote><p>změňte kodek podle potřeby - libx264 může být k dispozici, pokud libx265 není, za cenu mírně větší výsledné velikosti souboru.</p> > 
> Kdo ovládá výchozí velikost maximální zásobníku; OS nebo kompilátor?
> 
> 
> 


Překladač obvykle. OS / hardware, omezuje jej do určité míry. Výchozí hodnota je 8 MB. Na linux IIRC. Myslete na `ulimit -s`systému Linux (pro změnu velikosti zásobníku).



> 
> Je výchozí maximální poměru k celkové paměti? (Tj stroj s 2GB paměti by mít větší velikost než výchozí stroji s pouze 512) V tomto příkladu oba stroje jsou stejné nastavení os / překladač, jen různá množství systémové paměti RAM.
> 
> 
> 


Ne. Dokud a pokud to uděláte yiurself.You může změnit velikost zásobníku přes kompilátor přepínače.



```
ld --stack=<STACK_SIZE>

```

nebo 



```
gcc -Wl,--stack=<STACK_SIZE>

```


> 
> Vezměte si Standard C ++ o problematice komínů a hromady:
> 
> 
> 


Norma je založena na abstraktním stroji a opravdu není sama o sobě tím hardwarem nebo komíny nebo hromad. To mluví o přidělené obchodu a volného obchodu. Volný obchod je místo, kde byste se, pokud voláte nový (většinou). FWIW, implementace může mít pouze jeden paměťový prostor maskující se jako oba zásobníku a haldy, pokud jde o námitky alokaci.


Váš dotaz, omáčky, scvrkává být specifický problém implementace spíše než záležitost jazyka. 


Snad to pomůže. <p>jedním z tichých zabijáků spojení mysql je paket mysql.</p><p>nejprve pojďme zjistit, co je mysql paket.</p><p>podle <a href="http://rads.stackoverflow.com/amzn/click/0596009577">strana 99 „porozumění interním mysql“ (isbn 0-596-00957-7)</a> jsou zde odstavce 1-3 vysvětlující mysql pakety:</p><blockquote> <p>mysql síťový komunikační kód byl napsán za předpokladu, že dotazy jsou vždy přiměřeně krátké, a proto je lze na server odesílat a zpracovávat v jednom bloku, který se v terminologii mysql nazývá <em> paket</em>. server přiděluje paměť dočasné vyrovnávací paměti pro uložení paketu a vyžaduje dost, aby se vešel úplně. tato architektura vyžaduje preventivní opatření, aby se zabránilo vyčerpání paměti serveru  omezení velikosti paketu, čehož tato možnost dosáhne.</p> <p>kód zájmu týkající se této možnosti je uveden v <strong> sql/net\_serv.cc </strong>. podívejte se na <strong> my\_net\_read () </strong>, poté následujte volání na <strong> my\_real\_read () </strong> a věnujte zvláštní pozornost <strong> net\_realloc () </strong>.</p> <p>tato proměnná také omezuje délku výsledku mnoha řetězcových funkcí. podrobnosti viz <strong> sql/field.cc </strong> a <strong> sql/intem\_strfunc.cc </strong>.</p> </blockquote><p>znalost této informace o paketech mysql umožňuje vývojářům/dba jejich velikost tak, aby pojala více blob uvnitř jednoho paketu, i když jsou nepříjemně velké. v takovém případě paket příliš malý způsobí problémy s otevřeným spojením.</p><p>podle <a href="http://dev.mysql.com/doc/refman/5.5/en/gone-away.html"><strong> dokumentace mysql </strong></a> </p><ul> <li> <p>tyto chyby můžete také získat, pokud odešlete dotaz na server, který je nesprávný nebo příliš velký. pokud mysqld obdrží paket, který je příliš velký nebo mimo provoz, předpokládá se, že se klientovi něco pokazilo a připojení se uzavře. pokud potřebujete velké dotazy (například pokud pracujete s velkými sloupci blob), můžete zvýšit limit dotazu nastavením proměnné max\_allowed\_packet serveru, která má výchozí hodnotu 1 mb. možná bude také nutné zvýšit maximální velikost paketu na konci klienta. další informace o nastavení velikosti paketu jsou uvedeny v <a href="http://dev.mysql.com/doc/refman/5.5/en/packet-too-large.html">oddíl c.5.2.10, „paket příliš velký“.</a> </p> </li> <li> <p>příkaz insert nebo replace, který vkládá mnoho řádků, může také způsobit tyto druhy chyb. jeden z těchto příkazů odešle serveru jeden požadavek bez ohledu na počet řádků, které mají být vloženy; proto se často můžete této chybě vyhnout snížením počtu řádků odeslaných na vložit nebo vyměnit.</p> </li> </ul><p><strong> doporučení [~ # ~] [~ # ~] </strong></p><p>zkuste zvýšit <a href="http://dev.mysql.com/doc/refman/5.5/en/server-system-variables.html#sysvar\_max\_allowed\_packet"><strong> max\_allowed\_packet </strong></a> na mnohem větší číslo, protože výchozí hodnota je 1m. navrhoval bych asi 10krát největší pole text nebo blob, které máte ve svém aktuálním datovém souboru.</p><p>chcete-li nastavit max\_allowed\_packet na 256m, můžete jej přidat do /etc/my.cnf nebo my.ini</p><pre><code>[mysqld] max\_allowed\_packet=256m </code></pre><p>na pokrytí budoucích restartů mysqld. chcete-li nainstalovat hodnotu nyní na server, spusťte toto:</p><pre><code>set global max\_allowed\_packet = 1024 * 1024 * 256; </code></pre><p>pokusit se !!!</p>