zoukankan      html  css  js  c++  java
  • 在.net core中使用Thrift

      Thrift应用比较广泛,这里不介绍Thrift的基本概念和使用。Thrift对.net支持的很好,但自从.net core诞生引来,我曾多次关注Thrift的官方网站,看看对.net core是否提供支持。今天在看Thrift在Github上的代码镜像时,发现已经有netcore的实现了。地址:https://github.com/apache/thrift/tree/master/lib/netcore.但是看到介绍的第一段文字,不免觉得遗憾“Thrift client library ported to Microsoft .Net Core”,难道只支持Client?于是搜了很多资料,并没有太多介绍,甚至Client的Demo也没有。于是尝试翻看代码,似乎有相关的Server实现,可能是还没有正式发布的缘故。

      不管怎么样,动手试一下。

    1、准备工作

      下载Thrift的netcore部分的代码,是一个.net core的项目,编译通过。

      下载Thrift compiler for Windows代码生成工具,thrift-0.11.0.exe,可到官网下载。

      编写thrift IDL文件:

    namespace netcore ThriftCore
    
    service Calculator{
    
      void ping(),
    
      i32 add(1:i32 num1, 2:i32 num2)
    
    }

      在命令行中执行“thrift-0.11.0.exe --gen netcore tutorial.thrift”,会在目录下生成“gen-netcoreThriftCoreCalculator.cs”。这部分使用与以前一致,只是语言部分需要指定netcore,而不是csharp。完成后,将Calculator.cs加入到项目中,开始编写服务器和客户端。

    2、服务器端实现:

    3、客户端实现:

      最后验证结果:

    4、结论

      Thrift能够实现.net core下的Server和Client。根据Github上的描述,.net core在部分功能上支持不全面,期待早日有稳定版的发布。

  • 相关阅读:
    .net对象生命周期 一) 转载
    HTTP的版本 转载
    sql server sql语句判断是否有表备注并进行新增或修改
    sql server update触发器
    vs文件属性复制到输出目录 转载
    c#使用log4net记录日志 转载
    windows服务定时器 转载
    vs创建项目以后修改https为http
    消息队列 转载
    nmp 设置淘宝镜像
  • 原文地址:https://www.cnblogs.com/zhaiyf/p/8351361.html
Copyright © 2011-2022 走看看