java吧 关注:1,185,900贴子:12,588,697
  • 9回复贴,共1

想问个关于微服务的

只看楼主收藏回复

大家都是用Spring Cloud去实现么,因为按照我看到的Spring Cloud的话就意味着所有微服务的语言是一致的吧。
就是都只能用Java,本来微服务不是也考虑可以使用任意开发语言么?
例如我现在想把.net的项目和Java还有新做的Nodejs项目都使用注册中心和配置中心联系起来,做成类似微服务的概念,这样完全做不了?
或者是得找一个帮助完成部分微服务工作的框架,如Istio这种?然后自己想办法完成远程调用变成本地代码调用的那部分工作?


IP属地:广东1楼2023-05-15 22:27回复
    可以用thrift,支持不同语言的远程调用
    另外http协议也是通用的,支持多种语言。
    cloud不能用java以外的语言是因为rpc框架用的是feign,只提供了java的实现
    换成spring cloud alibaba / dubbo作为rpc框架,通信协议采用thrift/http/dubbo/grpc都是可以支持跨语言的


    IP属地:江苏来自Android客户端2楼2023-05-16 01:14
    回复

      thrift支持.net node.js,但thrift只提供了远程调用的功能,不涉及配置中心和注册中心,只用thrift作为RPC框架需要自行实现配置中心和注册中心的功能。也就是说thrift只支持IP端口对IP端口的点对点调用,不支持服务注册和服务发现,需要自行开发

      dubbo支持配置中心和注册中心(默认用Zookeeper),但只支持node.js,不支持.net
      我公司有微服务是C++,架构组研究了dubbo的原理后自行开发了C++版本的dubbo并投入使用


      IP属地:江苏3楼2023-05-16 01:33
      收起回复
        https://www.cnblogs.com/hf-0712/p/7662204.html
        找到个大佬使用.net兼容dubbo


        IP属地:江苏4楼2023-05-16 01:40
        回复
          语言之间有专门互相调用的中间技术,比如JAVA和c加加有jni


          IP属地:四川来自Android客户端6楼2023-05-16 12:00
          收起回复
            为什么不能 不然自己试着写一个可以整合的呗


            IP属地:北京来自Android客户端7楼2023-05-16 14:46
            回复