SlideShare ist ein Scribd-Unternehmen logo
1 von 36
PRESENTATION ON
JINI Technology

SUBMITTED BY
Rachna
Introduction to JINI
• Jini is a way to do distributed computing that helps
you manage the dynamic nature of networks.
• Provides mechanisms to enable smooth adding,
removal, and finding of devices and services on the
network.
• Provides a programming model for reliable, secure
distributed services and makes it easier for
programmers to get their devices talking to each
other.
• Jini technology promises to be a reality in the
immediate future as an architecture to enable
connections between devices any time, anywhere.
Why Jini technology?
•
•
•
•
•
•

Today devices are unaware of their surroundings.
They are rigid and they can not adapt.
We expend a lot of efforts to install it.
We need an expert to do it for us.
In JINI, No system administrator required.
Everything on the network (hardware or software) is
a "service“.
• Each service represented by a mobile object.
Working Model
• The Java programming language is the key to
making Jini technology work. Built on top of Java,
object serialization, and Java Remote Method
Invocation (RMI), it enables objects to move around
the network from virtual machine to virtual machine.
Jini attempts to extend the benefits of objectoriented programming to the network.
• Jini is written in pure Java but the clients and the
services are not constrained to be in Java.
How Jini works? (Process)
• To use a service, a person or a program locates
the service using the lookup service.
• The service's interface is copied from the lookup
service to the requesting device where it will be
used.
• The lookup service acts as a switchboard to
connect a client looking for a service with that
service.
• Once the connection is made, the lookup service
is not involved in any of the resulting interactions
between that client and that service.

5
Where it can be placed?

6
Architectural Overview
• The whole technology can be segmented into :
– Infrastructure
– Programming Model
– Services
Infrastructure
• Set of components, includes the minimal JINI
technology core, that enables building of the system.
Lookup Service
• Central storage of services available within the
system
• It is the fundamental part of the infrastructure.
• It organizes services into groups.
– Service can be a member of multiple groups.
– Multiple Lookup Services can maintain the
same group.
– This helps to achieve fault tolerance.
How things work (Service Side)?
• When a new service is created, it register itself
with a Lookup Service (Join).
• It must first locate the appropriate Lookup service
(Discovery).
• This done using the Discovery/Join Protocol.
How things work (Client Side)?
• Client locate the appropriate Lookup Service
(Discovery).
• It locates a service by querying the Lookup Service
(Lookup)
• This done using the Discovery/Lookup Protocol.
• Then, Client and service can communicate
directly.
Discovery Protocol
• It can be :
– Multicast Discovery Protocol.
(looking for an appropriate Lookup Service)
– Unicast Discovery Protocol.
(looking for a specific Lookup Service or non-local
Lookup service)
– Multicast Announcement Protocol.
(Allow Lookup services to advertise their
presence)
Multicast Request Protocol
Unicast Discovery Protocol
Multicast Announcement Protocol
Join Protocol
• A service discovers the appropriate Lookup
Service.
• It connects via the Lookup Service registrar.
• The Service sends some info about itself.
• The Lookup Service stores the information
and associate it with the requested group, if
any.
Join Protocol
Lookup Protocol
• A Client discovers the appropriate Lookup
Service.
• It’ll query for the service.
• If found, the object reference of the
requested service will be loaded into the
client.
• Finally, client invoke the service.
Lookup Protocol
Distributed Security System
• Define how entities got the right to perform
actions on their behalf or on behalf of others.
• It extends JDK1.2 platform’s security model to
the world of distributed systems.
Leasing
• Access to many of the services in the Jini system
environment is lease based. A lease is a grant of
guaranteed access over a time period. Each lease is
negotiated between the user of the service and the
provider of the service as part of the service
protocol: A service is requested for some period;
access is granted for some period, presumably taking
the request period into account. If a lease is not
renewed before it is freed--either because the
resource is no longer needed, the client or network
fails, or the lease is not permitted to be renewed-then both the user and the provider of the resource
may conclude that the resource can be freed.
AR.2.1.6 Transactions
• A series of operations, either within a single
service or spanning multiple services, can be
wrapped in a transaction. The Jini transaction
interfaces supply a service protocol needed to
coordinate a two-phase commit. How
transactions are implemented--and indeed,
the very semantics of the notion of a
transaction--is left up to the service using
those interfaces.
• AR.2.1.7 Events
• The Jini architecture supports distributed
events. An object may allow other objects to
register interest in events in the object and
receive a notification of the occurrence of
such an event. This enables distributed eventbased programs to be written with a variety of
reliability and scalability guarantees.
Programming Model
• Set of interfaces that enables the construction
of reliable services.
• These interfaces make up the distributed
extension of Java.
• All interfaces are written in Java
• Free source code.
• Has no limit, and it can be extended.
Programming Model Cont..
• These interfaces include :
– Leasing interface
– Events interface
– Transaction interface
Leasing interface
• Access to many services in the JINI system is
lease based.
• Lease grant guaranteed access to the service
over a period of time.
• It is negotiable.
• Can be exclusive or non-exclusive.
• Can be renewed.
Example
• When a service registers with the lookup
service, it receives a lease.
• It need to renew periodically.
• When service failed or lease get expired,
service will be removed.
Distributed Events Interface
• It extends JavaBeans Event Model to the
world of Distributed Systems.
• One object, Event Listener, registers an
interest in event of another object, Event
Generator.
• Listener will be notified in a timely and
reliable fashion.
• Registration of interest is lease based
Transaction Interface
• Transactions enables operation grouping.
Either all Succeed or all Fail.
• The JINI’s Transaction Interface supply a
service protocol needed to coordinate 2Phase commit protocol.
Service
• Something that can be used by a person,
program or another service.
• It can be : Computational, Storage, Software,
Hardware or Communication Channel.
• It has an interface which define the operations
that can be requested.
Services Cont..
• Service objects can be written in any
language. Client does not care.
• But the interface has to be written in Java.
• One of them is JavaSpaces which can be used
for simple communication and storage of
related groups of objects.
Example
Advantages
• We no longer need a computer to act as an
intermediary between a cell phone and a printer
• These devices can take care of themselves-they are
flexible, they adapt
• Self configure
• Self diagnose
• Self install
• Reduce need for expert help
• Lower total cost
33
Disadvantages
• Communication overhead, so some time it’s
slow
• High Learning curve and some cost involve

34
Conclusion
• JINI is the feature of distributed systems.
• The dynamic nature of JINI allows resources
to be added, subtracted at anytime without
bothering other components.
• Open Source Code is available for
download. Thus it has no limit.
References
• The main JINI page at Sun:
http://java.sun.com/products/jini/
• JINI specifications:
http://java.sun.com/products/jini/specs/
• JINI-USERS mailing list archives:
http://archives.java.sun.com/archives/jini-users.html
• Bill Venners' JINI/JavaSpaces talk:
http://www.artima.com/javaseminars/modules/JINI/
Handout.html
• JINI Community Web Site, devoted to JINI
http://www.jinivision.com

Weitere ähnliche Inhalte

Was ist angesagt?

Jini network technology
Jini  network   technologyJini  network   technology
Jini network technologyKeerthi Thomas
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure callSunita Sahu
 
Evolution of Cloud Computing
Evolution of Cloud ComputingEvolution of Cloud Computing
Evolution of Cloud ComputingNephoScale
 
Grid computing Seminar PPT
Grid computing Seminar PPTGrid computing Seminar PPT
Grid computing Seminar PPTUpender Upr
 
Fault tolerance in distributed systems
Fault tolerance in distributed systemsFault tolerance in distributed systems
Fault tolerance in distributed systemssumitjain2013
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software conceptsPrajakta Rane
 
Cloud Computing for college presenation project.
Cloud Computing for college presenation project.Cloud Computing for college presenation project.
Cloud Computing for college presenation project.Mahesh Tibrewal
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computinggaurav jain
 
Transactions and Concurrency Control
Transactions and Concurrency ControlTransactions and Concurrency Control
Transactions and Concurrency ControlDilum Bandara
 
Eucalyptus, Nimbus & OpenNebula
Eucalyptus, Nimbus & OpenNebulaEucalyptus, Nimbus & OpenNebula
Eucalyptus, Nimbus & OpenNebulaAmar Myana
 
eye phone technology
eye phone technologyeye phone technology
eye phone technologyNaga Dinesh
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile ComputingJAINIK PATEL
 

Was ist angesagt? (20)

Jini network technology
Jini  network   technologyJini  network   technology
Jini network technology
 
Mobile Computing
Mobile ComputingMobile Computing
Mobile Computing
 
Naming in Distributed System
Naming in Distributed SystemNaming in Distributed System
Naming in Distributed System
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
Evolution of Cloud Computing
Evolution of Cloud ComputingEvolution of Cloud Computing
Evolution of Cloud Computing
 
Common Standards in Cloud Computing
Common Standards in Cloud ComputingCommon Standards in Cloud Computing
Common Standards in Cloud Computing
 
Grid computing Seminar PPT
Grid computing Seminar PPTGrid computing Seminar PPT
Grid computing Seminar PPT
 
Fog Computing
Fog ComputingFog Computing
Fog Computing
 
Fault tolerance in distributed systems
Fault tolerance in distributed systemsFault tolerance in distributed systems
Fault tolerance in distributed systems
 
2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts2. Distributed Systems Hardware & Software concepts
2. Distributed Systems Hardware & Software concepts
 
Cloud Computing for college presenation project.
Cloud Computing for college presenation project.Cloud Computing for college presenation project.
Cloud Computing for college presenation project.
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computing
 
Jini
JiniJini
Jini
 
Transactions and Concurrency Control
Transactions and Concurrency ControlTransactions and Concurrency Control
Transactions and Concurrency Control
 
Eucalyptus, Nimbus & OpenNebula
Eucalyptus, Nimbus & OpenNebulaEucalyptus, Nimbus & OpenNebula
Eucalyptus, Nimbus & OpenNebula
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
eye phone technology
eye phone technologyeye phone technology
eye phone technology
 
Distributed deadlock
Distributed deadlockDistributed deadlock
Distributed deadlock
 
Google App Engine ppt
Google App Engine  pptGoogle App Engine  ppt
Google App Engine ppt
 
Architecture of Mobile Computing
Architecture of Mobile ComputingArchitecture of Mobile Computing
Architecture of Mobile Computing
 

Ähnlich wie JINI Technology Presentation - Introduction to Distributed Computing

jinitechnologyppt-170905081653.pdf
jinitechnologyppt-170905081653.pdfjinitechnologyppt-170905081653.pdf
jinitechnologyppt-170905081653.pdfPoojithaBollikonda
 
Mayur jini technology.pptx
Mayur jini technology.pptxMayur jini technology.pptx
Mayur jini technology.pptxmayurbankar2
 
Deployability
DeployabilityDeployability
DeployabilityLen Bass
 
Jini new technology for a networked world
Jini new technology for a networked worldJini new technology for a networked world
Jini new technology for a networked worldSajan Sahu
 
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumRick Hightower
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes Abdul Basit Munda
 
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...JSFestUA
 
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...jeetendra mandal
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?NGINX, Inc.
 
Intro to Microservices Architecture
Intro to Microservices ArchitectureIntro to Microservices Architecture
Intro to Microservices ArchitecturePeter Nijem
 
#ATAGTR2020 Presentation - Microservices – Explored
#ATAGTR2020 Presentation - Microservices – Explored#ATAGTR2020 Presentation - Microservices – Explored
#ATAGTR2020 Presentation - Microservices – ExploredAgile Testing Alliance
 
Chap 5 software as a service (saass)
Chap 5 software as a service (saass)Chap 5 software as a service (saass)
Chap 5 software as a service (saass)Raj Sarode
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architectureFaren faren
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupMatt Ray
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...WSO2
 

Ähnlich wie JINI Technology Presentation - Introduction to Distributed Computing (20)

jinitechnologyppt-170905081653.pdf
jinitechnologyppt-170905081653.pdfjinitechnologyppt-170905081653.pdf
jinitechnologyppt-170905081653.pdf
 
JINI
JINIJINI
JINI
 
Mayur jini technology.pptx
Mayur jini technology.pptxMayur jini technology.pptx
Mayur jini technology.pptx
 
Deployability
DeployabilityDeployability
Deployability
 
Jini new technology for a networked world
Jini new technology for a networked worldJini new technology for a networked world
Jini new technology for a networked world
 
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
apidays LIVE Jakarta - Building an Event-Driven Architecture by Harin Honesty...
 
What are microservices
What are microservicesWhat are microservices
What are microservices
 
Service Mesh Talk for CTO Forum
Service Mesh Talk for CTO ForumService Mesh Talk for CTO Forum
Service Mesh Talk for CTO Forum
 
QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes QCon 2015 - Microservices Track Notes
QCon 2015 - Microservices Track Notes
 
Microservices-101
Microservices-101Microservices-101
Microservices-101
 
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...
JS Fest 2019/Autumn. Anton Cherednikov. Choreographic or orchestral architect...
 
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...
Top 5 Software Architecture Pattern Event Driven SOA Microservice Serverless ...
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?
 
Intro to Microservices Architecture
Intro to Microservices ArchitectureIntro to Microservices Architecture
Intro to Microservices Architecture
 
#ATAGTR2020 Presentation - Microservices – Explored
#ATAGTR2020 Presentation - Microservices – Explored#ATAGTR2020 Presentation - Microservices – Explored
#ATAGTR2020 Presentation - Microservices – Explored
 
Chap 5 software as a service (saass)
Chap 5 software as a service (saass)Chap 5 software as a service (saass)
Chap 5 software as a service (saass)
 
Microservice's in detailed
Microservice's in detailedMicroservice's in detailed
Microservice's in detailed
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
 
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
[APIdays Paris 2019] API Management in Service Mesh Using Istio and WSO2 API ...
 

Kürzlich hochgeladen

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 

Kürzlich hochgeladen (20)

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 

JINI Technology Presentation - Introduction to Distributed Computing

  • 2. Introduction to JINI • Jini is a way to do distributed computing that helps you manage the dynamic nature of networks. • Provides mechanisms to enable smooth adding, removal, and finding of devices and services on the network. • Provides a programming model for reliable, secure distributed services and makes it easier for programmers to get their devices talking to each other. • Jini technology promises to be a reality in the immediate future as an architecture to enable connections between devices any time, anywhere.
  • 3. Why Jini technology? • • • • • • Today devices are unaware of their surroundings. They are rigid and they can not adapt. We expend a lot of efforts to install it. We need an expert to do it for us. In JINI, No system administrator required. Everything on the network (hardware or software) is a "service“. • Each service represented by a mobile object.
  • 4. Working Model • The Java programming language is the key to making Jini technology work. Built on top of Java, object serialization, and Java Remote Method Invocation (RMI), it enables objects to move around the network from virtual machine to virtual machine. Jini attempts to extend the benefits of objectoriented programming to the network. • Jini is written in pure Java but the clients and the services are not constrained to be in Java.
  • 5. How Jini works? (Process) • To use a service, a person or a program locates the service using the lookup service. • The service's interface is copied from the lookup service to the requesting device where it will be used. • The lookup service acts as a switchboard to connect a client looking for a service with that service. • Once the connection is made, the lookup service is not involved in any of the resulting interactions between that client and that service. 5
  • 6. Where it can be placed? 6
  • 7. Architectural Overview • The whole technology can be segmented into : – Infrastructure – Programming Model – Services
  • 8. Infrastructure • Set of components, includes the minimal JINI technology core, that enables building of the system.
  • 9. Lookup Service • Central storage of services available within the system • It is the fundamental part of the infrastructure. • It organizes services into groups. – Service can be a member of multiple groups. – Multiple Lookup Services can maintain the same group. – This helps to achieve fault tolerance.
  • 10. How things work (Service Side)? • When a new service is created, it register itself with a Lookup Service (Join). • It must first locate the appropriate Lookup service (Discovery). • This done using the Discovery/Join Protocol.
  • 11. How things work (Client Side)? • Client locate the appropriate Lookup Service (Discovery). • It locates a service by querying the Lookup Service (Lookup) • This done using the Discovery/Lookup Protocol. • Then, Client and service can communicate directly.
  • 12. Discovery Protocol • It can be : – Multicast Discovery Protocol. (looking for an appropriate Lookup Service) – Unicast Discovery Protocol. (looking for a specific Lookup Service or non-local Lookup service) – Multicast Announcement Protocol. (Allow Lookup services to advertise their presence)
  • 16. Join Protocol • A service discovers the appropriate Lookup Service. • It connects via the Lookup Service registrar. • The Service sends some info about itself. • The Lookup Service stores the information and associate it with the requested group, if any.
  • 18. Lookup Protocol • A Client discovers the appropriate Lookup Service. • It’ll query for the service. • If found, the object reference of the requested service will be loaded into the client. • Finally, client invoke the service.
  • 20. Distributed Security System • Define how entities got the right to perform actions on their behalf or on behalf of others. • It extends JDK1.2 platform’s security model to the world of distributed systems.
  • 21. Leasing • Access to many of the services in the Jini system environment is lease based. A lease is a grant of guaranteed access over a time period. Each lease is negotiated between the user of the service and the provider of the service as part of the service protocol: A service is requested for some period; access is granted for some period, presumably taking the request period into account. If a lease is not renewed before it is freed--either because the resource is no longer needed, the client or network fails, or the lease is not permitted to be renewed-then both the user and the provider of the resource may conclude that the resource can be freed.
  • 22. AR.2.1.6 Transactions • A series of operations, either within a single service or spanning multiple services, can be wrapped in a transaction. The Jini transaction interfaces supply a service protocol needed to coordinate a two-phase commit. How transactions are implemented--and indeed, the very semantics of the notion of a transaction--is left up to the service using those interfaces.
  • 23. • AR.2.1.7 Events • The Jini architecture supports distributed events. An object may allow other objects to register interest in events in the object and receive a notification of the occurrence of such an event. This enables distributed eventbased programs to be written with a variety of reliability and scalability guarantees.
  • 24. Programming Model • Set of interfaces that enables the construction of reliable services. • These interfaces make up the distributed extension of Java. • All interfaces are written in Java • Free source code. • Has no limit, and it can be extended.
  • 25. Programming Model Cont.. • These interfaces include : – Leasing interface – Events interface – Transaction interface
  • 26. Leasing interface • Access to many services in the JINI system is lease based. • Lease grant guaranteed access to the service over a period of time. • It is negotiable. • Can be exclusive or non-exclusive. • Can be renewed.
  • 27. Example • When a service registers with the lookup service, it receives a lease. • It need to renew periodically. • When service failed or lease get expired, service will be removed.
  • 28. Distributed Events Interface • It extends JavaBeans Event Model to the world of Distributed Systems. • One object, Event Listener, registers an interest in event of another object, Event Generator. • Listener will be notified in a timely and reliable fashion. • Registration of interest is lease based
  • 29. Transaction Interface • Transactions enables operation grouping. Either all Succeed or all Fail. • The JINI’s Transaction Interface supply a service protocol needed to coordinate 2Phase commit protocol.
  • 30. Service • Something that can be used by a person, program or another service. • It can be : Computational, Storage, Software, Hardware or Communication Channel. • It has an interface which define the operations that can be requested.
  • 31. Services Cont.. • Service objects can be written in any language. Client does not care. • But the interface has to be written in Java. • One of them is JavaSpaces which can be used for simple communication and storage of related groups of objects.
  • 33. Advantages • We no longer need a computer to act as an intermediary between a cell phone and a printer • These devices can take care of themselves-they are flexible, they adapt • Self configure • Self diagnose • Self install • Reduce need for expert help • Lower total cost 33
  • 34. Disadvantages • Communication overhead, so some time it’s slow • High Learning curve and some cost involve 34
  • 35. Conclusion • JINI is the feature of distributed systems. • The dynamic nature of JINI allows resources to be added, subtracted at anytime without bothering other components. • Open Source Code is available for download. Thus it has no limit.
  • 36. References • The main JINI page at Sun: http://java.sun.com/products/jini/ • JINI specifications: http://java.sun.com/products/jini/specs/ • JINI-USERS mailing list archives: http://archives.java.sun.com/archives/jini-users.html • Bill Venners' JINI/JavaSpaces talk: http://www.artima.com/javaseminars/modules/JINI/ Handout.html • JINI Community Web Site, devoted to JINI http://www.jinivision.com