我最近找到一个国产的开源网关Apinto,纯go语言编写,并且支持多种协议转换。

我给你简单展示下http协议转dubbo协议,Apinto的安装步骤我就不展示了,只看效果。

Apinto地址如下:https://github.com/eolinker/apinto

准备好一个java的dubbo服务端

package cn.demo.model;public class User {String name;int id;Integer age;
}package cn.demo.api.UserService;import cn.demo.model.User;
import java.util.List;
import java.util.Map;public interface UserService {User sayHello(User user);//输入什么输出什么
}

接下来准备配置Apinto

  • 创建一个全局的http转dubbo插件

curl -X POST  'http://127.0.0.1:9400/api/setting/plugin' \
-H 'Content-Type:application/json' \
-d '{"plugins":[{"id":"eolinker.com:apinto:http_to_dubbo2","name":"http-to-dubbo","status":"enable"}]
}'
  • 创建一个上游服务,绑定dubbo服务

curl -X POST  \'http://127.0.0.1:9400/api/service' \-H 'Content-Type:application/json' \-d '{"name": "dubbo_service","driver": "http","description": "","timeout": 3000,"retry": 3,"scheme": "HTTP","nodes": ["127.0.0.1:20880"],"balance": "round-robin"
}'
  • 创建一个http路由,绑定上游服务和http转dubbo协议的插件,并配置相关信息

curl -XPOST\'http://127.0.0.1:9400/api/router'\-H'Content-Type:application/json'\-d'{"name": "http_router","driver": "http","description": "","location": "/sayHello","rules": [],"plugins":{"http-to-dubbo":{"disable":false,"config":{"method":"sayHello","service":"com.demo.api.UserService","params":[{"class_name":"com.demo.model.User"}]}}},"service": "dubbo_service@service","template":""
}'
  • 发起http请求测试

curl -X POST  \'http://127.0.0.1:8099/sayHello' \-H 'Content-Type:application/json' \-d '{"name": "xxx","id":10}'
  • 执行后结果如下,表示转发成功啦

一款支持http与dubbo协议互相转换的网关相关推荐

  1. SPT20 协议_至为芯科技IP5356又一款支持PD输出20W的全协议快充移动电源SOC

    至为芯科技IP5356又一款支持PD输出20W的全协议快充移动电源SOC IP5356,支持高低压SCP.双向PD3.0 等全部快充协议的移动电源SOC 一,概述: IP5356 是一款集成QC2.0 ...

  2. dubbo协议_Dubbo框架支持多少种协议?各有什么特点?文中一一为你揭晓

    概述 Dubbo 允许配置多协议,在不同服务上支持不同协议或者同一服务上同时支持多种协议. 除了dubbo协议外, Dubbo框架还支持另外8种服务暴露协议,如rmi协议. hessian协议. ht ...

  3. 《安富莱嵌入式周报》第287期:下一代Windows12界面,支持各种工业以太网协议参考,百款在线电子开发工具,seL4安全微内核,旋转拨号手机,PSP掌机逆向

    往期周报汇总地址:嵌入式周报 - uCOS & uCGUI & emWin & embOS & TouchGFX & ThreadX - 硬汉嵌入式论坛 - P ...

  4. java dubbo协议_Dubbo同时支持多种协议(以dubbo和rest为例)

    一. 背景知识 有时候微服务需要提供给多个消费者, 而不通过的消费者可能希望依据自身情况使用不同的协议. 另一方面, 有时候如果原本服务以 dubbo 协议提供服务, 但是为了调试或者监控方便, 我们 ...

  5. dubbo 支持的9种协议

    Dubbo支持dubbo.rmi.hessian.http.webservice.thrift.redis等多种协议,可是Dubbo官网是推荐咱们使用Dubbo协议的.html 目录 1.9种协议 一 ...

  6. dubbo 支持的7种协议

    dubbo 支持的7种协议 建议看原文 转自:https://blog.csdn.net/xiaojin21cen/article/details/79834222 1.dubbo 协议 (默认) 2 ...

  7. dubbo协议_Dubbo协议解析与OPPO自研ESA RPC框架实践

    本文来自OPPO互联网基础技术团队,转载请注名作者.同时欢迎关注我们的公众号:OPPO_tech,与你分享OPPO前沿互联网技术及活动. 1. 背景 Dubbo是一款高性能.轻量级的开源Java RP ...

  8. dubbo协议_阿里P8架构师谈微服务架构:Dubbo+Docker+SpringBoot+Cloud

    微服务架构 什么是微服务架构呢?简单说就是将一个完整的应用(单体应用) 按照一定的拆分规则(后文讲述)拆分成多个不同的服务,每个服务都能独立地进行开发.部署.扩展.服务于服务之间通过注入RESTful ...

  9. dubbo协议_一文详细解读 Dubbo 中的 http 协议

    太阳红彤彤,花儿五颜六色,各位读者朋友好,又来到了分享 Dubbo 知识点的时候了.说到 Dubbo 框架支持的协议,你的第一反应是什么?大概会有 Dubbo 默认支持的 dubbo 协议,以及老生常 ...

最新文章

  1. Cesium 创建Geometry
  2. 量子计算机到底神在哪里说明文,“九章”量子计算机到底有多神!
  3. 【待继续研究】解析机器学习技术在反欺诈领域的应用
  4. android 的弱网测试,Android APP弱网测试问题和解决分析
  5. cmd输入pip报错_Houdini安装外部python库(pip)
  6. list转datatable,SqlBulkCopy将DataTable中的数据批量插入数据库
  7. 07 js自定义函数
  8. IP地址查询接口及调用方法
  9. html分页过多,实现分页处理,固定分页数目,数目始终中间显示,自定义分页跳转(在结尾的代码)
  10. html弹窗代码大全定时弹窗,js点击弹窗弹出表单框代码
  11. linux录制声卡声音_Linux ALSA 多声卡操作
  12. div+css+js实现深圳交互地图
  13. 手机停机后你们知道怎么打电话?教你鲜为人知的手机锦囊
  14. 2022年:企业绩效管理蓝图
  15. 数显之家快讯:【SHIO世硕心语】2021年,中国最赚钱的时代到来!
  16. skylake服务器处理器M系列,详解第6代英特尔酷睿M处理器!
  17. java获取b站动态列表地址,java获取B站弹幕文件的两种方案
  18. linux ps2键盘不能用,解决usb鼠标与ps2键盘合用时开机键盘失效
  19. 网管型工业交换机的应用优势
  20. 云计算的模型都有哪些

热门文章

  1. Java在PDF文档中添加或删除页面
  2. Ubuntu防火墙状态整理
  3. 验证中国的座机号的正则表达式
  4. 22.数组和指针的姻缘
  5. python3.8安装robotfrmework-ride安装及报错完美解决方法
  6. wps打印缩放到一页_WPS文档过长时,如何在A4纸上完美打印
  7. 易语言单窗口单进程单IP技术
  8. 关于一政网教育,考生们是如何看待的?
  9. 【英语语法-谓语时态】
  10. 10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 scre