armeria icon indicating copy to clipboard operation
armeria copied to clipboard

Add hessian support

Open eisig opened this issue 4 years ago • 7 comments

Motivation:

Add hessian RPC support.

Modifications:

  • Use RpcService and RpcClient to implement hessian RPC support.
  • Support return CompletionStage/CompletableFuture as async api.
  • Compatible with other implementations

eisig avatar Dec 16 '21 06:12 eisig

Wow, thanks a lot for volunteering this. 😄 TBH, this is the first time that I have ever heard of the hessian protocol. 😅 Are you using this protocol or implementing it just for fun?

I also found some resources from its website: http://hessian.caucho.com Do you have any other information that I can refer to? such as comparing with other protocols etc.

minwoox avatar Dec 16 '21 07:12 minwoox

Hessian is maybe a little too old. But we use hessian as RPC protocol in many services. Last year we start using Armeria to build new gRPC services.
For the old hessian services, In order to use service discovery, support async API, and the powerful Armeria decorators, We use Armeria to build a new client.

Spring integration support hessian. (It is deprecated now) https://docs.spring.io/spring-framework/docs/current/reference/html/integration.html#remoting-caucho-protocols-hessian

Dubbo also support hessian https://dubbo.apache.org/en/docs/v2.7/user/maturity/

eisig avatar Dec 16 '21 07:12 eisig

Thanks for the answer. 😆 It's really great to listen that you like Armeria. Yeah, supporting Hessian is definitely a good addition to Armeria. 😄

minwoox avatar Dec 16 '21 13:12 minwoox

@eisig This is huge! General design looks good to me. Please ping us when you think it's ready for review or you have any questions.

trustin avatar Jan 09 '22 09:01 trustin

@eisig How's this PR going? Anything we can help you with?

trustin avatar Mar 14 '22 08:03 trustin

@trustin apologize for not making progress for so long. The past few months have been busy with new projects. Today I will restart working this PR.

eisig avatar May 09 '22 11:05 eisig

CLA assistant check
All committers have signed the CLA.

CLAassistant avatar May 16 '22 16:05 CLAassistant