Yes.

Thanks.


On Fri, May 23, 2014 at 8:57 AM, Sagara Gunathunga <[email protected]> wrote:

>
>
>
> On Fri, May 23, 2014 at 8:50 AM, Rajkumar Rajaratnam 
> <[email protected]>wrote:
>
>> Hi Sagara, KasunG,
>>
>> As part of the R&D work, we tried couple of 3rd party RPC Implementation
>> libraries with ProtoBuf.
>>
>> We got our own sample services working.
>>
>> protobuf-rpc-pro[1] is a best one in terms of features. Notable features
>> are,
>>
>>    - TCP connection keep-alive.
>>    - Bi-directional RPC calls from client to server and server to
>>    client.
>>    - SSL socket layer encryption option.
>>    - Data Compression option.
>>    - RPC call cancellation.
>>    - RPC call timeout.
>>    - Out-of-Band RPC server replies to client.
>>    - Non RPC Protocol Buffer messaging for peer to peer communication.
>>    - Protocol Buffer wire protocol.
>>    - Semantics for calls handling on TCP connection closure.
>>    - Pluggable logging facility.
>>    - Author is very active (His last commit was the day before yesterday)
>>    - It is available in maven repo.
>>
>> You can find an architecture diagram of this library here[2]
>>
>> However, we are going to demonstrate 3 different sample client-sever
>> applications implemented using 3 different libraries.
>>
>> We will demonstrate you that, using protobuf-rpc-pro library[1],
>>
>
> Shall we meet around 2 PM today ?
>
> Thanks !
>
>>
>>    - Multiple services can be exposed at a single server port
>>    - Multiple clients can access them simultaneously
>>
>> We would like to have a meeting as early as possible today. If we are
>> okay with this library, we can go ahead and discuss about architecture.
>>
>> 1. https://code.google.com/p/protobuf-rpc-pro/
>>
>> 2. https://code.google.com/p/protobuf-rpc-pro/wiki/ComponentArchitecture
>>
>> Thanks.
>>
>>
>> On Thu, May 22, 2014 at 12:44 PM, Denuwanthi De Silva <
>> [email protected]> wrote:
>>
>>> Hi,
>>>
>>> Yes, it supports TCP.
>>> We are currently working on developing a sample with multiple services.
>>>
>>> Thanks & Regards,
>>> Denuwanthi.
>>>
>>>
>>>
>>> On Thu, May 22, 2014 at 12:21 PM, Sagara Gunathunga <[email protected]>wrote:
>>>
>>>>
>>>>
>>>>
>>>> On Thu, May 22, 2014 at 11:50 AM, Kasun Gajasinghe <[email protected]>wrote:
>>>>
>>>>> Hi Rajkumar,
>>>>>
>>>>> These implementations looks interesting. It's better if we can adapt a
>>>>> framework like this.
>>>>>
>>>>> Thrift has a built-in RPC framework, but the issue there was the need
>>>>> to have one network port per service. So, make sure the library you are
>>>>> going to use do not have this type of issues. It might be better if you
>>>>> could look into the internals of the chosen RPC framework to better
>>>>> understand the architecture.
>>>>>
>>>>> The MIT license is compatible with ASL 2.0. But GPL is not. So,
>>>>> RCFProto is out of the picture.
>>>>>
>>>>> Thanks,
>>>>> KasunG
>>>>>
>>>>>
>>>>> On Thu, May 22, 2014 at 11:14 AM, Rajkumar Rajaratnam <
>>>>> [email protected]> wrote:
>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> We just went through Protocol Buffers yesterday and got to know some
>>>>>> more information.
>>>>>>
>>>>>> We can define 'RPC Service Interface' in a .proto file and the
>>>>>> protocol buffer compiler will generate service interface code and stubs 
>>>>>> in
>>>>>> your chosen language.
>>>>>>
>>>>>> The stub forwards all calls to an RpcChannel, which in turn is an
>>>>>> abstract interface that you must define yourself in terms of your own RPC
>>>>>> system. For example, you might implement an RpcChannel which
>>>>>> serializes the message and sends it to a server via HTTP[1].
>>>>>>
>>>>>> Hence, we can define our own RpcChannel.
>>>>>>
>>>>>> But, there are number of third party project with specific RPC
>>>>>> implementations. Some of Java implementations are,
>>>>>>
>>>>>>
>>>>>>    - protobuf-socket-rpc [2]
>>>>>>
>>>>>>    Java and Python protobuf rpc implementation using tcp/ip sockets
>>>>>>    MIT License
>>>>>>
>>>>>>    - cxf-protobuf [3]
>>>>>>
>>>>>>    Integrate Google's Protocol Buffers and Apache CXF
>>>>>>    Apache License 2.0
>>>>>>
>>>>>>    - protobuf-rpc-pro [4]
>>>>>>
>>>>>>    A java ProtocolBuffers RPC implementation featuring bidirectional
>>>>>>    calls.
>>>>>>    Apache License 2.0
>>>>>>
>>>>>>  It seems this has nice TCP handling capabilities ? do you guys have
>>>> any working sample ?
>>>>
>>>>   BTW we need to ensure whether it can listen on one port and accept
>>>> requests from multiple services.
>>>>
>>>> Thanks !
>>>>
>>>>
>>>>
>>>>>
>>>>>>    -
>>>>>>    - RCFProto [5]
>>>>>>
>>>>>>    RPC implementation for Google Protocol Buffers, based on the RCF
>>>>>>    networking library
>>>>>>
>>>>>>    GPL v2, for open source usage.
>>>>>>    Commercial license, for closed source usage.
>>>>>>
>>>>>> WDYT about using these 3rd party libraries? If we can use these, we
>>>>>> can look into details.
>>>>>>
>>>>>> 1. https://developers.google.com/protocol-buffers/docs/proto#services
>>>>>>
>>>>>> 2. https://code.google.com/p/protobuf-socket-rpc/
>>>>>>
>>>>>> 3. https://code.google.com/p/cxf-protobuf/
>>>>>>
>>>>>> 4. https://code.google.com/p/protobuf-rpc-pro/
>>>>>>
>>>>>> 5. http://www.deltavsoft.com/RCFProto.html
>>>>>>
>>>>>>
>>>>>> Thanks.
>>>>>>
>>>>>> --
>>>>>> Rajkumar Rajaratnam
>>>>>> Software Engineer | WSO2, Inc.
>>>>>>  Mobile +94777568639 | +94783498120
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>>
>>>>> *Kasun Gajasinghe*Senior Software Engineer, WSO2 Inc.
>>>>> email: kasung AT spamfree wso2.com
>>>>> linked-in: http://lk.linkedin.com/in/gajasinghe
>>>>> blog: http://kasunbg.org
>>>>>
>>>>>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Sagara Gunathunga
>>>>
>>>> Senior Technical Lead; WSO2, Inc.;  http://wso2.com
>>>> V.P Apache Web Services;    http://ws.apache.org/
>>>> Linkedin; http://www.linkedin.com/in/ssagara
>>>> Blog ;  http://ssagara.blogspot.com
>>>>
>>>>
>>>
>>>
>>> --
>>> Denuwanthi De Silva
>>> Software Engineer;
>>> WSO2 Inc.; http://wso2.com,
>>> Email: [email protected]
>>>
>>>
>>>
>>
>>
>> --
>> Rajkumar Rajaratnam
>> Software Engineer | WSO2, Inc.
>> Mobile +94777568639 | +94783498120
>>
>
>
>
> --
> Sagara Gunathunga
>
> Senior Technical Lead; WSO2, Inc.;  http://wso2.com
> V.P Apache Web Services;    http://ws.apache.org/
> Linkedin; http://www.linkedin.com/in/ssagara
> Blog ;  http://ssagara.blogspot.com
>
>


-- 
Rajkumar Rajaratnam
Software Engineer | WSO2, Inc.
Mobile +94777568639 | +94783498120
_______________________________________________
Architecture mailing list
[email protected]
https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture

Reply via email to