Kodları lütfen aşağıdaki butonları kullanarak renklendirin. Örnek: <php> echo "Selam Dünya"; </php>
Yardım
karakter kaldı

Java Server - PHP ve MySQL

Merhaba arkadaşlar birkaç sorum olacak gerçekten işi bilenler cevap verirse sevinirim.

Bizim bir online oyunumuz var Java Server ile PHPye response edip veritabanına kayıt yaptırıyoruz. Ciddi bi oyun ve şuan online sayısı 100 ama ilerde daha çok olacak. Şuanda bile çok ciddi problemler yaşıyoruz ve en önemli şey aslında buda mysql serveri. Şimdi sorularıma geçeyim

1- Java içinden mysql insert mi daha iyi yoksa response yöntemiyle api oluşturup php'den kayıt yapmak mı? (Biz response yapıyoruz çünkü java server'da thead oluşturup server'i yormak istemiyoruz. Çünkü bir sorguda gecikme olursa arka arkaya binecek sorgular ve buda server'in donmasına neden olacak. Oyunu okey oyunu olarak düşünebilirsiniz)

2- Mysql bu işin içinden çıkabilir mi? (Sorgu sayımız yani insert sayımız saniyede 100)

3- Mysql sürekli donuyor (Yani bu ana sunucumuz. Java serverları farklı yerden çalışıyor. Java serverları okey oyunclarındaki istanbul bursa sunucuları gibi düşünebilirsiniz)

4- Türkiye sunucu firmalarıyla çalışmıyoruz. Çalışsak daha mı sağlıklı olur? (Çalışmamazın sebebi tamamen güvendir. Yani yazılımı çalma ihtimallerine karşı veya veritabanı çalma)

5- Eğer türkiyede bu işin üstünden gelecek bir firma var derseniz firma adını verir misiniz?

6- Mysql yerine MongoDB veya Couchbase gibi veritabanlarının avantajını yazarmısınız Aslında avantajlarını biliyoruz. Ama insert süreleri daha mı hızlı açıkçası test edemedik. Veya mysql bunun altından kalkabilir mi?

Bu kadar. Yardımlarınız için şimdiden teşekkür ederim.
+0
-0
Cevaba KatılıyorumKatılmıyorum
Cevap Yaz Yorum Yaz Arşivime Ekle Takip Et

Cevaplar

  • newcoder adlı üyenin fotoğrafı
    9 yıl önce yazılmış
    2 cevap - 0 soru
    1- response yöntemi daha mantıklı.ama çoğu java appilet uygulamasının fetch değerleri düşüktür.bu yüzden sorun yaşayabilirsiniz

    2- saniyede 100 gayet normal.bunları aktif değişken mantığıyla halledebilirsiniz

    3- donmuyor deseydin zaten ilginç olurdu.server fetch'leri artırılmalı

    4- türkiye yada avrupa farketmez önemli olan database verimliliği.

    5- java servery incl. şirketini tavsiye ederim

    6- Couchbase ve mongo veritabanları asset mantığıyla çalıştığı için ikisini de öneririm ama değişken atamalarında kısa süreli veri kayıpları yaşanabiliyor.

    kolay gelsin.
    • halee_b adlı üyenin fotoğrafı halee_b
      6- kısa süreli veri kaybı derken bu kısmı anlayamadım ?

      5- java servery incl? bu şirket türk mü? ben internette bulamadım. bana ulaşabileceğim bi link verirsen çok sevinirim.

      cevabın için teşekkür ederim bu arada..
      9 yıl önce yazılmış
    • siyahbeyaz adlı üyenin fotoğrafı siyahbeyaz
      java icin sunu soyliyebilirim anlık islevler icin bazı server ayarları sart. cunku javanın calısma mantıgı su yonde sen bı ıslem yaptıgında o ılk build eder build etmesi zamandan yerder... maximum ayarlarda olması sızın ıcın gayet guzel. java ile beraber oracle kullanımı daha cok tavsiye ederdim ikisi arasinda iyi anlasırlar :) az cogumuz bunu biliyoruz.

      mysql kendi alanında kaliteli bir veritabanıdır. saniyede 56 bin satır her bir satiri 17 sütündan olusan excel dosyadaki verileri mysqle (php ile) aktarıyordum.. suan bu sıstemı hala kullanmaktayım.. şimdi işin can alıcı kısmına gelelim siz burda bir ayrıntıyı atlamışsınız
      üyeler mysql veritabanını kulllanıorsa max_limit_connection ozelligi var.. 100 ile 250 standartır.. egerki loglama ve online kullanıcıları gosterıp anlık ve buna göre islemler yapıorsanız connection (baglanti) limitine yaklastıkca mysql kasılmaya baslar.. kendim bir sayac servisi yapmıstım ve bu benım basıma gelmisti 500 onlineye varınca hatalar alıordum... sizin yazılımcı arkadaslarla irtibata gecip mysql icin 10 tane kullanıcı adı ve sifre hesabı acsınlar ( ve bunları veritabanına baglasınlar) kod kisminda bir array (dizi) olusturup bu k.adi sifreleri ekletip her kullanıcı ıcın dizideki k.adi ve sifrelerden biri ile veritabanına baglansın.. bu sekilde test edip neticeyi bildirirmisiniz?
      ornek bi php kodu vereyim ben..
      baglanti ile ilgli..
      $arrayKadi[0] ="dbuser0";
      $arraySifre[0]="dbpass0";
      
      $arrayKadi[1] ="dbuser0132";
      $arraySifre[1]="dbpass356";
      
      $arrayKadi[2] ="dbuser341";
      $arraySifre[2]="dbpass53";
      
      $arrayKadi[3] ="dbuser3";
      $arraySifre[3]="dbpass35";
      $arrayKadi[4] ="dbuser32";
      $arraySifre[4]="dbpassxx4";
      
      $rastgeleSAyi = rand(0,4); // 0 ile 4 arasi rastgele bir sayi istiyorum..
      
      $db_userName=$arrayKadi[$rastgeleSayi];
      $db_Password=$arrayKSifre[$rastgeleSayi];
      $db_Name = "VeritabaninizinAdi";
      
      $baglan =   mysql_connect('localhost', $db_userName,$db_Password);
        mysql_select_db($db_name,$baglan); 
      
      
      9 yıl önce yazılmış
    • halee_b adlı üyenin fotoğrafı halee_b
      max_limit_connection'ı atlamadık. Bu zaten online bir oyun. Böyle bir hatayı atlıyamayız. Ayrıca oracle gibi hantal bir sistemi kullanamayız. Cevabınız için teşekkür ederim.
      9 yıl önce yazılmış