Server 101'inizi Hızlandırma (Windows)

mcsbey

Paylaşım Ekibi
Katılım
2 Ağu 2019
Mesajlar
104
Tepki puanı
1
Yaş
29

İtibar Puanı:

Server 101'inizi Hızlandırma (Windows)
Kurmak
Bu 101'de kullanılan araçlar
  • UIforETW için , bu profilleyiciyi sunucunun izini oluşturmak için kullanacağız.
  • mysql-async 3.0.7 veya daha yenisi. İçinde set mysql_slow_query_warning 50çizgi ile çalışanserver.cfg
  • HeidiSQL , çünkü görsel olarak veritabanı yapılarını geliştirmemiz için tasarlandı.
Bağlantılar
  • Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.
    Bu, Windows Performans ve Değerlendirme Araç Takımı'nı yüklemelidir.
  • Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.
    , sadece veritabanınızı görsel olarak temsil etmek için.
Aksama kaynağını bulmak
Bu bölümde hangi kaynakların sunucunuzu etkilediğini tespit edeceğiz. Kendinizi yazdırabilirseniz, muhtemelen nedenini bulabileceksiniz.
Ancak, kendiniz komut yazamıyorsanız, FiveM forumlarında Github'a veya ilgili konuya bir sorun göndermenizi, kaynağın sunucuyu uzun bir hesaplama döngüsünde tuttuğunu belirtmek ve hangi koşulların gerçekleştiğini açıklamak, örneğin tam sunucu, tam veritabanı, vs.
Kayıt aksaklıkları
Şimdi bunun için sunucunuz çalışıyor ve belirli bir kaynaktaki bir onay süresi bir sunucu onay kutusundan (50ms) daha uzun olduğu için sunucunuzun donmadığını gösteren kötü aksaklık uyarıları görüyorsunuz. Bu tamamen doğru değil, ancak neden olduğunu anlamanıza izin veriyor.
Aksaklıkları kaydetmek için UIforETW.exeher şeyi varsayılan ayarlara bırakırız.
Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.

Start TracingBoş zamanınızda düğmeye basın, uzun izlerin daha fazla disk alanı harcadığını unutmayın, bu nedenle sadece aksamaları deneyin. Düzgün bir yapılandırma izlemenin boyutunun küçültülmesine yardımcı olur, ancak bu, bu gönderinin bir parçası değil.
Sunucu yakalandıktan sonra, tuşuna basabilir Save Traceve İz kaydedildiğinde İzlemeyi İptal Etmeniz gerekir.
Sol alt kısımdaki İze Sağ tıklayarak ve ardından ize tıklayarak izlemeyi açarsınız Open it in 10.0 WPA. Öyleyse, bu şekilde korkutucu görünmelidir:
Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.

FXServer.exe'yi orada, Sağlayıcı Adıyla göreceksiniz Multi-Main. Biz Görev Adı ok şimdi tıklayın >BlockFXServer.exe için genişletmek için, ve sonra tekrar genişletmek >Endiçinde Opcode Namekolona.
Şimdi iki önemli sütunu görebilirsiniz Description (Field 1)ve Duration (ms) (Field 3). Duration (ms) (Field 3)Aşağı okla gösterilen en iyi azalan sıralamaya göre sıralayabilirsiniz .
Şimdi yukarı kaydırın ve hangi kaynakların sıkıntıya neden olduğunu görmelisiniz, zira Duration (ms)sunucunun çarptığı zamana kabaca karşılık gelir. Sorunsuz bir sunucu için örnek resme bakın.
Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.

Görünüşe göre benim için en uzun süren fivem-map-hipster tickşey 0.09ms ile, yani sunucuya bile hitap etmeye başlayacak hiçbir şey yoktu.
50ms'nin üzerindeki herhangi bir şey, ilgili kaynakların dişlerine rapor edilmeli ya da aksaklığın nasıl gerçekleştiğinin açıklamasını içeren, örneğin tam sunucu gibi, github ile ilgili olarak yayınlanmalıdır.
Senaryo yazarken yeterince iyiysen, kodun hangi bölümünün kendini o kaynaktan bağladığını öğrenebilirsin. Bunu yaparsanız, kaynağın konusundaki insanları FiveM forumlarında veya github'da veya her ikisinde de bilgilendirmeyi unutmayın.
MySQL sorgularınızı hızlandırın
Şimdi sunucunuzu yavaşlatabilecek başka bir sorun MySQL tablolarını veya bu tablolara hatalı yazılmış sorguları veya her ikisini de kötü bir şekilde dizine alıyor. Bu yüzden Slow Query Warnings, mysql-async 3.0.7'yi tanıttım.
HeidiSQL'deki yavaş sorgulardan birkaç örnek ve tablolarına bir göz atalım.
Örnekler
[MySQL] [Slow Query Warning] [es_extended] [794ms] UPDATE user_inventory SET count = 46 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘bread’
[MySQL] [Slow Query Warning] [es_extended] [939ms] UPDATE user_inventory SET count = 50 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘opium_pooch’
[MySQL] [Slow Query Warning] [es_extended] [1198ms] UPDATE user_inventory SET count = 0 WHERE identifier = ‘steam:11000010e6axxxx’ AND item = ‘opium’

Bunlar tek satırlı güncelleme bildirimleridir ve 1 saniye sürmemelidir. HeidiSQL'deki tabloya bir göz atalım.
Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.

Burada sadece bir birincil anahtar olduğunu görüyoruz. Ama identifierve itembir olan WHEREçok orada bir dizin olmalıdır böylece maddesi. HeidiSQL'de dizini, uygun sütunları satır olarak seçerek, sağ tıklatarak, New Indexsonra da yeşille tıklatarak ekleyeceğiz KEY. Bu, sütun adlarının yanında yeşil bir tuş simgesi açmalıdır.
Değerli ziyaretçimiz lütfen, içeriği görüntüleyebilmek için Giriş yap veya Kayıt ol anlayışınız için teşekkürler.

Tebrikler, sorgu şimdi daha hızlı.
Sorguları optimize ederken çok fazla köşe ve vinç var, ancak bu bir 101 olduğundan, eksik Dizinler ekleyerek bırakacağım.
FiveM forumlarındaki veya Github'daki ilgili kaynak konusundaki eksikliklerini veya her ikisini de bildirmeyi unutmayın.
Not: Bu yazı, yanlış olanı nasıl bulacağınızla ilgili büyük bir ipucu gibi bazı şeyleri nasıl düzelteceğiniz konusunda ayrıntılı bir rehber değildir.
 

Users Who Are Viewing This Konu (Users: 0, Guests: 1)