Mysql, mobil oyunumum için yavaş kalıyor
32
●1.874
- 11-11-2023, 10:44:00Kodlarınızı sürüm yükseltmeye uygun bir şekilde güncelleyerek PHP 8.2 versiyonuna geçmenizi kesinlikle öneririm. mysql ve mysqli artık çok eskide kaldı, bunlar yerine pdo kullanmalısınız, hem performans açısından hem güvenlik açısından daha iyi olacaktır. Sorgularınızda kesinlikle * kullanmayın, hangi sütunlara ihtiyacınız varsa sadece onları alın ve mümkün olduğu kadar az sorgu işlemlerinizi halletmeye çalışın. Paylaşımlı hostingler daha yüksek ve cpu verdiklerini söyleyebilirler fakat o kaynakları sadece belirli bir süre kullanabilirsiniz, yani size 2core 2gb verildi diye bütün işlem boyunca o kaynağın tamamını kullanmanıza izin vermezler. Hetzner, OVH veya Türkiyede bir sağlayıcıdan vds alıp onu kullanırsanız daha yüksek performans alabilirsiniz.
- 11-11-2023, 10:56:34Her zaman en güncel PHP ve sunucu yazılımını kullanmaya özen göstermelisiniz. Sürüm yükseltmelerinde çok ciddi hız ve performans farkları olabiliyor. Ayrıca mysql yerine postgresql kullanabilirsiniz. Çok daha performanslıdır ve yapı hemen hemen aynı. Tam emin olmamakla beraber bu tarz projelerde firebase kullanılıyor. Maliyetine bakıp ona da karar verebilirsiniz.
- 11-11-2023, 10:59:10Oyununuzu merak ettim nedense

Contabo'dan "Cloud VPS S" paketini alıp orada barındırabilirsiniz uygulamalarınızı. Fiyat ve performans açısından memnun kalacağınızdan eminim.
Laravel Lumen ile sorgularınızı API'a döküp çok daha optimize işlemler yapabilirsiniz. Yapınızı bilmediğim için bu kadar öneri verebiliyorum. - 11-11-2023, 11:19:21Ben de anlık olarak 2D mmo strateji oyunu geliştirdiğim için bu konu ilgimi çekti.
Size şu fotoyu atayım. Henüz 30 civarı veri var ama yaşanan hızlanma baya dikkat çekici.
Yurt dışı lokasyon VPS sunucum var. Ubuntu kullanıyorum ve mysql için MariaDB kurulu.
Geçen gün mysql ayarlarından cachelemeyi aktifleştirdim.
Aynı sorguda geçen süreyi görebilirsiniz.

109 birim süreden 14 birim süreye düştü geçen sorgu süresi. Ki siz binlerce oyuncu var dediniz, en ufak bir süre düşüşü bile önemli kalıyor sizin için.
Size önerim, öncelikle web hostingde mysql cachesi aktifleştirebiliyorsanız onu açın. Ve ilk fırsatta bir VPS/VDS sunucuya geçin ki her şey size ait olsun.
Mesela benim üstte konsoldan fotoğrafını attığım sunucu 16 GB ram 8 çekirdek 400 gb ssd'li Godaddy'den 2021 Aralık ayında yeni yıl kampanyası diye 2 seneliğine 600 TL karşılığında aldığım bir VPS sunucu. Şu an yenisini alcak olsam aylık birkaç bin TL ödemem gerekecek. Önümüzdeki Aralık sonunda süresi bitiyor. Bu yüzden Contabo'ya geçmeyi düşünüyorum. Size de orayı öneririm. - 11-11-2023, 16:20:35Yorumlarınız için teşekkür ederim. Hostinger'de Cloud Professional paketini kullanıyorum. Php sürümünü artırcam ve mysql yapısını değiştircem. PDO hakkında tam bilgim yok tekrar öğrenmem gerekecek.
Kullandığım sunucu litvanya'da ve açıkcası yurtdışında olmasını tercih ediyorum çünkü yakın zamanda oyunu 30 dan fazla ülkede yayınlamayı düşünüyorum.
Firebase'e gelince iyi güzelde çok işlem olunca fiyat biraz uçuk geliyor.
Mysql yapısındaki * ibarelerini değiştiriyorum gelişme olursa burdan yazarım tekrar.
VDS alınca içine cpanel kurulumunu filan biz mi yapıyoruz? O konuda çok bilgim olmadığı için vds yerine hosting alıyorum. VDS alınca neler yapmam gerekiyor bunları bilsem VDS alırım.
Ben diş hekimiyim ve çocukluktan beri yazılımla uğraşıyorum. Bu işide hobi amaçlı yapıyorum. Oyunum tutunca biraz daha ilgilenmeye karar verdim. - 11-11-2023, 18:32:10Geçirme imkanınız var ise no sql (cassandra, mongodb vs) veritabanları tercih edebilirsiniz. Eğer yavaşlık gerçekten MySQL kaynaklı ise no SQL veritabanlarına geçince ciddi fark görürsünüz
- 11-11-2023, 18:35:16Nasıl konfigre edeceğimi bilmiyorum malesef. Kendim kurunca güvenlik açığı olacakmış gibi hissediyorum.Bora adlı üyeden alıntı: mesajı görüntüle
MongoDB denedim ama unity için fazla örnekleri yok. Ve desteğe kolay kolay ulaşılmıyor.bilalinall adlı üyeden alıntı: mesajı görüntüle

