25. juli 2012 - 08:39Der er
6 kommentarer og 1 løsning
Arkitektur for socket server applikation
Hej eksperter,
Jeg skal igang med en applikation, som skal hoste en socket server og en webservice.
Det som jeg er i tvivl om, er selve opbygningen af socket serveren. Skal jeg bruge IO eller NIO, og skal det eventuelt laves med non-blocking.
Potentielt kan der være flere tusinde forbindelser samtidig. De maskiner der forbinder ind som klienter, sender dog ikke noget data, ved mindre de har modtaget en forespørgelse først. Altså er det ikke nødvendigt at lytte efter data hele tiden.
Et typisk brugsmønster kunne være: * serveren modtager et request via en webservice * parser requestet * finder den tilhørende socket forbindelse * sender request til socket klient * socket klient svarer * server svarer webservice requestet med svar fra socket klienten.
Da jeg gerne vil kunne udføre mine webservice kald synkrone, tror jeg ikke, at jeg kan drage fordel af non-blocking NIO.
Vil gerne høre forslag til arkitektur af socket server og valg af framework
web service hostes i Tomcat web service sender data videre paa special socket til socket server socket server har en traad som laeser fra special socket og putter i en in memory queue socket server har fixed antal N traade som laeser fra in memory queue og laver request-response til client
web service og socket server hostes i JBoss socket server laves som JCA adapter web service putter direkte i en in memory queue JCA adapteren har traade som laeser fra in memory queue og laver request-response til client
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.