/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
EJB - forklaring til interfaces....
Fra : Henrik


Dato : 04-07-04 08:18

Hejsa !

prøver at sætte mig lidt ind i EJB verdenen - men har lidt problemer med at
forstå de 4 interfaces - altså begrundelsen for at have 4 og ikke bare 2.

De 4 interfaces:
Local interface
Remote interface
Local Home interface
Remote Home (component) interface.

Hvorfor har man ikke bare eet remote og eet local ??

mvh, Henrik



 
 
Lars Dam (04-07-2004)
Kommentar
Fra : Lars Dam


Dato : 04-07-04 09:33

On Sun, 4 Jul 2004 09:18:22 +0200
"Henrik" <xs650@ofir.dk> wrote:

> Hejsa !
>
> pr_ver at s_tte mig lidt ind i EJB verdenen - men har lidt problemer med at
> forst_ de 4 interfaces - alts_ begrundelsen for at have 4 og ikke bare 2.
>
> De 4 interfaces:
> Local interface
> Remote interface
> Local Home interface
> Remote Home (component) interface.
>
> Hvorfor har man ikke bare eet remote og eet local ??

Fordi at så ville du vælge at have remote interfacet, således at din applikation
kan køre på tværs af maskiner. Hvis du kun havde local interfacet, så så skulle
du finde en anden (og mere kompliceret) løsning til at løse netværks traffik.

Fordi at remote interface altid pakker kald ind i RMI så performer den type kald
enormt dårligt, hvis alle komponenter ligger i samme JVM, så derfor har man et
local interface til intern JVM kommunikation.

Derfor.

> mvh, Henrik
>
>


vh. ld

Henrik (05-07-2004)
Kommentar
Fra : Henrik


Dato : 05-07-04 09:35

Lars Dam <larsdam@post2.tele.dk> wrote in message news:<20040704103242.00c7ef87.larsdam@post2.tele.dk>...
> On Sun, 4 Jul 2004 09:18:22 +0200
> "Henrik" <xs650@ofir.dk> wrote:
>
> > Hejsa !
> >
> > pr ver at s tte mig lidt ind i EJB verdenen - men har lidt problemer med
> at
> > forst de 4 interfaces - alts begrundelsen for at have 4 og ikke bare 2.
> >
> > De 4 interfaces:
> > Local interface
> > Remote interface
> > Local Home interface
> > Remote Home (component) interface.
> >
> > Hvorfor har man ikke bare eet remote og eet local ??
>
> Fordi at s ville du v lge at have remote interfacet, s ledes at din
> applikation
> kan k re p tv rs af maskiner. Hvis du kun havde local interfacet, s
> s skulle
> du finde en anden (og mere kompliceret) l sning til at l se netv rks
> traffik.
>
> Fordi at remote interface altid pakker kald ind i RMI s performer den ty
> pe kald
> enormt d rligt, hvis alle komponenter ligger i samme JVM, s derfor har
> man et
> local interface til intern JVM kommunikation.
>
> Derfor.
>

Jo - men det forklare så ikke hvorfor man har 2 local IF og 2 Remote IF !

mvh, Henrik

Lars Dam (05-07-2004)
Kommentar
Fra : Lars Dam


Dato : 05-07-04 10:46

On 5 Jul 2004 01:34:58 -0700
xs650@ofir.dk (Henrik) wrote:

> Lars Dam <larsdam@post2.tele.dk> wrote in message
> news:<20040704103242.00c7ef87.larsdam@post2.tele.dk>...
> > On Sun, 4 Jul 2004 09:18:22 +0200
> > "Henrik" <xs650@ofir.dk> wrote:
> >
> > > Hejsa !
> > >
> > > pr ver at s tte mig lidt ind i EJB verdenen - men har lidt problemer med
> > at
> > > forst de 4 interfaces - alts begrundelsen for at have 4 og ikke bare 2.
> > >
> > > De 4 interfaces:
> > > Local interface
> > > Remote interface
> > > Local Home interface
> > > Remote Home (component) interface.
> > >
> > > Hvorfor har man ikke bare eet remote og eet local ??
> >
> > Fordi at s ville du v lge at have remote interfacet, s ledes at din
> > applikation
> > kan k re p tv rs af maskiner. Hvis du kun havde local interfacet, s
> > s skulle
> > du finde en anden (og mere kompliceret) l sning til at l se netv rks
> > traffik.
> >
> > Fordi at remote interface altid pakker kald ind i RMI s performer den ty
> > pe kald
> > enormt d rligt, hvis alle komponenter ligger i samme JVM, s derfor har
> > man et
> > local interface til intern JVM kommunikation.
> >
> > Derfor.
> >
>
> Jo - men det forklare så ikke hvorfor man har 2 local IF og 2 Remote IF !

Det regulære interface (Ikke 'home' interfacet), representerer det objekt som
styrer din domæne regler (dvs. det svarer til et ordinært object). Istedet for
at lave det som en klasse, så beskriver man objektet som et interface, hvilket
betyder at man kan have mange forskellige implementeringer af klassen. Og dette
er nyttigt, da man på klient maskinen så kan autogenere en 'stub' klasse som
forstår at delegere kaldene videre over netværk til en 'skelet' klasse (vist nok
- ikke 100% sikker her), som igen delegerer kaldet videre til den rigtige
implementering som du har lavet.

Nu er det sådan at når du har en klient og server del af en stor applikation, så
kan du ikke umiddelbart 'new' en instans på serveren med den kode der bliver
afviklet på klienten. Derfor har hver 'klasse' et Home interface som bruges til
at administrere ejb objekter af den type som det er Home for. Home interfacet
bruges også til at søge og slette objekter af typen. Så Home interfacet er altså
et 'administrations' interface som bruges til at fortælle server delen hvad den
skal gøre med de forskellige instanser af typen.

Hvorfor er der så et LocalHome interface? Samme årsag som tidligere - hvis
ikke, så skulle alle administrations kaldene pakkes ind i RMI, selvom
server/klient delen af applikationen er i samme JVM


> mvh, Henrik

vh. ld

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408918
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste