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

Socket aplikacija ekstremno spora na Linuxu

[es] :: Java :: Socket aplikacija ekstremno spora na Linuxu

[ Pregleda: 2623 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

MMX
Miloš Malović
Platform engineer, Supplyframe
Beograd

SuperModerator
Član broj: 2423
Poruke: 2105
*.dynamic.sbb.rs.

Jabber: mmx@elitesecurity.org
ICQ: 98797759
Sajt: www.mmx.rs


+11 Profil

icon Socket aplikacija ekstremno spora na Linuxu16.02.2013. u 15:46 - pre 135 meseci
Pozdrav svima,

Na sledećoj lokaciji se nalazi primer jednostavne client-server aplikacije:

http://www.mmx.rs/sockets/example1.tar.gz
http://www.mmx.rs/sockets/example2.tar.gz

Client šalje serveru komandu, server je izvršava i vraća clientu response. Problem je što gore navedeni source radi ekstremno sporo na Linuxu dok na Windowsu i Mac OS X-u leti.

U primeru 1 koristim BufferedReader i PrintWiter, dok u primeru 2 koristim BufferedInputStream i BufferedOutputStream. Kod sam testirao na OpenJDK-u, Sun-ovom JDK-u 1.6 i Sun-ovom JDK-u 1.7 i na sva tri se identično ponaša. Takođe, testirao sam na dve različite distribucije (Ubuntu i Gentoo) jer sam mislio da možda nije u pitanju neki bug na Ubuntu-u.

Da li neko možda ima ideju u čemu može biti problem?

Performance:

Vreme izvršavanja koda na MacOSX-u oko 3 - 4 sekunde.
Vreme izvršavanja koda na Linuxu oko 7 minuta.

Kao da ga Linuxu nešto blokira, a ne mogu da provalim šta...

Unapred hvala na odgovorima.
↑ ↑ ↓ ↓ ← → ← → B A B A [select] [start]
 
Odgovor na temu

djoka_l
Beograd

Član broj: 56075
Poruke: 3445

Jabber: djoka_l


+1462 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu16.02.2013. u 18:11 - pre 135 meseci
Probaj da pakete koje šalješ po socketu dopuniš blankovima do dužine koje je približna dužini MTU. Ako ti je MTU 1400, napravi pakete koji su dugački, na primer, 1350 bajtova.

Bez obzira što koristiš flush, u nekim implementacijama socket biblioteke programeri se prave pametni pa ne urade flush ako je paket kratak.

EDIT: Drugu stvar koju možeš da pokušaš ja da smanjiš MTU na eth interfejsu na neku manju vrednost, pa onda da vidiš kako se program ponaša.

[Ovu poruku je menjao djoka_l dana 16.02.2013. u 19:26 GMT+1]
 
Odgovor na temu

MMX
Miloš Malović
Platform engineer, Supplyframe
Beograd

SuperModerator
Član broj: 2423
Poruke: 2105
*.dynamic.sbb.rs.

Jabber: mmx@elitesecurity.org
ICQ: 98797759
Sajt: www.mmx.rs


+11 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu16.02.2013. u 19:36 - pre 135 meseci
Client i server komuniciraju preko loopback a ne preko eth interfejsa. Jedino na loopback interfejsu da smanjim MTU vrednost, ako to ima nekakvog uticaja? Pokušaću ovo što si mi predložio, pa ću javiti rezultate.
↑ ↑ ↓ ↓ ← → ← → B A B A [select] [start]
 
Odgovor na temu

duskooo
BG

Član broj: 52174
Poruke: 44
*.adsl-a-1.sezampro.rs.



+1 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu16.02.2013. u 23:10 - pre 135 meseci
Jos jedna stvar koju treba da proveris je line separator (razlikuje se u zavisnosti od platforme): SO link
 
Odgovor na temu

:o)

Član broj: 38609
Poruke: 201
*.dynamic.sbb.rs.



+2 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu19.02.2013. u 21:00 - pre 135 meseci
Da li si uspeo da resis glavolomku?
Machina improba! Vel mihi ede potum vel mihi redde nummos meos!
 
Odgovor na temu

MMX
Miloš Malović
Platform engineer, Supplyframe
Beograd

SuperModerator
Član broj: 2423
Poruke: 2105
*.we.co.rs.

Jabber: mmx@elitesecurity.org
ICQ: 98797759
Sajt: www.mmx.rs


+11 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu23.02.2013. u 15:23 - pre 135 meseci
Nisam uspeo da rešim problem.
↑ ↑ ↓ ↓ ← → ← → B A B A [select] [start]
 
Odgovor na temu

staticInt

Član broj: 66101
Poruke: 485
46.246.120.*



+43 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu23.02.2013. u 17:10 - pre 135 meseci
Mislim da je networking problem u pitanju, to se lako moze ispitati, pogledaj dokumentaciju za Java sockete mozes da debugujes kad se sta desi sa socketom, moje neko misljenje je da se vrti oko prepoznavanja adrese ili tako neke glupe stvari koja je network prirode. Probaj sa linuxa telnet aplikacijom da otvoris konekciju na tom serveru.

Secam se da sam ja imao slican problem i bio je network prirode dns je nesto zezao.
 
Odgovor na temu

MMX
Miloš Malović
Platform engineer, Supplyframe
Beograd

SuperModerator
Član broj: 2423
Poruke: 2105
*.dynamic.sbb.rs.

Jabber: mmx@elitesecurity.org
ICQ: 98797759
Sajt: www.mmx.rs


+11 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu23.02.2013. u 22:18 - pre 135 meseci
To je i meni palo na pamet, međutim, probao sam umesto hostnamea da stavim IP adresu, i i dalje sam imao isti problem, tako da nije do toga. Probaću sa debagovanjem.
↑ ↑ ↓ ↓ ← → ← → B A B A [select] [start]
 
Odgovor na temu

MMX
Miloš Malović
Platform engineer, Supplyframe
Beograd

SuperModerator
Član broj: 2423
Poruke: 2105
*.we.co.rs.

Jabber: mmx@elitesecurity.org
ICQ: 98797759
Sajt: www.mmx.rs


+11 Profil

icon Re: Socket aplikacija ekstremno spora na Linuxu25.02.2013. u 16:59 - pre 134 meseci
Našli smo rešenje problema:

http://www.jguru.com/faq/view.jsp?EID=42242

djoka_l je bio u pravu. :)
↑ ↑ ↓ ↓ ← → ← → B A B A [select] [start]
 
Odgovor na temu

[es] :: Java :: Socket aplikacija ekstremno spora na Linuxu

[ Pregleda: 2623 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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