Christopher Bladon - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

Christopher Bladon

Description:

Collaboration and document sharing. J2EE load-balanced, components. Business processes ... Promotes sharing. Reliability by redundancy. Collaborative ... – PowerPoint PPT presentation

Number of Views:51
Avg rating:3.0/5.0
Slides: 24
Provided by: jugs
Category:

less

Transcript and Presenter's Notes

Title: Christopher Bladon


1
JXTA versus Jini
Christopher Bladon Senior Java Architect Sun Java
Centre, Sun Microsystems Zürich, Sweden
2
My presentation, tall and proud
  • Debian Linux
  • Windows-Free
  • No slide animations transitions
  • No marketing
  • My brain

3
JXTA no infrastructure decentralised
Midlets
CICS
.Nyet
J2EE
Required Infrastructure
TPF
Grid
Jini/Rio
Hello World
Client/ Server
JXTA
Decentralisation
4
There is no silver bullet
  • Jini simple services
  • Service facade for devices
  • Rio quality of service
  • Delivering services on the network
  • JXTA push services and data to client
  • Collaboration and document sharing
  • J2EE load-balanced, components
  • Business processes

5
The more peers, the better
  • Moves data and services close to the user
  • Probabilistically better availability
  • More routing possibilities
  • Less configuration

JXTA peers
Performance
J2EE clients
Users
6
Quick Comparison
7
Peer-to-peer is cool!
  • No infrastructure
  • Interesting problems
  • Simpler and lighter nodes
  • Self-healing mentality
  • Dynamic structure
  • Promotes sharing
  • Reliability by redundancy
  • Collaborative development

8
JXTA Abstractions
  • Uniform Peer ID (addressing)
  • Peer-groups
  • Advertisements (peers, groups, content, services)
  • Resolver
  • Pipes

9
JXTA Aspects
  • Discover, Join, Query, Subscribe, Work
  • Colony of Bees (without a queen)
  • Replicate data resilience
  • Replicate services resilience performance
  • Unmanaged fault-tolerance
  • Dynamic config and re-config
  • Groups - Virtual network (NAT Firewalls)

10
Tons of cool stuff!
  • 100 p2p
  • No centralised servers or admin
  • Multilingual (prog. Language)
  • Security is built-in
  • Messages contain the route back
  • Through NAT and Firewalls
  • Peers authorise other peers
  • No polling, link-sensing, neighbour detection

11
JXTA Protocols
  • PDP discover adverts on other peers
  • PVP cache and forward discoveries
  • PRP generic querying of peers
  • PIP query peers for info status
  • PEP query peers for routing info
  • PMP group membership
  • PBP binding to pipes

12
The obligitory stack picture
13
Firewalls, NAT no problem
Intranet Network 1
Network 2
Peer A
Peer Z
Subnet
Peer B
Peer C
NAT
Firewall
Peer D
Internet
14
It's secure!
  • Every peer has its own root certificate
  • Public key certificate part of each Peer
    advertisement
  • TLS Endpoint Transport (point-to-point secure
    pipe)
  • Credential certificate embedded in every JXTA
    protocol messages.
  • Private Groups (membership policy)

15
Some not so cool stuff
  • Community's Anti-P2P mentality
  • Complex, low-level programming
  • No patterns
  • Mediocre documentation
  • Java ref-impl is not cooked fully
  • Security and Trust is not cooked fully
  • P2P model is probabilistic

16
Rio/Jini (rio.jini.org)
  • Dynamic service delivery
  • 90 opaque layer on Jini
  • RMI Events
  • Jini Service Beans (JSBs)
  • Quality of Service Provisioning
  • Watches
  • Deployment Operation Strings

17
Rio/Jini Components
  • Look-up Service
  • Transaction monitor (2-phase)
  • JavaSpaces
  • Webster
  • Cybernode
  • Provisioner
  • OpMon
  • Service Viewer

18
Cool stuff 'bout Rio/Jini
  • Simple component model events
  • SpaceCommands
  • Flexible QoS heterogeneous compute env
  • Great tools
  • Paradigm similar to J2EE easier

19
Problems with Rio/Jini
  • Reliance on RMI
  • Somewhat complex infrastructure
  • Confusion Jini versus J2EE
  • No security yet (next release)

20
Problems in the enterprise
  • Redundant Data distributed replicated
  • Bladon Theorem 1 the faster data changes, the
    less it can be redundant.
  • Centralised versus redundant services
  • Propagating and reloading changed classes
  • Transactions
  • Modelling Entities and Sessions

21
How would you implement
  • Chat Whiteboard
  • File (MP3) search and download
  • Auction
  • Car Chip upgrades
  • Pet Store

22
Conclusions
  • Rio's vision is independent of Jini use any
    service platform incl. JXTA
  • Rio/Jini doesn't scramble your brain like JXTA
  • Rio/Jini and JXTA support collaborative
    development instead of isolated
  • Rio/Jini and JXTA are not just for devices
    enterprise computing!!!!

23
Christopher Bladon Senior Java Architect Sun Java
Centre, Sun Microsystems Züri, Schwyz
Write a Comment
User Comments (0)
About PowerShow.com