Makale Başlıkları
- Discord botu neden 7/24 çalışan bir sunucu ister?
- Paylaşımlı hosting Discord botu için uygun mu?
- Barındırma seçenekleri karşılaştırması
- Bir Discord botu ne kadar kaynak tüketir?
- Node.js mi Python mı? discord.js ve discord.py
- Adım adım: Discord botunu sunucuda yayına alma
- PM2 ve systemd: botu ölümsüz yapmak
- Log izleme ve bot sağlığı
- Güvenlik: bot token’ı her şeydir
- Maliyet ve ücretsiz seçeneklerin gerçek bedeli
- Türkiye lokasyonunun botunuza katkısı
- Sıkça Sorulan Sorular
Kısaca
Discord botu, kullanıcıların komutlarına anında yanıt verebilmesi için kesintisiz açık kalan bir sunucuya ihtiyaç duyar. Kendi bilgisayarınızda çalıştırdığınız bot, siz makineyi kapattığınız anda çevrimdışı olur. Bu yüzden botlar; tam kök yetkisi veren, arka planda sürekli işlem çalıştırmaya izin veren bir bulut sunucu veya VDS üzerinde barındırılır.
- Paylaşımlı hosting, uzun süreli arka plan işlemi çalıştırmaya genelde izin vermediği için çoğu Discord botu senaryosuna uygun değildir.
- Küçük ve orta ölçekli bir bot için 1 vCPU ve 1 GB RAM çoğu zaman fazlasıyla yeterlidir.
- Bot, discord.js (Node.js) veya discord.py (Python) ile yazılır; sunucuda PM2 ya da systemd ile kalıcı hâle getirilir.
- Ücretsiz barındırma servisleri uyku moduna geçme, kaynak kısıtı ve ani kapanma riskleri taşır.
- Bot token’ı asla koda gömülmez; .env dosyasında saklanır ve sürüm kontrolünün dışında tutulur.
Discord bot hosting, bir Discord botunun kodunu 7/24 açık kalan uzak bir sunucuda çalıştırma işlemidir. Bot, Discord sunucularıyla sürekli bir bağlantı (WebSocket oturumu) kurar ve gelen olaylara anında yanıt verir. Bu bağlantı koptuğunda bot çevrimdışı görünür; bu nedenle barındırma ortamının kesintisiz çalışması, arka plan işlemine ve otomatik yeniden başlatmaya izin vermesi gerekir.
Discord botu neden 7/24 çalışan bir sunucu ister?
Klasik bir web sitesinden farklı olarak Discord botu, “istek geldiğinde uyanan” bir yapı değildir. Bot uygulaması açıldığı anda Discord’un ağ geçidine bağlanır ve bu bağlantıyı canlı tutar. Sunucunuzdaki bir kullanıcı komut yazdığında, mesaj bu açık bağlantı üzerinden botunuza akar. Yani bot, sürekli dinleyen bir uzun ömürlü işlemdir.
Bunun pratik sonucu şudur: bot işlemi durursa bot anında çevrimdışı olur. Kendi bilgisayarınızda geliştirme yaparken bu sorun değildir, ancak topluluğunuzun kullandığı gerçek bir bot için kabul edilemez. Moderasyon, kayıt, bilet sistemi veya müzik gibi görevleri üstlenen bir bot dakikalarca düşerse topluluk akışı bozulur. Bu yüzden barındırma tarafında yüksek çalışma süresi ve altyapı istikrarı teknik bir detay değil, doğrudan kullanıcı deneyimi meselesidir.
Paylaşımlı hosting Discord botu için uygun mu?
Dürüst cevap: çoğu durumda hayır. Paylaşımlı hosting, aynı fiziksel sunucuda yüzlerce web sitesinin barındırıldığı bir modeldir ve bu modelin tüm dengesi kısa ömürlü istekler üzerine kuruludur. Bir ziyaretçi sayfayı ister, PHP betiği çalışır, yanıt döner ve işlem sonlanır. Toplam ömür saniyeler mertebesindedir.
Discord botu ise tam tersini yapar: günlerce kapanmayan bir işlem olarak yaşamak ister. Paylaşımlı ortamlarda bu tarz kalıcı arka plan işlemleri genellikle kısıtlanır veya belirli bir süre sonra otomatik olarak sonlandırılır. Bu, kötü niyetli bir kısıt değil; komşu siteleri korumak için gereken bir kuraldır. Tek bir kaçak işlem, sunucudaki herkesin performansını düşürebilir.
Buna ek olarak paylaşımlı planlarda genellikle kök (root) erişimi yoktur. Node.js sürümünü istediğiniz gibi seçemez, sistem servisi tanımlayamaz, PM2’yi açılışta otomatik başlatacak şekilde kuramazsınız. Botunuzun ihtiyaç duyduğu kontrol seviyesi, paylaşımlı web hosting paketlerinin üzerindedir. Yalnızca botun web paneli gibi HTTP tabanlı yardımcı bir bileşeni barındıracaksanız paylaşımlı hosting iş görebilir; fakat botun kalbi olan sürekli bağlantı için doğru adres bir sunucudur.
Barındırma seçenekleri karşılaştırması
Aşağıdaki tablo, bir Discord botunu barındırırken önünüze çıkan üç ana yolu karşılaştırıyor.
| Kriter | Paylaşımlı hosting | VDS / Bulut sunucu | Ücretsiz bot barındırma servisleri |
|---|---|---|---|
| 7/24 kesintisiz çalışma | Genelde hayır; uzun ömürlü işlemler kısıtlanır veya sonlandırılır | Evet; işlem siz durdurmadıkça çalışır | Belirsiz; çoğu ücretsiz katmanda uyku moduna geçme veya süre sınırı vardır |
| Kök (root) yetkisi | Yok | Tam kök yetkisi; istediğiniz sürümü ve servisi kurarsınız | Yok; yalnızca sağlayıcının izin verdiği çalışma ortamı |
| Kaynak garantisi | Komşu sitelerle paylaşılır | Tahsisli vCPU ve RAM | Sıkı kısıtlar; yoğunlukta önceliğiniz düşüktür |
| Process manager (PM2 / systemd) | Kurulamaz veya kalıcı olmaz | Serbestçe kurulur; sunucu açılışında otomatik başlar | Sağlayıcının kendi mekanizması; üzerinde kontrolünüz yok |
| Log ve izleme erişimi | Sınırlı | Tam; dosya sistemi ve sistem günlüklerine doğrudan erişim | Genelde basit bir konsol çıktısı; geçmiş log saklanmayabilir |
| Maliyet | Düşük, ancak amaca uygun değil | Aylık düşük bütçeyle başlar; ölçeklenebilir | Sıfır; bedeli kararlılık ve kontrolden ödenir |
| Kime uygun? | Botun web paneli gibi yardımcı bileşenlerine | Ciddi ve kalıcı her bot projesine | Sadece deneme, öğrenme ve kısa testlere |
Tablonun özeti net: botunuzun gerçekten yaşamasını istiyorsanız, tam kontrol veren bir bulut sunucu ya da VDS en sağlıklı seçimdir. Trafiği büyüyen ve birden fazla Discord sunucusuna hizmet veren botlar için fiziksel sunucu seviyesine kadar çıkan bir yol haritası da mevcuttur.
Bir Discord botu ne kadar kaynak tüketir?
İyi haber: Discord botları genellikle kaynak canavarı değildir. Çoğu bot, ağdan gelen olayları bekleyip kısa işlemler yapar ve zamanının büyük kısmını boşta geçirir.
- Küçük bot (birkaç Discord sunucusu, temel komutlar): 1 vCPU ve 512 MB – 1 GB RAM rahatlıkla yeter. Node.js süreci tipik olarak 80-150 MB bellek kullanır.
- Orta ölçek (onlarca sunucu, veritabanı, zamanlanmış görevler): 1-2 vCPU ve 2 GB RAM. Botun yanında bir veritabanı da çalıştıracaksanız bellek payını buna göre artırın.
- Büyük bot (yüzlerce sunucu, sharding): 2-4 vCPU ve 4 GB üzeri RAM. Discord, belirli bir sunucu sayısını aşan botlar için sharding yani bağlantıyı parçalara bölmeyi zorunlu tutar; her parça ek bellek demektir.
- Müzik botları: İstisnadır. Ses akışı kodlaması CPU’yu ciddi biçimde yorar ve bant genişliği tüketir; bu tür botlar için baştan daha güçlü bir yapılandırma seçin.
Diskte mütevazı bir bot için birkaç GB yeterlidir. Asıl dikkat edilecek nokta, log dosyalarının zamanla şişip diski doldurmasıdır. Projeniz büyüdükçe aynı sunucuyu dikey olarak güçlendirmek, büyüyen altyapı yaklaşımıyla oldukça basittir.
Node.js mi Python mı? discord.js ve discord.py
discord.js (Node.js): Discord bot dünyasının en yaygın kütüphanesidir. Olay tabanlı ve asenkron yapısı botların doğasına çok iyi oturur; dokümantasyonu geniş, topluluğu kalabalıktır. Sunucu tarafında yalnızca güncel bir Node.js sürümü kurmanız yeterlidir. Node.js tabanlı projeler için hazır bir ortam istiyorsanız Node.js hosting tarafına göz atabilir, kurulum ve yayına alma adımları için Node.js kurulumu ve uygulama deploy etme yazımızı okuyabilirsiniz.
discord.py (Python): Python bilenler için okunabilir ve hızlı yazılan bir seçenektir. Veri işleme veya yapay zekâ entegrasyonu içeren botlarda Python’un ekosistemi büyük avantaj sağlar. Sunucuda sanal ortam (venv) kurup bağımlılıkları izole etmeniz önerilir.
Barındırma açısından ikisi de benzer gereksinimlere sahiptir; seçim büyük ölçüde hangi dilde rahat olduğunuza bağlıdır. Discord platformunun kendisi ve temel kavramları için Discord nedir? yazımız iyi bir başlangıç noktasıdır.
Adım adım: Discord botunu sunucuda yayına alma
- Sunucuya SSH ile bağlanın. Bulut sunucunuz hazır olduğunda size bir IP adresi ve kök parolası verilir. Terminalden ssh root@sunucu-ip-adresi komutuyla bağlanın. İlk iş olarak sistem paketlerini güncelleyin ve bot için yetkisiz bir kullanıcı oluşturun; botu root olarak çalıştırmak güvenli değildir.
- Çalışma ortamını kurun. Node.js kullanacaksanız güncel bir LTS sürümünü kurun. Python tarafında Python 3 ve pip yeterlidir; ardından proje dizininde bir sanal ortam oluşturun. Kurulumu node -v veya python3 –version ile doğrulayın.
- Bot kodunu sunucuya taşıyın. En temiz yöntem projeyi bir Git deposundan çekmektir; alternatif olarak SFTP kullanabilirsiniz. Ardından bağımlılıkları kurun: Node.js için npm install, Python için pip install -r requirements.txt.
- Token’ı ortam değişkenine alın. Proje kökünde bir .env dosyası oluşturup bot token’ınızı buraya yazın ve kod tarafında bu dosyadan okuyun. .env dosyasını kesinlikle sürüm kontrolüne eklemeyin.
- Botu bir kez elle çalıştırıp test edin. Kalıcı hâle getirmeden önce botun hatasız açıldığını, Discord’a bağlandığını ve komutlara yanıt verdiğini görün; sorun varsa hata çıktısını doğrudan ekranda yakalarsınız.
- PM2 veya systemd ile kalıcı çalıştırın. Terminali kapattığınızda botun ölmemesi ve sunucu yeniden başladığında kendiliğinden ayağa kalkması için bir process manager şarttır.
- Log ve izleme kurun. Botun çıktılarını dosyaya yazdırın, logları döndürün (rotate) ve bot çevrimdışı kaldığında haberdar olacağınız basit bir kontrol ekleyin.
- Güvenliği sıkılaştırın. Güvenlik duvarını yapılandırın, SSH için parola yerine anahtar kullanın ve gereksiz portları kapatın.
PM2 ve systemd: botu ölümsüz yapmak
Bir Discord botunun en büyük düşmanı, fark edilmeyen çökmelerdir. Bir API hatası, beklenmedik bir istisna veya geçici bir ağ kopması botu düşürebilir. İşte process manager burada devreye girer: işlemi izler, çöktüğünde otomatik olarak yeniden başlatır.
PM2, Node.js dünyasının standart aracıdır. Botu PM2 ile başlattığınızda uygulama arka plana alınır, çıktısı log dosyalarına yazılır ve çökme durumunda saniyeler içinde yeniden ayağa kaldırılır. startup özelliği ile sunucu yeniden başladığında botun kendiliğinden çalışmasını sağlarsınız. Ayrıntı için PM2 nedir? yazımıza bakabilirsiniz.
systemd, Linux’un yerleşik servis yöneticisidir ve dilden bağımsız çalışır; Python botları için en doğal seçimdir. Botunuz için bir servis birimi (unit) dosyası tanımlar, Restart=always yönergesiyle otomatik yeniden başlatmayı açar ve servisi etkinleştirirsiniz.
Hangisini seçerseniz seçin, iki ayarı mutlaka yapılandırın: sunucu açılışında otomatik başlatma ve çökme sonrası yeniden deneme. Bu ikisi olmadan “7/24 çalışan bot” iddiası havada kalır.
Log izleme ve bot sağlığı
Bot çevrimdışı olduğunda bunu topluluğunuzdan öğrenmek istemezsiniz. Basit ama etkili bir izleme düzeni kurun:
- Log dosyalarını döndürün. PM2’nin log döndürme modülü veya Linux’un logrotate aracı, logların diski doldurmasını engeller. Dolu bir disk, botu sessizce durduran en yaygın sebeplerden biridir.
- Anlamlı log yazın. Botun başlatıldığı, Discord’a bağlandığı ve hata aldığı anları zaman damgasıyla kaydedin. “Neden düştü?” sorusunun cevabı buradadır.
- Kaynak kullanımını izleyin. Bellek sızıntısı olan bir bot, günler içinde RAM’i tüketip sistem tarafından sonlandırılabilir; bellek grafiğinin sürekli yükselmesi bu sorunun işaretidir.
- Dışarıdan kontrol edin. Botun çevrimiçi durumunu düzenli aralıklarla sorgulayan basit bir sağlık kontrolü ekleyin.
Güvenlik: bot token’ı her şeydir
Discord bot token’ı, botunuzun kimliğidir. Token’ı ele geçiren biri botunuzu tamamen devralabilir; mesaj gönderebilir, üyeleri atabilir, kanalları silebilir. Bu yüzden token güvenliği isteğe bağlı değildir.
- Token’ı asla kaynak koduna gömmeyin. .env dosyasında veya sistem ortam değişkeninde tutun.
- .env dosyasını .gitignore içine ekleyin. Halka açık bir depoya sızan token dakikalar içinde taranıp kötüye kullanılabilir.
- Token dosyasının izinlerini kısıtlayın; yalnızca botu çalıştıran kullanıcı okuyabilsin.
- Token’ın sızdığından şüpheleniyorsanız Discord geliştirici panelinden derhal yenileyin.
- Botu root olarak değil, yalnızca kendi dizinine erişebilen ayrı bir sistem kullanıcısıyla çalıştırın.
- Bota yalnızca ihtiyaç duyduğu yetkileri verin. Her bot “Yönetici” yetkisine muhtaç değildir.
Maliyet ve ücretsiz seçeneklerin gerçek bedeli
Bir Discord botunu barındırmanın maliyeti çoğu kişinin sandığından düşüktür. Küçük bir bulut sunucu, bir kahve fiyatına yakın aylık bir bütçeyle çalışır ve karşılığında tam kontrol, tahsisli kaynak ve kesintisiz çalışma sunar.
Ücretsiz bot barındırma servisleri ise cazip görünür ama bedelini başka yerden ödetir:
- Uyku moduna geçme: Birçok ücretsiz katman, hareketsizlik sonrası uygulamayı uyutur. Bot uyuduğunda Discord bağlantısı kopar ve bot çevrimdışı görünür.
- Ani kapanma: Ücretsiz katmanlar sıkça daraltılır veya kaldırılır; botunuzun kaderi tek bir duyuruya bağlı kalır.
- Sıkı kaynak kısıtları: CPU süresi, bellek ve çalışma süresi sınırları yüzünden bot yoğun anlarda yavaşlar veya durur.
- Kalıcı depolama sorunu: Birçok ücretsiz ortamda dosya sistemi geçicidir; yeniden başlatmada verileriniz silinir.
- Sınırlı görünürlük: Log geçmişi ve hata ayıklama imkânı kısıtlıdır; sorun çıktığında elinizde veri olmaz.
Ücretsiz seçenekler öğrenme ve prototip aşaması için makul. Ancak topluluğunuzun güvendiği bir bot söz konusuysa kararlılık pazarlık konusu olmamalıdır.
Türkiye lokasyonunun botunuza katkısı
Bot, Discord’un kendi altyapısına bağlansa da yönettiği yardımcı servisler önemlidir: veritabanı sorguları, web paneli, API çağrıları. Kullanıcılarınız ağırlıklı olarak Türkiye’deyse, Türkiye lokasyonundaki bir sunucu düşük gecikme (ping) sağlar; bu fark özellikle panel ve API etkileşiminde hissedilir. Ayrıca destek süreçlerinin Türkçe yürümesi, sorun anında işleri hızlandırır.
Discord botunuzu kesintisiz çalıştırmaya hazır mısınız?
Alastyr bulut sunucu ve VDS çözümleri, tam kök yetkisi ve tahsisli kaynaklarla botunuzun 7/24 ayakta kalması için tasarlandı. Kendi İzmir veri merkezimizde N+1 yedekli altyapı, %99,9 çalışma süresi taahhüdü, 7/24 Türkçe teknik destek ve 14 gün içinde koşulsuz iade güvencesi sizi bekliyor.
Bulut sunucu planlarını inceleyin veya VDS seçeneklerine göz atın.
Sıkça Sorulan Sorular
Discord botunu paylaşımlı hostingde çalıştırabilir miyim?
Genellikle hayır. Paylaşımlı hosting, kısa ömürlü web istekleri için tasarlanmıştır ve sürekli açık kalan arka plan işlemlerini çoğunlukla kısıtlar veya bir süre sonra sonlandırır. Discord botu ise kesintisiz açık bir bağlantı gerektirir. Bot için tam kök yetkisi veren bir VDS veya bulut sunucu tercih etmelisiniz.
Discord botu için ne kadar RAM ve CPU yeterli?
Birkaç Discord sunucusuna hizmet veren temel bir bot için 1 vCPU ve 1 GB RAM fazlasıyla yeterlidir. Node.js ile yazılmış tipik bir bot 80-150 MB bellek kullanır. Veritabanı da aynı sunucuda çalışacaksa 2 GB RAM önerilir. Ses akışı yapan müzik botları istisnadır ve belirgin biçimde daha fazla CPU ister.
Botumu kendi bilgisayarımda çalıştırsam olmaz mı?
Test ve geliştirme için olur, ancak kalıcı kullanım için uygun değildir. Bilgisayarınızı kapattığınızda, internetiniz kesildiğinde veya sistem güncelleme için yeniden başlattığında bot çevrimdışı olur. Ev bağlantılarında IP değişkenliği ve düşük yükleme hızı da ek sorun yaratır.
PM2 mi systemd mi kullanmalıyım?
Node.js ile yazılmış botlarda PM2 pratik bir seçimdir; log yönetimi ve otomatik yeniden başlatmayı hazır sunar. Python botlarında ise systemd daha doğaldır ve işletim sistemiyle bütünleşiktir. İkisi de doğru yapılandırıldığında aynı sonucu verir: çökme sonrası otomatik kalkış ve sunucu açılışında otomatik başlatma.
Ücretsiz Discord bot barındırma servisleri güvenli mi?
Öğrenme ve prototip aşamasında kullanılabilir, ancak ciddi bir bot için önerilmez. Ücretsiz katmanlar hareketsizlik sonrası uyku moduna geçebilir, kaynak kısıtları uygular, kalıcı depolama sunmayabilir ve politika değişikliğiyle aniden kapanabilir. Botunuzun sürekliliği bu belirsizliğe bağlı kalmamalıdır.
Bot token’ımı nasıl güvende tutarım?
Token’ı asla kaynak koduna yazmayın. Bir .env dosyasında saklayın, bu dosyayı .gitignore ile sürüm kontrolünün dışında tutun ve dosya izinlerini yalnızca botu çalıştıran kullanıcıyla sınırlayın. Token’ın sızdığından şüphelenirseniz Discord geliştirici panelinden hemen yenileyin.
Discord botu hangi dilde yazılmalı?
En yaygın iki seçenek Node.js için discord.js ve Python için discord.py kütüphaneleridir. Barındırma açısından ikisi de benzer gereksinimlere sahiptir; seçim büyük ölçüde hangi dilde rahat olduğunuza bağlıdır. Veri işleme ağırlıklı botlarda Python, yüksek eşzamanlı olay akışında Node.js öne çıkar.
Botum sık sık çevrimdışı oluyor, sebebi ne olabilir?
En sık nedenler şunlardır: process manager kullanılmadığı için çökme sonrası botun yeniden başlamaması, log dosyalarının diski doldurması, bellek sızıntısı yüzünden işlemin sistem tarafından sonlandırılması ve kararsız bir barındırma ortamı. Logları inceleyerek çökme anındaki hatayı bulmak ilk adımdır.
Botum büyürse sunucuyu değiştirmem gerekir mi?
Zorunlu değil. Bulut sunucu ve VDS çözümleri dikey olarak büyütülebilir; ihtiyaç arttıkça vCPU ve RAM yükseltilerek aynı yapı üzerinde devam edilebilir. Çok sayıda Discord sunucusuna hizmet veren botlarda sharding ile yükü bölmek ve gerekirse daha güçlü bir sunucuya taşınmak mümkündür.





