? En flernettverksvert er en datamaskin eller annen hardware som holder mer enn én IP-adresse . Å ha flere IP-adresser er ikke uvanlig fordi adressen er knyttet til Internett -grensesnittet , ikke maskinen : En datamaskin som har både en Ethernet og Wi - Fi Internett-tilkobling har en annen IP -adresse for hvert grensesnitt . Ved hjelp av en flernettverksdatamaskin kan påvirke hvordan Java Virtual Machines samhandle med hverandre . RMI
Remote Method Invocation er et Java- programmeringsgrensesnitt som hjelper Java virtuell maskin - Java - baserte plattformer - gjøre bruk av hverandres programvare. Hvis en utvikler installerer hennes eget program på en Java -maskin , kan hun dele den med andre utviklere og gi dem noen oppdateringer hun gjør , men det kan ta mye tid . RMI gjør det enklere : . Når hun installerer oppdateringene i Web katalog, gjør RMI de andre virtuelle maskiner for å få oppdateringer uten at utbygger gjør noe videre arbeid
Starte
< p> Hvis du vil kommunisere med en ekstern objekt - et stykke programvare ligge på et annet Java- maskin - ved hjelp av RMI , er det første trinnet som regel å koble til med en " spire " i en RMI registret. Stussen inneholder identifiserende data for vertsmaskinen å holde eksterne objektet , for porten på den verten der RMI tar henvendelser om tilgang til objektet , og for selve objektet . Den inneholder også en socket fabrikken , som er en RMI program som kontrollerer hvordan Java virtuelle maskiner kobles til objektet.
Multihomes og RMI
Når RMI prøver å gjenopprette et objekt fra en multihome vert, blir prosessen mer komplisert . Hvis RMI på Java maskinen angir datamaskinens Wi - Fi-adresse som vert, kan datamaskiner koblet til deg i et Ethernet-nettverk ikke bruke RMI å få tilgang til noe på datamaskinen. Du kan stille RMI slik at det gir Intranett -adresse, men hvis du vil at andre virtuelle maskiner for å få tilgang til din både Wi - Fi og Ethernet RMI evne, som fortsatt ikke er den rette oppsettet.
løsninger
å gjøre RMI brukbare uansett hvor andre datamaskiner koble til verten , bruker socket fabrikken for å kontrollere tilkoblingen. Ved hjelp av en Java variabel kalt ThreadLocal , kan du gi kontakten fabrikken en IP- adresse som alle datamaskiner som bruker RMI må koble til . Du kan også stille Java slik at det gir andre datamaskiner med en liste over alle mulige vertsnavn - alle IP-adresser på nettverket - og velger riktig en fra denne listen