Socket cehennemi Java + Network işlerini bilenler bekleniyor :(

Vienicome

Hayalet Avcısı
Mesajlar
2,646
En iyi cevaplar
0
Beğeniler
5,172
Puanları
6,640
Merhabalar son zamanlarda socketlerle uğraşırken multithread çalışma olayının mantığını anladım ama merak ettiğim çok büyük bir şey var :(
Şimdik msdn ve diğer çoğu site diyorki ilk önce bir socket açılır ordan gelen bağlantılar dinlenir bir bağlantı isteği olduğunda o socket bir threade aktarılır o thread işini yaparken ana socket hattı dinlemeye devam eder, buraya kadar iyi güzel hoş ama minecraft 1.000, 2.000, 10.000 kişilik sunucuları çalıştırırken bağlantılar nasıl düzenleniyor yani 5486 online kişi varsa 5486 tane thread açılması lazım yanlışmıyım bu kadar thread nasıl açılabiliyor/tanımlanabiliyor :(
Yani işin kısası yapacağım programda 500 veya daha fazla clientle uğraşmam gerekiyor 500 tane workermı tanımlamak zorundayım ve zorundaysam thread seçimini kolaylaştırabilecek bir öneriniz varmı :(
Ve ek olarak bilginiz yoksa mümkün olduğunca az mesaj atarsanız sevinirim :(
Edit: İstediğiniz gibi hortlatabilirsiniz yeterki yardımcı bir cevap olsun :(
 


Son düzenleme:

Centeglassered

Kızıltaş Madencisi
Mesajlar
579
En iyi cevaplar
0
Beğeniler
268
Puanları
900
Ruh hali
Herhalde her thread katılan kullanıcının bilgisayarında oluşturuluyor ve internet üzerinden bilgi alış-verişi yapılıyor.[DOUBLEPOST=1425998140,1425998036][/DOUBLEPOST]Ayrıca 500 ayrı thread her sistemi kastırır gibi bir düşünce içerisindeyim.
 

bgencacat

Lapis Toplayıcısı
Mesajlar
1,139
En iyi cevaplar
0
Beğeniler
648
Puanları
1,840
Olayı pek anlamadım ama şunu hatırlatmak isterim;
500 kişi tek bir sunucuda olmayacak.
Konuyla alâkalı bir cevap mı bilmiyorum.
 

Ranork

Lapis Toplayıcısı
Emektar Üye
Mesajlar
984
En iyi cevaplar
0
Beğeniler
672
Puanları
1,490
Ruh hali
10k oyunculu sunucular asla tek kanaldan oluşmaz. bungee ile birkaç sunucuya bağlanır he her sunucu farklı socketler üzerinde aktif olur. Birçoğu farklı makinelere bile kuruyor.
 

bgencacat

Lapis Toplayıcısı
Mesajlar
1,139
En iyi cevaplar
0
Beğeniler
648
Puanları
1,840
Hayır olacak. Yalnız her kişi için sunucuda ayrı bir thread oluşturulmayacak.
Demek istediğim şey, hub sunucuda (eğer kurmayı planladığınız buysa) 500 kişi parça parça bölünmeyecek mi? SG, HG, FW vs.
Yani nasıl bir sistem bu tek sunucuda 500 kişi barındırabiliyor?
 

Centeglassered

Kızıltaş Madencisi
Mesajlar
579
En iyi cevaplar
0
Beğeniler
268
Puanları
900
Ruh hali
Demek istediğim şey, hub sunucuda (eğer kurmayı planladığınız buysa) 500 kişi parça parça bölünmeyecek mi? SG, HG, FW vs.
Yani nasıl bir sistem bu tek sunucuda 500 kişi barındırabiliyor?
Hub'ın anlamını bilseydin bunları yazmazdın... :D
Hub sunucu demek bir ana sunucu var diğer sunucular da buraya bağlı yani SG, HG, FW için ayrı ayrı sunucular var. Hubdan diğer sunuculara geçiş yapıyorsun.
 

bgencacat

Lapis Toplayıcısı
Mesajlar
1,139
En iyi cevaplar
0
Beğeniler
648
Puanları
1,840
Hub'ın anlamını bilseydin bunları yazmazdın... :D
Hub sunucu demek bir ana sunucu var diğer sunucular da buraya bağlı yani SG, HG, FW için ayrı ayrı sunucular var. Hubdan diğer sunuculara geçiş yapıyorsun.
Evet az çok SonOyuncu'dan öğrendim ne olduğunu. Sonuç olarak bu 500 oyuncu tek sunucuda yine olmayacak?
 

Vienicome

Hayalet Avcısı
Mesajlar
2,646
En iyi cevaplar
0
Beğeniler
5,172
Puanları
6,640
10k oyunculu sunucular asla tek kanaldan oluşmaz. bungee ile birkaç sunucuya bağlanır he her sunucu farklı socketler üzerinde aktif olur. Birçoğu farklı makinelere bile kuruyor.
Sanırsam aradığım cevap bu teşekkürler :(
 

Üst