Changes for page Remoting
Last modified by christoph_lechleitner@iteg_at on 2022-08-08 10.40:02
From version 1.1
edited by christoph_lechleitner@iteg_at
on 2012-06-14 06.08:08
on 2012-06-14 06.08:08
Change comment:
There is no comment for this version
To version 5.1
edited by christoph_lechleitner@iteg_at
on 2022-05-30 02.40:38
on 2022-05-30 02.40:38
Change comment:
Protocol and Client / Server Support
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,37 +1,74 @@ 1 -(% class="contentLayout" data-atlassian-layout="{~"name~":~"pagelayout-two-right~",~"columns~":[~"large~",~"aside~"],~"header~":true,~"footer~":true}" %) 2 -((( 3 -(% class="header" %) 4 -((( 5 -This is the home of the Remoting space. 1 += {{id name="RemotingHome-Introduction"/}}Introduction = 6 6 7 -To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, blogging and commenting you'll see the macros below fill up with all the activity in your space. 8 -))) 3 +Remoting is a framework issuing remote calls over TCP/IP with optional TLS support. It provides for callback patterns, broadcating and bean support and interoperates well with the [[spring framework>>url:http://www.springframework.org/||shape="rect"]] and [[OSGi>>url:http://www.osgi.org||shape="rect"]]. 9 9 10 -(% class="columnLayout twoColumns" %) 11 -((( 12 -(% class="cell large" %) 13 -((( 14 -(% class="innerCell" %) 15 -((( 16 -{{recently-updated/}} 17 -))) 18 -))) 5 +Furthermore, it offers two alternative wire protocols. One is based on java.io.ObjectOuputStream while the other protocol uses a highly optimized binary data stream, which additionally features C++ interoperability through the fancysock library. 19 19 20 -(% class="cell aside" %) 21 -((( 22 -(% class="innerCell" %) 23 -((( 24 -====== {{id name="RemotingHome-Navigatespace"/}}Navigate space ====== 7 +The source code can be checked out from the SVN repository located here: 25 25 26 -{{locationSearch reference="WebHome"/}} 9 +{{code language="none"}} 10 +http://svn.clazzes.org/svn/remoting 11 +{{/code}} 27 27 28 -{{documentTree root="document:REM.WebHome"/}} 29 -))) 30 -))) 31 -))) 13 +For manual installation you may download the .jar files from the maven repository: 32 32 33 -(% class="footer" %) 34 -((( 35 - 36 -))) 37 -))) 15 +{{code language="none"}} 16 +http://maven.clazzes.org/org/clazzes/remoting/ 17 +{{/code}} 18 + 19 += {{id name="RemotingHome-Mavenintegration"/}}Maven integration = 20 + 21 +We recommend to build your project with [[Maven>>url:http://maven.apache.org/||shape="rect"]]. Just add the following snippets to your {{code language="none"}}pom.xml{{/code}} file: 22 + 23 +{{code language="none"}} 24 +<repository> 25 + <id>clazzes.org</id> 26 + <url>http://mvn.clazzes.org/</url> 27 +</repository> 28 + 29 +<dependency> 30 + <groupId>org.clazzes</groupId> 31 + <artifactId>remoting</artifactId> 32 + <version>yourversion</version> 33 +</dependency> 34 +{{/code}} 35 + 36 += {{id name="RemotingHome-Sourcecodeandissuetracker"/}}Source code and issue tracker = 37 + 38 +--Subversion: [[http:~~/~~/svn.clazzes.org/svn/remoting>>url:http://svn.clazzes.org/svn/remoting||shape="rect"]]-- 39 + 40 +--Jira: [[REMOTING>>url:https://jira.clazzes.org/browse/REMOTING||shape="rect"]]-- 41 + 42 +Git-Mirrors: See [[https:~~/~~/git.clazzes.org/>>url:https://git.clazzes.org/||shape="rect"]], search for "{{code language="none"}}java-libs/rpc{{/code}}". 43 + 44 += {{id name="RemotingHome-ProtocolandClient/ServerSupport"/}}Protocol and Client / Server Support = 45 + 46 +== {{id name="RemotingHome-BinaryProtocol"/}}Binary Protocol == 47 + 48 +The binary protocol that is based on but not quite equal to Java serialization. 49 + 50 +Both Java and C++ can act as client and server for this variant. 51 + 52 +=== {{id name="RemotingHome-BinaryProtocolC++"/}}Binary Protocol C++ === 53 + 54 +For C++ see {{code language="none"}}fancysock3-dev{{/code}} from the {{code language="none"}}*-fancylibs-3{{/code}} repos on [[deb.clazzes.org>>url:https://deb.clazzes.org/||shape="rect"]] and [[rpm.clazzes.org>>url:https://rpm.clazzes.org/||shape="rect"]]. 55 + 56 +As as starting point look at class {{code language="none"}}Fancy::Sock::RemotingConnectionHandlerFactory{{/code}} (server) and {{code language="none"}}Fancy::Sock::RemotingClientPool{{/code}} (client). 57 + 58 +== {{id name="RemotingHome-JSONProtocol"/}}JSON Protocol == 59 + 60 +The JSON protocol is based on JSON-RPC-2.0 and supported by a server helper for C++, and there are examples for JavaScript clients (but nothing public yet). 61 + 62 +=== {{id name="RemotingHome-JSONProtocolC++"/}}JSON Protocol C++ === 63 + 64 +For C++ see {{code language="none"}}fancysock3-dev{{/code}} from the {{code language="none"}}*-fancylibs-3{{/code}} repos on [[deb.clazzes.org>>url:https://deb.clazzes.org/||shape="rect"]] and [[rpm.clazzes.org>>url:https://rpm.clazzes.org/||shape="rect"]]. 65 + 66 +As as starting point look at class {{code language="none"}}Fancy::Sock::HttpD::JsonRpc2RequestHandler{{/code}}. 67 + 68 +=== {{id name="RemotingHome-JSONProtocolJavaScript"/}}JSON Protocol JavaScript === 69 + 70 +There is no public example from clazzes.org yet, but it's basically JSON-RPC-2.0. 71 + 72 +\\ 73 + 74 +\\
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 - 6592711 +947257360 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://clazzes.atlassian.net/wiki/spaces/REM/pages/ 659271/Remoting Home1 +https://clazzes.atlassian.net/wiki/spaces/REM/pages/947257360/Remoting Home