Официалният форум на iPlay.bg 

Очакваме вашите мнения за бъдещето на iPlay.bg тук (IPLAY.BG - ЩЕ НИ БЪДЕ ЛИ?).
Искате ли да сменим темата на форума? Можете да се изкажете тук (ПРЕДЛОЖЕНИЯ ЗА НОВ СТИЛ/ТЕМА НА ФОРУМА).
Всякакви уроци свързани с Counter-Strike, AMX Mod X, Valve HAMMER Editor и тн.
 #340322  от krasio666
 съб яну 31, 2015 6:21 pm
Тук ще ви обясня как сървъра ни да е добър и на практика да няма лаг и да има повече хора.

Първо да споменем каква машина ни е достатъчна, първо ще започна със слаба машина:
Celeron /Athlon 1.6ghz / 256mb / hdd: 20gb - тази машина може да издържи само 1 сървър
DualCore/Athlon x2 2.5ghz / 2gb / hdd: 160gb - тази може да издържи 4 сървъра
Phenom/Quad 2.6ghz / 4gb / hdd: 250gb - тази може да издържи 7 сървъра
Phenom II/Core i7 2.8ghz / 4 или повече gb / hdd: 500gb - може да издържи до 13 сървъра
2xXeon E5405+ (771 socket) - до 30 сървъра.
2xOpteron 6200+ series (interlagos) - до 30+ сървъра.
Това са примерни машини, обема на хард дисковете съм го слагал нарочно, но в никакъв случай той не играе роля, сървър може да се хоста и от 20gb хард диск, вече има и SSD дискове който са доста бързи, но и доста скъпи, предимно са с малък обем, но с голяма бързина при трансфер на данни.
Естествено тези машини на практика могат да хостват описания брой, но какво ще каже интернет доставчика ви за това ?
Естествено трябва ви добър интернет за може да поддържат хората в тях ниска латенция и да играят нормално.
В този сайт:
- може да прецените колко rate може да сложите на вашият сървър в зависимост от вашият интернет.

Какво правим ?
1.Пишете mhz на процесора, примерно ако е 3ghz пишете 3000
2.Пишете колко рам памет имате, примерно за 2gb пишете 2000
3.Колко слота ще има вашият сървър/и
4.Интернет скороста, препоръчвам ви да я пишете в mbps (нея може да видите в
- гледа се upload скороста. След като влезете там избирате "жълтата звездичка" и избирате сървър - Препоръчвам ви това да е Plovdiv - защото към него се измерва най-точно!)
И какво става ? Тоест ако в speedtest-a ви е измерило, че имате 56000 mbps upload в сайта на рейт калкулатора пишете числото "56".
Логиката:
Ако имате толкова ъплоуд (примерно) и държите 1 сървър, това може да ви успокой, вие няма за какво да се притеснявате, а директно да сложите максималните настройки, а именно:
sv_maxrate 25000
sv_maxupdaterate 100 - в server.cfg файла в cstrike папката (отваря се с notepad или друг текстов редактор)
Ако обаче, държите повече сървъри правите следното:
56000mbps upload са доста, затова ще ви искара извънземни числа като:
Какво правим ? Отваряме си калкулатора и делим:
509615 : броя сървъри който искате да държите, примерно 13 - прави 39201 - тоест вие можете да сложите максималният брой рейт на всички ваши 13 сървъра, а именно 25000.
Ако искате да хоствате 30 сървъра, делите на 30, като се получава: 16987 (sv_maxrate) - което не е максималното и не препоръчителното, тоест с този интернет 56000mbps може спокойно да държите 13-15 сървъра на машина от рода на PhenomII/Core i7.
Надявам се да сте ме разбрали.

Обясненията продължават!
Повечето от вас можеби не знаят, но HLDS платформата не може да поддържа повече от 1 ядро, затова се задава "афинитет (affinity)" на всяко HLDS, ако имате 2 ядрен процесор и държите 4 сървъра, задайте на 2 да ползват първото ядро, а на останалите 2 на 2рото ядро.
Как става това ? Отваряте Task Managera с клавишната комбинация CTRL+ALT+DEL и отивате на Process таба и търсите hlds.exe маркирате го и давате върху него дясно копче и избирате "Set Affinity..." и просто маркирате кои ядра да ползва.
Така се процедира и с повече ядрените процесори, като например 4/6/8 - примерно държите 15 сървъра на 4 ядрен процесор и обмисляте, кои модове са по-тежки, тях задавате на крайните ядра (5-6) защото те са най-неизползваеми, а останалите леките на първите, като може да задавате и по 4 сървъра на 1 ядро, а както казах по-тежките по-малко на едно ядро, но ги задавате на последните ядра, защото първите ядра се ползват от приложенията които не поддържат multi threading tehnology, тоест програми и т.н.

Болната тема на всички хостери е операционната система, защо ? Защото всеки сървър трябва да върви на пълни 1000 FPS за да може играта да е оптимална и да върви гладко в сървъра.
Затова аз препоръчвам да се използва за по-слаби компютри Windows Server 2003, a за по силни Windows Server 2008 - Защо ?
Защото при тях FPS-то което може да поддържа сървъра е най-високо.
Как FPS-то да ми е повече ? Дънните платки на intel (каквато и да е платформа 775/1366/1155/1156) при инсталирането на какъвто и да е Windows ще тръгнат всички сървъри стартирани от него на 1000FPS, дънните платки на intel имат вградена технологията HPET и тя се задвижва автоматично (посредством вграден драйвер в дъното) при такива приложения, тоест ако искате сървърите да са ви качествени си купувате дънна платка на Intel, ако ли ще трябва да прочетете още!
Внимание: AMD базираните дънни платки, нямат такива платки които да поддържат hpet опцията както трябва, intel-ските имат вградени драйвери за това и благодарение на тях, това става факт, затова ако искате сървъра да ви е качествен, трябва да сте с intel базирана система и най-важното с intel дънна платка)

Както казах при Windows Server 2008 FPS-то е най-много, но то при някоя друга дънна платка (не Intels-ка) няма да върви на 1000, а ще си "играе" 500-600-900-1000 (ако ме разбирате), затова:
* Влизате в BIOS и търсите опцията HPET и я задавате на Enable
- Това обаче, не е сигурно и не винаги може да ви докара пълни стабилни 1000FPS и става само на някои от обикновенните платки на производителите.
* 2рият начин е да изтеглите някой Booster като MMtimer - (напишете в google - mmtimer 1.6 или Krunch Booster 1.6 и вижте как се инсталира. Инсталцията му е на принципа на метамод плугин, обяснявал съм в предишнит теми)

ВАЖНО! За да проверите колко е вашето FPS и докъде то може да стигне, трябва да напишете тази опция в server.cfg: sys_ticrate 10000 (или в сървърната конзола, ако сървъра ви е пуснат в момента), след което почвате да пишете stats в конзолата на сървъра, така ще видите колко е вашето сървърно FPS.

Други идеи за спомагането на лага и това той да е по-малък, са:
* Задавате на приоритет, отваряте Task Managera и търсите процес-а hlds.exe, след което го маркирате и му давате дясно копче и избирате "Set Priority..." и избирате "High" - което е най-препоръчително, защото при RealTime може да имате проблеми и сървъра ви да спира, няма да се хвърлям в обяснения защо, просто задавате High.
* Оптимизаций на мода (триене на коментираните линий по файловете (плугините) //This is a files...)
* Оптимизаций на операционната система (има теми във форума как се прави)

Като цяло това са начините вашият сървър да е по-качествен или поне за Windows. За линукс ( *unix )базираните системи визирам Centos, Ubuntu, Debian и т.н. положението е по-различно и начините изброени тук, там няма да потрябват, пък ако можете да се оправяте под тях, въобще не се занимавайте с Windows, обясненията са за Windows защото повече се ползва от масовите потребители, пък и от повечето хостери.
Надявам се да е достатъчно добре обяснено, старал съм се да е типаж "ламерската".

Edit: урока е взет от Dedihost форума