Your SlideShare is downloading. ×
0
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Padres Communication Protocols
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Padres Communication Protocols

414

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
414
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Communication Universal and Faster Arwid Bancewicz, Chuma Chukwulozie Supervisor: Prof. Hans-Arno Jacobsen, MSRG, UofT Thursday February 11 2010 1
  • 2. Outline • Introduction: Motivation + Background • Part 1: Making it Universal • Part 2: Making it Faster + Use Cases • Progress Status & Summary 2
  • 3. Introduction 3
  • 4. Introduction Motivation ...mrrr... huh? mrrrr...... murr... • Need language interpreter or “middleman” to facilitate communication ‣ Middleman for humans............. Interpreter ‣ Middleware for applications........ PADRES 4
  • 5. Introduction Background • PADRES ‣ Distributed - Divide problem up for Brokers ‣ Publish/Subscribe - Type of communication ‣ Middleware - Facilitates communication between software applications 5
  • 6. Introduction Communication network Subscriber Publisher Publisher Subscriber Brokers Subscriber Publisher 6
  • 7. Introduction Communication network Application Application Subscriber Publisher Publisher Brokers Application Application Publisher Subscriber 7
  • 8. Introduction Communication network What is the temperature in Application Toronto? Application S Subscriber Publisher Publisher Brokers Application Application Publisher Subscriber 8
  • 9. Introduction Communication network Application Application S Subscriber Publisher Publisher Brokers Application Application Publisher Subscriber 9
  • 10. Introduction Communication network The temperature in Application Application Toronto is -7 Subscriber Publisher P Publisher S Brokers Application Application Publisher Subscriber 10
  • 11. Introduction Communication network Application Application Subscriber Publisher P Publisher S Brokers Application Application Publisher Subscriber 11
  • 12. Introduction Communication network The temperature in Toronto is -7 Application Application P Subscriber Publisher Publisher S Brokers Application Application Publisher Subscriber 12
  • 13. PART 1: Making it Universal 13
  • 14. Part 1: Making it Universal Standard Formats • Accept more standardized communication protocols for information exchange • XML: long-time standard • JSON: simple, light-weight • YAML: highly human-readable 14
  • 15. Part 1: Making it Universal Implementation JavaCC Parsers and Message Creation PADRES Message JavaCC Parsers S P A XML Parser Message JSON Parser US USC UA YAML Parser CS 15
  • 16. PART 2: Making it FASTER 16
  • 17. Part 2: Making it Faster Currently • PADRES uses Java RMI Advantages Handles threads, sockets Garbage Collection Serialization • Overall not efficient! 17
  • 18. Part 2: Making it Faster Currently • PADRES uses Java RMI Advantages Disadvantages Handles threads, sockets Strictly Java Garbage Collection Security Issues Serialization Overhead • Overall not efficient! 18
  • 19. Part 2: Making it Faster Alternatives • SOAP: uses HTTP as transport • XML-RPC: same advantages, no support for unicode characters • CORBA: supports concurrency; security and authentication • RAW Sockets: no overhead, no 3rd party libraries 19
  • 20. Part 2: Making it Faster Benchmarking Alternatives SOAP XML-RPC CORBA Raw Sockets 0.294 0.30 0.23 0.15 0.083 0.08 0.005 0 0.001 20 Courtesy of IBM DeveloperWorks Web Services
  • 21. Part 2: Making it Faster Sockets Implementation • Lot of code ‣ Use NIO package • Error Control ‣ Ensure it passes all test cases • Concurrency ‣ PADRES provides framework 21
  • 22. Part 2: Making it Faster Use Cases 22
  • 23. Part 2: Making it Faster Use Cases Supply chain and logistics 23
  • 24. Part 2: Making it Faster Use Cases Supply chain and logistics Job Scheduling and more... 24
  • 25. Progress Status & Summary 25
  • 26. Progress Status & Summary Project Status • On Schedule. Milestones Done? PADRES Installation Yes User-client Interface Yes JavaCC Parsers & Message Creation Yes Integrate & Test Parsers with Client API Yes Broker-broker Communication In Progress Verify & Validate Efficiency Improvement No Stabilize and Release new version of PADRES No 26
  • 27. Progress Status & Summary Summary & Conclusion • Expansion of user-client interface ‣ Parsers for XML, JSON, YAML • Faster messaging technology ‣ Java NIO Sockets • Project is on schedule 27
  • 28. Thank You. Any Questions? 28

×