Valheim-ის dedicated სერვერს ერთი სწრაფი CPU ბირთვი უფრო სჭირდება, ვიდრე ბევრი ბირთვი, და სწრაფი საცავი უფრო, ვიდრე დიდი. ათ მოთამაშემდე ვანილის სამყაროსთვის საკმარისია ერთი-ორი vCPU თანამედროვე, მაღალი სიხშირის პროცესორზე, მესამე ბირთვი მძიმედ მოდებულ სამყაროს ეხმარება, ხოლო 10-20 GB SSD ან NVMe სერვერს, სამყაროს და გონივრულ backup-ებს მარაგით იტევს. რასაც აპარატურა ვერ გაასწორებს, ისაა, რომ Valheim-ის სიმულაციის დიდი ნაწილი სერვერზე კი არა, მოთამაშეების მანქანებზე სრულდება - ამიტომ ნელი სერვერი და ნელი მოთამაშე ერთნაირად ჩანს, და უნდა იცოდე, რომელი გაქვს, სანამ რამეს მეტს იყიდი. მეხსიერება ცალკეა განხილული წერილში რამდენი RAM სჭირდება Valheim-ის სერვერს; ეს პოსტი დანარჩენზეა.
რატომ ეყრდნობა Valheim ერთ thread-ს#
Valheim Unity-ის თამაშია და, Unity-ის უმეტესი თამაშის მსგავსად, მისი სერვერი სამუშაოს დიდ ნაწილს მთავარ thread-ზე აკეთებს. ყოველ კადრზე ეს thread ამუშავებს შემომავალ ქსელურ შეტყობინებებს, ანახლებს ობიექტებს, რომლებსაც ფლობს, და გამოითვლის, ვის რა გაუგზავნოს. სხვა thread-ები ეხმარებიან ქსელსა და შენახვების ჩაწერაში, მაგრამ მთავარი ციკლი ბირთვებზე არ იყოფა. როცა ის დაკავებულია, ბირთვების დამატება არაფერს ცვლის; ყოველი ბირთვის დაჩქარება კი ცვლის.
ამიტომ არის Valheim-ის რჩევა, როგორც ბევრი თამაშის სერვერისა, რომ ბირთვების რაოდენობას სიხშირე და თითო ბირთვის წარმადობა ერჩივნოს. CPU გამოყენების კითხვა ერთ thread-ზე მომუშავე სერვერებისთვის განმარტავს, რატომ შეიძლება ოთხბირთვიან ხედში „25%“-ზე მყოფი სერვერი სრულად დატვირთული იყოს, ხოლო თამაშის სერვერის CPU მოთხოვნები თამაშების მიხედვით ზოგად სურათს აჩვენებს.
არსებობს Valheim-ის სპეციფიკური გარემოება, რომელიც მის სერვერს რეპუტაციაზე მსუბუქს ხდის. სამყარო ზონებადაა დაყოფილი და თითოეულ ზონას სიმულაციას უკეთებს პირველი მოთამაშე, ვინც მასში შევიდა. ამ ზონაში მონსტრები, ფიზიკა და ნაგებობის მდგრადობა მის მანქანაზე გამოითვლება; სერვერი შედეგს ინახავს და სხვებს გადასცემს. სერვერი მხოლოდ იმ ზონებს ამუშავებს, რომლებსაც არავინ ფლობს. პრაქტიკაში ეს ნიშნავს:
- ათი მოთამაშის სერვერი, რომლებიც რუკაზე გაფანტულნი არიან, სიმულაციას გაცილებით ნაკლებს აკეთებს, ვიდრე ელოდები, რადგან სამუშაოს უმეტესობა კლიენტებზეა.
- სუსტი CPU-ს ან ცუდი კავშირის მოთამაშე თავის ზონებს ყველასთვის, ვინც მასთან ახლოსაა, ალაგებს, და სერვერის არცერთი გაუმჯობესება არ ეხმარება.
- სერვერის CPU დატვირთვა ძირითადად მოთამაშეებს შორის ობიექტების სინქრონიზაციიდან მოდის და არა სამყაროს გაშვებიდან.
ანუ სერვერის საქმე ძირითადად აღრიცხვაა: ყოველი ობიექტის თვალყურის დევნება (თამაში მათ ZDO-ებს უწოდებს), იმის გადაწყვეტა, რომელი ობიექტი სჭირდება თითოეულ კლიენტს, და ცვლილებების გაგზავნა. ეს ხარჯი იზრდება იმის მიხედვით, რამდენი ობიექტია აქტიურ მოთამაშეებთან ახლოს და რამდენი მოთამაშე გადის ერთდროულად დატვირთულ ადგილებში.
რა იყენებს სერვერის CPU-ს რეალურად#
ტიპიური ჯგუფის სამყაროზე ზემოქმედების მიახლოებითი თანმიმდევრობით:
| დატვირთვა | რატომ ღირს | რა გააკეთო |
|---|---|---|
| მოთამაშეები მკვრივ ბაზებში | ათასობით ობიექტის სინქრონიზაცია | ბაზები გაშალე, დიდი ელემენტები გამოიყენე |
| ბევრი მოთამაშის ერთდროული მოძრაობა | უფრო ხშირად იცვლება ზონების მფლობელი, მეტი გასაგზავნი მონაცემი | ათ მოთამაშემდე ჩვეულებრივ ნორმალურია |
| მოშინაურებული ცხოველების დიდი ფარეხები | ყოველი ცხოველი ცოცხალი ობიექტია AI-თი | შეზღუდე ფარეხები, ზედმეტები გაწყვიტე |
| ნაგავი მიწაზე | ყოველი დაგდებული ნივთი ობიექტია | პერიოდულად გაასუფთავე |
| სამყაროს შენახვები | მთელი სამყაროს სერიალიზაცია | სწრაფი საცავი, გონივრული ინტერვალი |
| მოდები | არაფრიდან ბევრამდე | გაზომე ყოველი მოდის დამატებამდე და შემდეგ |
რელიეფის შეცვლა ცალკე ხსენებას იმსახურებს. ყოველი ცვლილება ზონის მოდიფიკაციად ინახება და ცვლილებებით დახუნძლული ზონები უფრო ძვირია ჩასატვირთად, შესანახად და გასაგზავნად. გასწორებულ პლატოზე აშენებული ბაზა შესამჩნევად მძიმეა ბუნებრივ მიწაზე აშენებულთან შედარებით. რელიეფის შეცვლა სერვერებზე და წარმადობა ბიომების მიხედვით ორივეს განიხილავს.
მოდები არაპროგნოზირებადია. ხარისხის გამაუმჯობესებელი მოდი, რომელიც კრაფტის მენიუს ცვლის, სერვერზე არაფერი ჯდება. მოდი, რომელიც არსებებს, spawner-ებს ან მთელ სამყაროზე გავრცელებულ სისტემებს ამატებს, მნიშვნელოვან დატვირთვას უმატებს, და რამდენიმე მოდი, რომელიც ტაიმერით ყველა ობიექტს ათვალიერებს, ზრდასრულ სამყაროზე ბირთვს ავსებს. თუ მოდებს იყენებ, ყოველი მოდის დამატებამდე და შემდეგ CPU მშვიდ საღამოს გაზომე.
სიხშირე, ბირთვები და რა არის vCPU#
ჰოსტინგის გეგმები CPU-ს vCPU-ად ან ბირთვის წილად ყიდიან. ორი რიცხვია მნიშვნელოვანი: რამდენს იღებ და რამდენად სწრაფია თითოეული.
- რამდენად სწრაფი. თანამედროვე დესკტოპ კლასის ბირთვი მაღალი სიხშირით იმავე Valheim-ის სამყაროს უფრო დაბალი კადრის დროით გაუშვებს, ვიდრე უფრო ძველი ან დაბალი სიხშირის სერვერის ბირთვი. ჰოსტები იშვიათად გეუბნებიან, ზუსტად რას იღებ, და გაზიარებულ node-ებზე მოდელი ხშირად საერთოდ არ არის მითითებული. თუ ping კარგია და მოთამაშეები მაინც ხედავენ ჩაკვრას ჯგუფის ზრდასთან ერთად, ეჭვმიტანილი თითო ბირთვის სიჩქარეა.
- რამდენი. ერთი სრული ბირთვი პატარა ვანილის სამყაროს ატარებს. მეორე ბირთვი შენახვისა და ქსელის thread-ებს ადგილს აძლევს, მთავარი ციკლისგან დროის წაღების გარეშე, რაც სამყაროს შენახვისას ჩაკვრას ამსუბუქებს. ორზე მეტი ვანილის სერვერს ცოტას მატებს; მოდებულს შეიძლება მესამე გამოადგეს.
- მკაცრი ლიმიტები თუ burst. ზოგ ჰოსტზე CPU მკაცრი შეზღუდვაა: იღებ ზუსტად იმ წილს, რაც გადაიხადე, და არა მეტს. სხვებზე შეგიძლია ლიმიტს გადააჭარბო, როცა მეზობლები მშვიდად არიან. მკაცრი ლიმიტი პროგნოზირებადია; burst კარგ დღეს უფრო სწრაფია და ცუდ დღეს უფრო ნელი. გაზიარებული CPU და ხმაურიანი მეზობლები განსხვავებას განმარტავს.
RE:NODE-ზე CPU არის მკაცრი შეზღუდვა ნაყიდ წილამდე, რომელიც იზომება ერთი ბირთვის პროცენტებში, ამიტომ 150 არის 1.5 vCPU. სერვერი თავისი წილის 100%-ზე ნელია და არა გატეხილი, და ამის გამო არასოდეს ჩერდება - მაგრამ თუ შენი გრაფიკი ლიმიტზე დგას, მოთამაშეები კი უჩივიან, წილი ძალიან პატარაა იმისთვის, რასაც სამყარო აკეთებს.
საცავი: ინსტალაციის ზომა, სამყაროს ფაილები და backup-ები#
Valheim დისკზე ზომიერია. რიცხვები:
| ელემენტი | ტიპიური ზომა |
|---|---|
სერვერის ინსტალაცია (valheim_server, app 896660) | დაახლოებით 2 GB |
სამყაროს .fwl ფაილი | რამდენიმე ასეული ბაიტი |
სამყაროს .db, ახალი | რამდენიმე MB |
სამყაროს .db, თვეების თამაში | დაახლოებით 20-150 MB |
| თითო ავტომატური backup | დაახლოებით .db-ის ზომა |
| BepInEx და მოდების კომპლექტი | რამდენიმე MB-დან რამდენიმე ასეულამდე |
.db იზრდება შესწავლილ ტერიტორიასთან, სამშენებლო ელემენტებთან, ნივთებთან, მოშინაურებულ ცხოველებთან და რელიეფის ცვლილებებთან ერთად. რუკის შორეულ კიდეებამდე შესწავლა მას ზრდის; ასევე ბევრის მშენებელი ჯგუფიც. ძალიან დიდმა სამყაროებმა დიდხანს მომუშავე სერვერებზე შეიძლება ეს რიცხვები გადააჭარბონ, განსაკუთრებით კონტენტის დამამატებელი მოდებით.
სერვერი სამყაროს გვერდით საკუთარ მოძრავ backup-ებს ინახავს, ნაგულისხმევად ოთხს, რომლებსაც -backups, -backupshort და -backuplong მართავს. ეს ასლები იმავე საქაღალდეში, იმავე დისკზეა, ამიტომ დისკის ბიუჯეტში ჩათვალე. ისინი დაგიცავენ გაფუჭებული შენახვისგან, მაგრამ არა დისკის ან სერვერის დაკარგვისგან. ნამდვილი backup-ები სხვაგან უნდა იყოს; Valheim-ის backup-ები და სამყაროს გაფუჭება განმარტავს, როგორ გააკეთო.
ყველაფერს თუ შევკრებთ, ვანილის სერვერი დიდხანს მოქმედი სამყაროთი და ჩაშენებული backup-ებით 5 GB-ზე გაცილებით ნაკლებში ჯდება. 10 GB უმეტეს ჯგუფს კომფორტულად ყოფნის; 15-20 GB ტოვებს ადგილს დიდ მოდის კომპლექტს, ლოგებს, მეორე სამყაროს ან დაარქივებულ ძველს. რამდენი საცავი სჭირდება თამაშის სერვერს და რა ვქნა, როცა დისკი ივსება ზოგადი ვერსიებია.
NVMe, SSD თუ მყარი დისკი: რა იცვლება#
საცავის სიჩქარე Valheim-ისთვის სამ ადგილას არის მნიშვნელოვანი: სერვერის გაშვებისას, სამყაროს შენახვისას და backup-ების გაკეთებისას.
შენახვა. Valheim სამყაროს მეხსიერებაში ინახავს და ყოველ -saveinterval წამში (ნაგულისხმევად 1800) დისკზე წერს. ჩაწერისას სერვერი ჩერდება ან ნელდება და მოთამაშეები ამას მოკლე გაყინვად გრძნობენ. სწრაფ საცავზე ის ჩვეულებრივ მოკლეა. დიდი სამყაროს მქონე მყარ დისკზე შეიძლება იმდენად გრძელი იყოს, რომ rubber-banding ან გაჭედილი შესვლა გამოიწვიოს. რამდენი ხდება შენახვისას მთავარი thread-ის გარეთ, თამაშის ვერსიებს შორის შეიცვალა, ამიტომ ფიქსირებულ რიცხვს ნუ ენდობი: ლოგი გამოიტანს ხაზს World saved დახარჯული დროით, და ეს არის შენი რიცხვი.
გაშვება. დიდი .db-ის ჩატვირთვა მყარი დისკიდან უფრო ნელია, რაც ყოველ გადატვირთვას აგრძელებს.
Backup-ები. სამყაროს კოპირება, გრაფიკით ან განახლებამდე, სწრაფ საცავზე უფრო სწრაფია და მიმდინარე თამაშს ნაკლებად ეჯიბრება.
| საცავი | შენახვის პაუზა დიდ სამყაროზე | დასკვნა |
|---|---|---|
| NVMe SSD | მოკლე | იდეალური |
| SATA SSD | მოკლედან ზომიერამდე | კარგია |
| მყარი დისკი | შეიძლება შესამჩნევი იყოს | აქტიური სამყაროსთვის თავი აარიდე |
მბრუნავი დისკიდან SSD-ზე გადასვლის შემდეგ მოგება უფრო მცირეა. NVMe SATA SSD-თან შედარებით ყველაზე მეტად დიდ სამყაროებს ეხმარება და როცა რამდენიმე სერვერი ერთ დისკს იზიარებს. რას ცვლის NVMe სინამდვილეში განმარტავს, სად არის განსხვავება რეალური და სად - მარკეტინგი.
თუ უფრო ნელ საცავზე გიწევს მუშაობა, -saveinterval მაინც შეამცირე და არა გაზარდე. უფრო მოკლე ინტერვალი უფრო ხშირ, მაგრამ უფრო მცირე პაუზებს ნიშნავს და ზღუდავს იმას, რასაც კარგავ, თუ სერვერი არასუფთად გაჩერდა. ავტომატური შენახვის ინტერვალები კომპრომისს განიხილავს.
ზომა ჯგუფის მიხედვით#
CPU-ს, დისკს და მეხსიერებას ვანილის ან მსუბუქად მოდებული სამყაროსთვის ერთად:
| ჯგუფი | vCPU | RAM | დისკი | შენიშვნები |
|---|---|---|---|---|
| 1-3 მოთამაშე | 1 | 2 GB | 10 GB | ახალი ან პატარა სამყარო |
| 4-6 მოთამაშე | 1.5-2 | 3-4 GB | 15-20 GB | გავრცელებული შემთხვევა |
| 7-10 მოთამაშე | 2-2.5 | 4-6 GB | 20-30 GB | ზრდასრული სამყარო, დიდი ბაზები |
| მოდებული, 10+ მოდი | 2.5-3 | 6-8 GB | 30 GB ან მეტი | დამოკიდებულია მოდებზე |
ეს საწყისი წერტილებია. პატარა ჯგუფმა, რომელიც გასწორებულ მთაზე უზარმაზარ ბაზას აშენებს, შეიძლება შემდეგი მწკრივი მოითხოვოს; დიდ ჯგუფს, რომელიც მშვიდად თამაშობს და ფანტება, შეიძლება არ დასჭირდეს. სწორი გზა ისაა, რომ დაიწყო იმაზე ერთი საფეხურით დაბლა, რისიც გეშინია, ერთი კვირა უყურო გრაფიკებს და მაღლა წახვიდე მხოლოდ მაშინ, როცა რაღაც ნამდვილად ლიმიტზეა. CPU თუ RAM თამაშის სერვერებისთვის და როდის განაახლო გეგმა განმარტავს, როგორ წაიკითხო ეს.
შედარებისთვის, RE:NODE-ის Valheim კიბე Starter-იდან 2 GB-ით, 15 GB დისკითა და 1 vCPU-თი Premium-მდე 8 GB-ით, 50 GB-ითა და 3 vCPU-თი გრძელდება, ყველა NVMe-ზე. საფეხურებს შორის გადასვლა არსებული სერვერის ლიმიტებს ცვლის, ამიტომ სამყარო თავის ადგილას რჩება.
გათვლილი მაგალითი
ავიღოთ ექვსი ადამიანის ჯგუფი, რომელიც ოთხი თვეა ერთსა და იმავე სამყაროში თამაშობს. მათ აქვთ ერთი დიდი მთავარი ბაზა მოსწორებულ ბორცვზე, ორი ფორპოსტი, დაახლოებით ოცი მგლის ფარეხი და რამდენიმე მოდი, რომლებიც ნივთებსა და რეცეპტებს ამატებს, მაგრამ ახალ არსებებს არა. .db დაახლოებით 90 MB-ია.
1 vCPU, 3 GB სერვერზე საღამოები ასე გამოიყურება: CPU ლიმიტთან ახლოსაა, როცა ოთხი ან მეტი ადამიანი მთავარ ბაზაზეა, World saved ხაზი რამდენიმე წამიან პაუზას აჩვენებს და მეხსიერება 3 GB-ის ქვემოთ ტრიალებს. მოთამაშეები ყოველ ნახევარ საათში მოკლე გაყინვას და ბაზაზე rubber-banding-ს აღნიშნავენ, ფორპოსტებზე კი არა.
ამის წაკითხვა: CPU ლიმიტზეა მხოლოდ მაშინ, როცა მოთამაშეები მკვრივ ადგილზე არიან, ანუ დატვირთვა ბაზაა და არა მოთამაშეების რაოდენობა. შენახვის პაუზა გაყინვას ემთხვევა. მეხსიერება ახლოსაა, მაგრამ ლიმიტზე არა. გონივრული ცვლილებები: მეორე ბირთვი (რომელიც შენახვისა და ქსელის thread-ებს ადგილს აძლევს და ბაზის დატვირთვას ლიმიტიდან ხსნის), მგლების ფარეხის რამდენიმემდე შემცირება და მეხსიერების 4 GB-მდე გაზრდა მარაგისთვის. დისკი პრობლემა არ არის: 90 MB და ოთხი backup ნახევარ გიგაბაიტზე ნაკლებია. უფრო დიდი დისკი ვერაფერს შეცვლიდა; უფრო სწრაფი შენახვის პაუზას მხოლოდ ოდნავ შეამცირებდა საცავზე, რომელიც უკვე სწრაფია.
ათ მოთამაშეზე მეტი და მოდი სურათს ცვლის: მეტი მოთამაშე ნიშნავს მეტ სინქრონიზებულ ობიექტს და მეტ გასაგზავნ მონაცემს, თამაში კი ამისთვის არ არის მორგებული. მოთამაშეების ლიმიტი და დიდი ჯგუფები განმარტავს, რა ჯდება ეს.
აპარატურის ლიმიტის გარჩევა ყველაფრისგან დანარჩენისგან#
განახლებამდე შეამოწმე, რომ სერვერი ნამდვილად შეფერხების წყაროა:
- უყურე CPU გრაფიკს ლაგის დროს. თუ გეგმის ლიმიტზე დგას, სერვერს CPU აკლია. თუ გაცილებით დაბლაა, CPU-ს დამატება არ დაგეხმარება.
- შეამოწმე, ვინ არის ლაგთან ახლოს. თუ ჩაკვრა ერთ მოთამაშეს მიჰყვება, სავარაუდოდ მისი მანქანა ან კავშირი ფლობს ზონას. სთხოვე გაიაროს შორს ან ხელახლა შევიდეს და ნახე, გაიწმინდა თუ არა.
- შეამოწმე შენახვის დრო. თუ გაყინვა რეგულარულია და შენახვის ინტერვალს ემთხვევა, ნახე
World savedდრო და საცავი. - შეამოწმე მეხსიერება. მეხსიერების ლიმიტთან მყოფმა სერვერმა შეიძლება გაჩერებამდე ცუდად იმუშაოს. CPU-სთან ერთად მეხსიერების გრაფიკიც ნახე.
- შეამოწმე ქსელი. დაბალი CPU-ს და სტაბილური შენახვების დროს rubber-banding ხშირად დაყოვნება ან პაკეტების დაკარგვაა. Valheim-ის სერვერის წარმადობა და ლაგი დანარჩენს განიხილავს.
სერვერის დატვირთვის გრაფიკის კითხვა მოკლე გზამკვლევია იმ ფორმებისთვის, რომლებსაც ნახავ.
FAQ#
რამდენი CPU ბირთვი სჭირდება Valheim-ის სერვერს?
ერთი სრული ბირთვი პატარა ვანილის სამყაროს ატარებს; ორი ბირთვი კომფორტული რიცხვია ათკაციანი სრული ჯგუფისთვის, ძირითადად იმისთვის, რომ შენახვა და ქსელი მთავარ ციკლს არ ეჯიბრებოდეს. ორზე მეტი მხოლოდ მძიმედ მოდებულ სერვერებს ეხმარება.
Valheim-ის სერვერი CPU-ზეა მძიმე თუ RAM-ზე?
არც ერთზე, უფრო ახალი გადარჩენის თამაშების სტანდარტით. ის ზომიერ მეხსიერებას იყენებს, რომელიც სამყაროსთან ერთად იზრდება, და მისი CPU დატვირთვა ძირითადად ერთი thread-ია. სამყაროს სიმულაციის უმეტესობა მოთამაშეების მანქანებზე სრულდება.
აუმჯობესებს NVMe დისკი Valheim-ის მუშაობას?
ის შენახვებს, გაშვებებს და backup-ებს აჩქარებს, რაც სამყაროს შენახვისას გაყინვას ამოკლებს. შუალედში კადრების სიხშირეს არ ცვლის. დიდი განსხვავება მყარი დისკიდან ნებისმიერ SSD-ზე გადასვლაა.
რა ზომის ხდება Valheim-ის სამყაროს ფაილი?
ახალი სამყარო რამდენიმე მეგაბაიტია. თვეების განმავლობაში ჯგუფის მიერ ნათამაშები სამყარო ჩვეულებრივ 20-150 MB-ს შორისაა, შესწავლის, მშენებლობისა და რელიეფის ცვლილების მიხედვით. კონტენტის დამამატებელმა მოდებმა შეიძლება მეტიც გამოიწვიოს.
რატომ ლაგავს ჩემი Valheim სერვერი, თუმცა CPU გამოყენება დაბალია?
იმიტომ, რომ სიმულაციის დიდ ნაწილს ის მოთამაშე აკეთებს, ვინც თითოეულ ზონას ფლობს. სუსტი კომპიუტერის ან ცუდი კავშირის მქონე მოთამაშე მის გარშემო ტერიტორიას ყველასთვის ალაგებს, სერვერი რაოდენ უქმადაც არ უნდა იყოს. დაყოვნება და პაკეტების დაკარგვაც დაბალი CPU-ს დროს ლაგად ჩანს.


