MaxiGuard Gelişmiş Otomatik Bilgilendirme ve Kurallar Sistemi (MaxiGuard)

kaliteli ihtiyac olan bir paylaşım. Teşekkürler hocam.
 
Teşekkürler
 
Bi inceleyelim şimdiden eline sağlık Üstad.

Kaba taslak incelediğimde, prosedür ilk okuduğunda, diğer geri kalan 6 @step i gerçekleştirmek için 5 dakika delay atıyor ya burada O 5 dakikalık süreçte halen soruguyu yürütüyor halde olmuyor mu ?
Bu da Performans kaybı yaşatmazmı bize ?
 
Thread owner
Bi inceleyelim şimdiden eline sağlık Üstad.

Kaba taslak incelediğimde, prosedür ilk okuduğunda, diğer geri kalan 6 @step i gerçekleştirmek için 5 dakika delay atıyor ya burada O 5 dakikalık süreçte halen soruguyu yürütüyor halde olmuyor mu ?
Bu da Performans kaybı yaşatmazmı bize ?
Teknik olarak evet, WAITFOR DELAY komutu çalıştığı sürece o session (oturum) SQL üzerinde aktif kalmaya devam eder.

Ancak bu durum bir performans kaybı yaratmaz çünkü:

CPU Tüketmez: WAITFOR komutu işlemciyi meşgul etmez, sadece belirtilen süre dolana kadar beklemeye geçer.

Düşük Frekans: Sistem günde sadece 8 kez tetikleniyor. Tek bir thread'in 5-30 dakika boyunca 'beklemede' kalması, modern SQL Server yapıları için hiçbir yük teşkil etmez.

Log Veritabanı: İşlem ana Shard veritabanında değil, Log veritabanında olduğu için oyun içi aksiyonlara (lag vb.) etki etmez.

Yine de 'SQL üzerinde hiçbir session açık kalmasın' dersen, her duyuruyu ayrı birer Schedule satırı olarak eklemek bir alternatif olabilir, ancak bu yöntem (prosedür içi döngü) çok daha pratik ve yönetilebilir bir yöntemdir."
 
Sunucunuzda oyuncuların güvenliğini sağlamak, kuralları hatırlatmak ve sosyal medya adreslerinizi duyurmak için kullanabileceğiniz, tamamen otomatik çalışan bir Notice (Duyuru) Sistemi paylaşıyorum.

Bu sistem, SQL üzerinde bir döngü kurarak belirlediğiniz saatlerde sırasıyla duyuruları geçer.

Sistemin Özellikleri:

  • Veritabanı: SRO_VT_LOG tabanlıdır (Shard'ı yormaz).
  • Zaman Ayarlı: Her duyuru arasında 5 dakika bekler (oyuncuları darlamaz).
  • Döngüsel: Günde 8 kez (3 saatte bir) tüm duyuru paketini yayınlar.
  • Uyumluluk: MaxiGuard Bridge komutlarını kullanır.

1. Adım: Prosedürleri Oluşturun

Aşağıdaki kodu SQL Query penceresine yapıştırıp Execute edin. Bu kod, duyuru içeriklerini ve bekleme süresini yönetir.

*** Gizli metin: alıntı yapılamaz. ***


2. Adım: Zamanlayıcıyı (Schedule) Ayarlayın
Sistemin her 3 saatte bir çalışması için MaxiGuard_User.._Schedule tablosuna aşağıdaki satırları ekleyin. Bu sayede 00:00'dan başlayarak her 3 saatte bir duyuru döngüsü tetiklenir.
*** Gizli metin: alıntı yapılamaz. ***


Önemli Notlar:​

  • Waitfor Delay: Eğer duyuruların daha hızlı geçmesini isterseniz 00:05:00 olan yeri 00:01:00 (1 dakika) yapabilirsiniz.
  • Linkler: Prosedür içerisindeki web sitesi ve sosyal medya linklerini kendi sunucunuza göre düzenlemeyi unutmayın.
  • MaxiGuard: Bu sistem MaxiGuard filter kullanan sunucular için tasarlanmıştır.
İyi çalışmalar, bol oyuncular!
teşekkürler
 
Mükemmel bir paylaşım, bunları oyunculara hatırlatmak güzel fikir.
Üst üste post gönderildiği için tek mesajda birleştirildi:

Teknik olarak evet, WAITFOR DELAY komutu çalıştığı sürece o session (oturum) SQL üzerinde aktif kalmaya devam eder.

Ancak bu durum bir performans kaybı yaratmaz çünkü:

CPU Tüketmez: WAITFOR komutu işlemciyi meşgul etmez, sadece belirtilen süre dolana kadar beklemeye geçer.

Düşük Frekans: Sistem günde sadece 8 kez tetikleniyor. Tek bir thread'in 5-30 dakika boyunca 'beklemede' kalması, modern SQL Server yapıları için hiçbir yük teşkil etmez.

Log Veritabanı: İşlem ana Shard veritabanında değil, Log veritabanında olduğu için oyun içi aksiyonlara (lag vb.) etki etmez.

Yine de 'SQL üzerinde hiçbir session açık kalmasın' dersen, her duyuruyu ayrı birer Schedule satırı olarak eklemek bir alternatif olabilir, ancak bu yöntem (prosedür içi döngü) çok daha pratik ve yönetilebilir bir yöntemdir."
2024 SQL'de wfd'ler artık büyük performans kaybı yaşatmıyor. Bundan yüzlercesi olursa o zaman sorun olur. 2014 express kullanmıyoruz artık. Etkinlikler bile 10 dk wfd ile çalışıyor.
 

Bu konuyu görüntüleyen kullanıcılar

Geri
Üst Alt