Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

multithreaded chat server

[es] :: Java :: multithreaded chat server

[ Pregleda: 2533 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

erno
Ernad Besirevic
Graz

Član broj: 56944
Poruke: 261
*.liwest.at.



Profil

icon multithreaded chat server15.12.2006. u 08:54 - pre 187 meseci
zdravo,

par savjeta bi mi super doslo. trebao bih napisati jedan server koji mi sluzi za chat, ali i za igranje nekih glupih igri poput tictactoe ili glupost sa skarama, kamenom i papirom. moj dio je uraditi server koji ce dakle primati konekcije klijenata i naravno obradijvati njihove requests. ja sam to ovako uradio: moj server ima hashtable konekcija i imena korisnika (svaki klijent mora unijeti svoje ime prije konekcije). u svom dijalogu/prozoru kako god, imam textbox gdje mi pise kad se neko konektuje itd itd itd. kad hocu nekog da pozovem na chat ukucam [ime_usera] test i saljem to serveru, server dobije ovaj string i nadje u hashmapi usera sa imenom ime_usera i njemu proslijedi dalje moju poruku i sl. postojili neki performantniji (ljepsi) nacin da se ovo odradi. neki primjer mozda ne bi bio los. thnx.

poz
 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8780
..yu.220.247.194.in-addr.arpa.



+9972 Profil

icon Re: multithreaded chat server15.12.2006. u 12:27 - pre 187 meseci
Tipičan primer. Tu se nauči mrežno programiranje, (sockets), nauče se niti (threads) i još GUI. Milina ! Ja sam to prošao, (odavno). Kasnije sam video gomilu primera na net-u, ali moje malo parče koda i veliko znanje koje sam stekao sopstvenim razvojem je nezamenljivo !

Prijavi se (učlani) na nekoliko developerskih sajtova. Na primer codeproject, javaguru ili slično. Naćićeš sve šta ti treba.
OTPOR blokadi ulica, OTPOR blokiranom Beogradu, OTPOR blokiranoj Srbiji
 
Odgovor na temu

Java Beograd
Novi Beograd

Član broj: 11890
Poruke: 8780
*.eunet.yu.



+9972 Profil

icon Re: multithreaded chat server16.12.2006. u 18:51 - pre 187 meseci
Evo, našao sam svoje primere od pre 6 (!) godina. ( Jebiga, stari se ! ). Onaj server.exe je dobijen Microsft-ovim J++ alatom. Pogledaj, ima tu svačega.
OTPOR blokadi ulica, OTPOR blokiranom Beogradu, OTPOR blokiranoj Srbiji
Prikačeni fajlovi
 
Odgovor na temu

SluX

Član broj: 77091
Poruke: 56
*.dynamic.sbb.co.yu.



Profil

icon Re: multithreaded chat server19.12.2006. u 23:27 - pre 187 meseci
Mozda sam malo okasnio...
Koliko kapiram ti imas po jedan thread za svakog usera?Ili ne?

U svakom slucaju, pogledaj kako radi nio i zasto je bolje koristiti asinhroni io od blokirajuceg....

Nadam se da je malo pomoglo...ako ne, pitaj jos...
 
Odgovor na temu

Brain raider
Brain raider

Član broj: 35767
Poruke: 251
*.3dnet.co.yu.

ICQ: 410931947
Sajt: www..com


+2 Profil

icon Re: multithreaded chat server21.12.2006. u 19:38 - pre 187 meseci
Moze li neko iskusniji da objasni kako u stvari funkcionise chat
 
Odgovor na temu

djalfirevic

Član broj: 76932
Poruke: 497
*.dynamic.sbb.co.yu.



Profil

icon Re: multithreaded chat server21.12.2006. u 21:25 - pre 187 meseci
Citat:
Brain raider: Moze li neko iskusniji da objasni kako u stvari funkcionise chat


Do kog nivoa mislis kako funkcionise chat?
Jel kontas stvari vezane za portove, tj. sockete?

Ako ti je to jasno, sustina se svodi na konkurentnost, u smislu, da svaki klijent za server predstavlja jednu dodatnu nit koju on opsluzuje. Otuda cuveni pojam visenitnost. Server i klijent moraju da uspostave komunikaciju i to se radi po principu 'osluskivanja'. Da li si nekada u mrezi koristio naredbu 'ping'? Salje se naredba radnim stanicama a one ukoliko logicka veza izmedju njih postoji, salju echo signal, i na taj nacin se uspostavlja veza. Zatim se, poruke koje se salju transformisu, do nivoa nestrukturiranih bita, dok se na prijemnoj strani one rekonstruisu.

Naravno, mrezni protokoli su takvi da svaki radi svoj deo posla i na taj nacin se stvara paralelno procesiranje. Physical Layer prakticno vrsi prenos nestrukturiranih bita, DataLink Layer nestrukturirane bite grupise u pakete (frames). Transport Layer ima zadatak da pronadje putanju od izvorisnog do odredisnog racunara, putem rutiranja, dok Application Layer prakticno predstavlja sam vrh piramide i on u sustini pruza servise za aplikacione programe kako bi omogucio komunikaciju sa drugim aplikacionim programima u okviru racunarske mreze (odredjuje protokol za komunikaciju, proverava da li postoje osnovni komunikacioni resursi, stvara dogovor izmedju strana u komunikaciji po pitanju integriteta poruka i privatnosti, i sl).

Nadam se da sam ti bar malo pojasnio?
 
Odgovor na temu

glock

Član broj: 22805
Poruke: 37
*.beotel.net.

Sajt: www.jcp.org


Profil

icon Re: multithreaded chat server21.12.2006. u 23:01 - pre 187 meseci
Joj Djuro stari nemoj da se ljutis ali ala znas da pametujes brate, svaki tvoj post je pun neke
ufuranosti, "vidte mene znam nesto sto nema nikakve veze sa temom".

@ chat

napravish java.net.ServerSocket i pozoves njegoc accept() metod, i onda za
svaku klijentovu konekciju bacis novi tred kome predajes java.net.Socket instancu.

Ukoliko hoces da ti resenje bude vise manje profinjeno, pogledaj u Tiger-u (Java 1.5)
java.util.concurrent.Future, java.util.concurrent.Callable, i ostale povezane klase, mnogo
dobra stvar.
 
Odgovor na temu

SluX

Član broj: 77091
Poruke: 56
*.dynamic.sbb.co.yu.



Profil

icon Re: multithreaded chat server22.12.2006. u 19:15 - pre 187 meseci
Hehe...malo pretera sa pricom o internetovim layerima stvarno ;)

U svakom slucaju ako bas hoces da ides do kraja sa dobrom applikacijom, pogledaj asinhroni io(nio paket ga ima). Omogucice ti da tvoj server prima mnooogo vise klijenata nego standardni(i doduse laksi za implementaciju) server sa po jednom niti po klijentu...
 
Odgovor na temu

djalfirevic

Član broj: 76932
Poruke: 497
*.dynamic.sbb.co.yu.



Profil

icon Re: multithreaded chat server22.12.2006. u 21:36 - pre 187 meseci
Citat:
SluX: Hehe...malo pretera sa pricom o internetovim layerima stvarno ;)

U svakom slucaju ako bas hoces da ides do kraja sa dobrom applikacijom, pogledaj asinhroni io(nio paket ga ima). Omogucice ti da tvoj server prima mnooogo vise klijenata nego standardni(i doduse laksi za implementaciju) server sa po jednom niti po klijentu...


Ne ljutim se bre, ali kada neko postavi pitanje da li neko zna kako funkcionise chat, kako ti uopste mozes da pretpostavis sta konkretno tog nekog zanima?

Nije covek pitao kako funkcionise Java chat, vec chat uopste, a to definitivno podrazumeva Layer-e, ok?
 
Odgovor na temu

SluX

Član broj: 77091
Poruke: 56
*.raf.edu.yu.



Profil

icon Re: multithreaded chat server23.12.2006. u 10:21 - pre 187 meseci
Stoji to sto ti kazes, ali se opet ne bih slozio sa tobom. Ako cemo vec tako za aplikacionog programera uopste nije bitan ni jedan drugi sloj sem aplikativnog i, ako vec ne koristis neku message orijentisanu biblioteku, transportni sloj-prica o drugim slojevima je nebitna(ovo ne zelim da generalizujem, ali govorim iz svog i iskustva mojih kolega), jer ti kao application layer programer nemas potrebe da se tu petljas na bilo kakav nacin, a uostalom to ti je i onemoguceno ;)

Nego da se vise ne polemise oko ovoga...svi imaju svoj pristup, tako da ja ne tvrdim da sam apsolutno u pravu-ja sam pobornik onog lenjog stava: sto ti ne treba, ne moras da znas.

Poz.
 
Odgovor na temu

djalfirevic

Član broj: 76932
Poruke: 497
*.dynamic.sbb.co.yu.



Profil

icon Re: multithreaded chat server23.12.2006. u 17:06 - pre 187 meseci
Citat:
SluX:

Nego da se vise ne polemise oko ovoga...svi imaju svoj pristup, tako da ja ne tvrdim da sam apsolutno u pravu-ja sam pobornik onog lenjog stava: sto ti ne treba, ne moras da znas.

Poz.


OK. Slazem se.
 
Odgovor na temu

[es] :: Java :: multithreaded chat server

[ Pregleda: 2533 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.