Presentation is loading. Please wait.

Presentation is loading. Please wait.

JWebSocket as Enterprise Middleware jWebSocket – The Real-time Communication and Messaging Framework DWX Developer Week June, 25th 2013 NCC Ost, Nürnberg.

Similar presentations


Presentation on theme: "JWebSocket as Enterprise Middleware jWebSocket – The Real-time Communication and Messaging Framework DWX Developer Week June, 25th 2013 NCC Ost, Nürnberg."— Presentation transcript:

1 jWebSocket as Enterprise Middleware jWebSocket – The Real-time Communication and Messaging Framework DWX Developer Week June, 25th 2013 NCC Ost, Nürnberg Alexander Schulze Founder jWebSocket CEO Innotrade GmbH Herzogenrath, Germany

2 jWebSocket as Enterprise Middleware Agenda jWebSocket as Middleware, Communication and Messaging Architectures and Integration Security and Performance Demos (ExtJS, jQuery Mobile) Discussion, Questions and Answers Today‘s Session

3 Middleware Message Oriented Middleware (MOM) Separate Software-Level, Decoupling of Apps and Services Intermediate and Support for Distributed Applications Service Oriented Architectures Message Queue, Transactions, Persistence and Durability jWebSocket as Enterprise Middleware

4 Message Broker ( ActiveMQ ) Communication & Messaging jWebSocket as Enterprise Middleware Message Persistence DB AMQP JMS STOMP WebSocket Mail Server Database Server File Server Filesys. JDBC SMTP Application STOMP AMQP WebSocket OpenWire Java.NET Browser Perl Browse r Android iOS Java jWebSocket Server ERP System Service Host

5 Status of Web Communication jWebSocket as Enterprise Middleware HTTP Protocol Designed for document transmission Cumbersome, nearly real-time tricks Polling, Long-Polling Reverse-AJAX, Comet etc. Ultimately non-standardized hacks Remains a Request/Response mechanism

6 jWebSocket as Enterprise Middleware WebSockets - Technology WebSocket Protocol Permanent TCP connections, bidirectional, full-duplex 4oo times less overhead ⅓ of latency Standardized in HTML5 by W3C and IETF protects investments Single TCP Port saves 50% server resources

7 jWebSocket as Enterprise Middleware WebSockets - Technology WebSocket Protocol No Rules for Content Text/Binary Frames, Chunking/Compression Encryption (SSL/TLS) No Limits for Formats/Sub-Protocols JSON, XML, CSV, Map, Object… No Restrictions for Processing Responsible for Logic, Security

8 Compared with HTTP quicker cheaper more portable jWebSocket as Enterprise Middleware WebSockets - Technology

9 jWebSocket - Online Collaboration Experience the Performance! Share a Whiteboard live in this Session! Click our Demo jWebSocket as Enterprise Middleware

10 Technology-State? Available on all Browsers (RFC 6455), Fallbacks for older ones Available on all Platforms, continuously extended Java, C# and Python New: STOMP over WebSockets & jWebSocket JMS Gateway jWebSocket as Enterprise Middleware WebSockets - Technology

11 Tool-Support? Closed Integration into existing Frameworks 11 jWebSocket - Integration jWebSocket as Enterprise Middleware

12 jWebSocket - Integration Integration of Realtime-Comm. into Sencha ExtJS Check out our Demo jWebSocket as Enterprise Middleware

13 Sencha/ExtJS Integration Integration of WebSockets into existing Sencha/ExtJS-Applications Replaces AJAX/XHR-Proxy by jWebSocket-Proxy Worldwide Data Synchronization in Realtime jWebSocket and Sencha/ExtJS as Basis for Online-Collaboration 13 jWebSocket - Integration jWebSocket as Enterprise Middleware

14 jWebSocket Plug-ins (Open Source, Apache 2 Licence) Models: Channels, Events, JMS, MQ with STOMP, AMQP Interfaces: JDBC, SMTP, SMS, CGI, Scripting (JavaScript) Security: Quota, Captcha, Filters, Spring Auth, SSO, SSL/TLS Remote Procedure Calls: C2S-, S2C- and C2C-RPCs Sharing: Data Persistence/Synchronization and Filesharing Social: Chat, Twitter, Instant Messaging (XMPP) Administration: JMX, Logging, Statistics, Monitoring, Reporting, Clustering jWebSocket - Plug-ins

15 jWebSocket as Enterprise Middleware WebSockets - Technology WebSocket Summary Designed for highly interactive Web Applications, high level of freedom Supports stationary & mobile, browser based & native apps Not just a protocol, but a new paradigm Request/Response Real-Time Comm. Perfect Basis for Low-Latency Community and Enterprise Middleware

16 Demand from Developers, Providers and Users Compatibility Interoperability Independency Integratability Reliability Security jWebSocket as Enterprise Middleware Middleware - Goals

17 Demand from Developers, Providers and Users Availability Scalability Extendability Flexability Simplicity Maintainability jWebSocket as Enterprise Middleware Middleware - Goals

18 jWebSocket as Enterprise Middleware jWebSocket - Middleware jWebSocket Middleware Combining Real-Time Communication with Message Queuing Integration: Web Frameworks, Devices, Clients, Servers, Services Abstraction: Tokens, Plug-Ins, Apps Decoupling: Interfaces Security: Roles, Filters, Quotas, Encryption

19 jWebSocket as Enterprise Middleware Queues and Topics Queues for Point-2-Point Connections Topics for Publish/Subscribe Environments Middleware - Queues/Topics Queue Topic Consumer Producer

20 jWebSocket as Enterprise Middleware Message Selectors Source-Id und Target-Id (z.B. targetId = “JDBCService“) Advisory Topics Connect / Disconnect (Service Availability) Message Expiration No Cosumer Listening Further Destination Policies Middleware - Selectors/Advisory Topic Consumer targetId = 1 Consumer targetId = 2 Consumer targetId = 3 Consumer targetId = 3 Consumer targetId = 4 Producer sourceId = 1 Producer sourceId = 2 Producer sourceId = 3 Producer sourceId = 4 Message with sourceId = 3 and targetId = 2 EndPoint endPointId = 1 EndPoint endPointId = 2 EndPoint endPointd = 3 EndPoint endPointId = 4 Topic P P C C P P C C P P C C P P C C

21 jWebSocket as Enterprise Middleware Message Persistence & Durability Acknowledge & Auto Acknowledge Expiration Option Notification via Advisory-Topic Persistence: „Survive a Broker Restart“ Durable Subscriptions „Survive a Endpoint Restart“ Middleware - Persistence/Durability

22 jWebSocket as Enterprise Middleware Message Persistence & Durability Acknowledge & Auto Acknowledge Expiration Option Notification via Advisory-Topic Persistence: „Survive a Broker Restart“ Durable Subscriptions „Survive a Endpoint Restart“ Middleware - Persistence/Durability

23 jWebSocket as Enterprise Middleware Live Slideshow A typical Topic Messaging Application One or multiple Producers: „The Presenters“ Many Consumers: „The Audience“ Middleware - Messaging Demo

24 jWebSocket - JMS Gateway jWebSocket as Enterprise Middleware Message Broker (Active MQ) AMQP JMS STOMP JavaScript Mail Server Database Server File Server JMS Gateway jWebSocket Server Filesys. JDBC SMTP... JavaScript WebSocket ws://host:8787 OpenWire tcp://host:61616 STOMP stomp://host:61613 AMQP stomp://host:5672 STOMP over WebSockets ws://host:61614 Java.NET App Web-Browser Perl/Ruby/.. Web-Browser 24

25 App Plug-in XMLJSON CSV XMLJSON CSV jWebSocket as Enterprise Middleware jWebSocket - Abstraction Tokens (Abstraction) Endpoints are stupid Common language to understand messages Dataformats JSON, XML or CSV Solution: Abstract Data Objects, in jWebSocket Token jWebSocket Core Message Abstraction Layer ( Token-Processors, extendable ) STOMP Endpoint JMS Endpoint WebSocket Browser WebSocket Native Client jWebSocket Engines JMS Gateway Message Security Layer ( Token-Filters, extendable ) Token

26 STOMP over WebSockets S imple T ext O riented M essaging P rotocol Clients for... Ruby, Perl, C, C++, C#,.Net, Flash, Delphi, Java, Objective C, Python, PHP, JavaScript STOMP over WebSockets Thanks to Jeff Mesnil and Jeff Lindsay jWebSocket as Enterprise Middleware Message Persistence DB Browser WebSocket STOMP over WebSockets ws://host:61614 Perl STOMP STOMP stomp://host:61613 jWebSocket JMS Gateway OpenWire/JMS tcp://host:61616 Active MQ JMS AMQP STOMP WebSocket

27 jWebSocket as Enterprise Middleware Security Instances Encryption Transport encryption via SSL/TLS Authentication Against the Broker, many sources (LDAP, JAAS, JDBC, XML … ) Authorization for Queue Roles for Read, Write and Administration Message Level Authorization Routing Permissons, Validation of Content MessageAuthorizationPolicy, isAllowedToConsume More sophisticated mechanims via plug-ins Security Instances decoupled from Applications Middleware - Security

28 jWebSocket Security Encryption SSL/TLS ws:// and wss:// Inbound/Outbound Filter Role based Authentication and Authorization with Spring Security Quotas and Captchas jWebSocket as Enterprise Middleware jWebSocket - Security jWebSocket Server In System-Filter Out WebSocket Client / JMS Endpoint In Custom-/Admin Filter Out Plug-ins (Chain) Token Administrator Authentication & Authorization

29 Middleware Scaling jWebSocket as Enterprise Middleware Middleware - Scaling Database Server/Cluster Message Persistence Database Cluster Active MQ Cluster Gateway Web Client JMS Client failover (tcp:host1,tcp:host2) jWebSocket JMS Service failover (tcp:host1,tcp:host2) Mail Server File Server JMS Queues/Topics

30 jWebSocket as Enterprise Middleware jWebSocket as Middleware Summary WebSocket replaces HTTP Higher Speed & User Experience jWebSocket integrates Web Frameworks Simple & Rapid Implementation Messaging for Reliability & Scalability Higher Availability & Security for Services Middleware Solution for Community & Enterprises

31 Questions & Answers Alexander Schulze Forum & Download: jWebSocket as Enterprise Middleware Thank you for your attention!


Download ppt "JWebSocket as Enterprise Middleware jWebSocket – The Real-time Communication and Messaging Framework DWX Developer Week June, 25th 2013 NCC Ost, Nürnberg."

Similar presentations


Ads by Google