Barındırılan özel bir Discord botunun çalışma süresi tamamen arkasındaki altyapıya bağlıdır ve Noxyr'ın Özel Bot özelliğinde bu altyapı, botun için otomatik olarak bir host seçen, her birkaç saniyede bir kontrol eden ve sen hiçbir sunucuya dokunmadan botu taşıyabilen bir barındırma düğümleri kümesidir. Bir token yapıştırırsın; hiçbir şeyi kurmaz, yamalamaz ya da yeniden başlatmazsın.
Bir sunucuyu sen yönetmezsin, Noxyr'ın düğümleri yönetir
Her düğüm, kendisine atanan her özel botu barındıran tek bir süreçtir. Kısa aralıklarla kontrol ederek çalışması gereken botları başlatır, çalışmaması gerekenleri durdurur ve web sitesinin okuyabilmesi için bir heartbeat kaydeder. Altyapının yaptığı, aksi halde bir VPS üzerinde kendin yapmak zorunda kalacağın işin tamamı budur: süreci canlı tutmak, ölüp ölmediğini izlemek ve Discord, senin hatan olmayan bir nedenle bağlantıyı kestiğinde yeniden giriş yapmak.
Kurulum sırasında bir host nasıl seçilir?
Otomatik seçim varsayılandır ve çoğu kişinin bunu seçili bırakması gerekir. Her zaman o anda kapasitesi olan düğüme yönlendirir. Düğümler sabit bir sırayla dolar: bir düğüm tamamen dolmadan bir sonrakine yeni bot gelmez. Yükü her düğüme eşit dağıtıp hepsini yarı dolu bırakmak yerine bu yöntem tercih edilir. Belirli bir hostu elle seçmek de sizi arka planda gerçek ve çalışan bir düğüme yönlendirir: seçtiğin düğüm o anda çevrimdışı ya da dolu olursa, kurulum başarısız olmak yerine mevcut en iyi düğüm kullanılır.
Bir düğümü "dolu" yapan nedir?
Bunu tek bir kontrol değil iki kontrol belirler. Bir düğüm, kendi bot sayısı sınırına ulaştığında yeni bot almayı bırakır. Ayrıca, bir bot daha eklenirse ölçülen bellek kullanımı tavanına yaklaşacaksa da yeni bot almaz. İkinci kontrol gereklidir, çünkü yalnızca bot sayısına bakan bir sınır, yoğun sunucuların sakin sunuculardan bot başına daha fazla bellek kullanmasını hesaba katmaz. Bot sayısına göre yer varmış gibi görünen bir düğüm, bir bot daha güvenle kaldırabilecek olmaktan bellek tükenmesine yakın olabilir. Hangi sınıra önce ulaşılırsa ulaşılsın, yeni kurulumlar otomatik olarak bir sonraki düğüme geçer.
Botunu başka bir hosta taşımak
Özel Bot sayfasındaki Düğümü Değiştir, zaten çalışan bir botu başka bir yere taşır. Her taşıma yeni bir Discord girişidir ve Discord, tek bir botun bunu ne sıklıkla yapabileceğini sınırlar; bu yüzden taşımalar arasında beş dakikalık bir bekleme süresi vardır. Gerçek bir taşıma, yeni düğümde yeniden bağlanırken botu kısa süreliğine yeniden başlatır. Ayarların, biletlerin, kataloğun ve diğer her şeyin ise olduğu gibi kalır, çünkü bunların hepsi süreci hangi düğümün çalıştırdığından bağımsız, ortak veritabanında tutulur.
Bir düğümde sorun olursa ne olur?
Bir botun heartbeat'i eskirse, yani düğüm ondan yanıt almayı bıraktıysa, Noxyr'ın ana botu devreye girip o sunucuyu otomatik olarak yeniden kapsar. Böylece üyeler hiçbir bot yanıt vermeden kalmaz. Düğüm ya da giriş toparlandığında özel bot, bir sonraki kontrolde sunucuyu kendi başına yeniden devralır. Olağan durumda bunun için bir destek talebi gerekmez; bu, botunu ilk kurduğunda çalıştıran aynı kendini onarma döngüsüdür.
Düğümler neden yayılmak yerine sabit bir sırayla dolar?
Yükün her düğüm arasında eşit dağıldığını, bir bu düğümde bir o düğümde olacak şekilde varsaymak kolaydır. Noxyr bilerek tam tersini yapar: bir düğüm tamamen dolar, ancak ondan sonra bir sonraki düğüm yeni bir bot alır. Böylece, mevcut yüke göre aynı anda çalışan düğüm sayısı mümkün olduğunca az tutulur; birkaç düğümü hafif yükle birlikte çalıştırmak yerine. Bu, altta yatan altyapının ne kadar verimli kullanıldığı açısından önemlidir. Botunun davranışına ise hiçbir etkisi yoktur: senkronizasyon döngüsü ve heartbeat, botu hangi düğümün çalıştırdığından bağımsız olarak aynı şekilde işler.
Panodaki sayıların gerçekte ne anlama geldiği
Bir hostta gösterilen ping bir tahmin değil, gerçek bir ölçümdür. Her düğüm periyodik olarak Discord'un kendi gateway uç noktasına bir istek atıp süreyi ölçer ve ortalamayı bildirir. Düğümün çevrimiçi/çevrimdışı durumu, en son ne zaman kontrol ettiğine göre belirlenir. Kısa süredir sessiz kalan bir düğüm, hâlâ iyi olduğu varsayılmak yerine kullanılamaz kabul edilir. Özel botu sessizleşen bir sunucuyu Noxyr'ın ana botunun devralmasını tetikleyen de budur.
Çalışma süresi ve ücretli bir VPS karşılaştırması
Kendi VPS'ini çalıştırmak makine üzerinde tam kontrol sağlar, ama makine çöktüğünde bunu fark etmek de tamamen senin sorumluluğundadır. Barındırılan bir özel bot bu kontrolü, sorunu önce fark etme işini başkasına devretmek karşılığında verir. İkisi de her durumda kesinlikle daha iyi değildir. İki seçenek arasında karar veriyorsan tam karşılaştırma için özel bot ile VPS'te kendi barındırman yazısına bak.
Sık sorulan sorular
Botumun şu anda çevrimiçi olup olmadığını nasıl kontrol ederim? Panodaki Özel Bot sayfası, yalnızca açık olup olmadığını değil, canlı durumu gösterir.
Botum farklı bir düğüme taşındığında ayarlarımı kaybeder miyim? Hayır. Ayarlar, botu hangi düğümün sürecinin çalıştırdığından bağımsız olarak ortak veritabanında tutulur.
Otomatik yerine belirli bir düğümü seçebilir miyim? Evet, ama seçtiğin düğüm o anda dolu ya da çevrimdışı olsa bile sistem her zaman gerçek ve çalışan bir hosta yönlendirir.
Panodaki durum ne sıklıkla yenilenir? Her birkaç saniyede bir. Botunuzdan yanıt almayı bırakan bir düğüm hızla fark edilir; uzun bir gecikmeden sonra değil.
Kesinti herhangi bir şekilde ücretlendiriliyor ya da cezalandırılıyor mu? Hayır. Hiç ödeme söz konusu değil; çalışma süresi sorunları, bot yeniden bağlanırken kısa süreliğine kullanılamaz olmasının ötesinde sana hiçbir maliyet çıkarmaz.
Tam kurulum gereksinimleri Özel Bot dokümanlarında, düğüm seçimi ve Düğümü Değiştir mekaniği ise özel bot barındırma dokümanlarında yer alıyor.