当前位置: 首页 > news >正文

优维低代码:第三方接口接入

 优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。


连载第四十四期

《现场定制:定制第三方接口接入》

# 第三方接口接入

通过定制 provider 来对接第三方接口,有 2 种调用方案:

1.直接调用第三方接口 url,但这里会有跨域的问题,需要第三方接口开放跨域访问

2.将第三方接口注册到优维的 api_gateway,这样不会有跨域的问题,同时还提供了:

  • 后端 api 不需要直接暴露给浏览器,避免安全问题
  • 名字服务路由能力,避免单点和 hardcode ip
  • 当前登录用户传递

# api_gateway 配置

首先,这要说明下部署架构,如下图所示:

 

api_gateway 提供了统一的转发请求服务(如果是集群部署,则在对外服务的逻辑机器上,一般有 2 台或 3 台)

cd /usr/local/easyops/api_gateway/
vim conf/conf.default.yaml

你将能看到如下配置:

gateway:services:- name: cmdb.* # 匹配 uri 的前缀addr_type: ens # ens|direct, direct 表示不走 ens 解析,直接配置目标地址,不填时默认为 ensservice_name: logic.cmdb.resourcehostname: cmdb_resource.easyops-only.comdefault_policy: allow # allow|deny

conf.default.yaml 为默认配置,如果需要现场修改,请在 conf.yaml(如果没有,则新建)做个性化修改,实际配置将会合并两者

vim conf/conf.yaml

将如下内容添加到 conf.yaml 里面

gateway:services:# 添加如下配置,将匹配浏览器调用的 uri:/api/gateway/your-api-prefix.xxx/aa/bb/- name: your-api-prefix.* # 匹配 uri 的前缀addr_type: ensservice_name: logic.your-api-service-namehostname: your-api-host-namedefault_policy: allow # allow|deny

随后注册 service_name:
/usr/local/easyops/ens_client/tools/register_service.py logic.your-api-service-name api-port api-ip

可注册多个实例,注册多个则在调用时候为轮询策略

[root@monitor_10_0_5_10 api_gateway]# /usr/local/easyops/ens_client/tools/register_service.py logic.your-api-service-name 8000 192.168.100.89
try register service(logic.your-api-service-name, 8000) at (127.0.0.1:9100)
register service(logic.your-api-service-name, 8000) success!
[root@monitor_10_0_5_10 api_gateway]# /usr/local/easyops/ens_client/tools/get_all_service.py logic.your-api-service-name
23377279359414395 192.168.100.89 8000

如果想查看当前注册的所有名字服务,请在浏览器手动输入
http://your-easyops-console-host/admin/ens 查看列表

相关文章:

优维低代码:第三方接口接入

优维低代码技术专栏,是一个全新的、技术为主的专栏,由优维技术委员会成员执笔,基于优维7年低代码技术研发及运维成果,主要介绍低代码相关的技术原理及架构逻辑,目的是给广大运维人提供一个技术交流与学习的平台。 连载…...

SQL 177. 第N高的薪水

SQL 177. 第N高的薪水数据需求解决方法1方法2题目 : https://leetcode.cn/problems/nth-highest-salary/ 数据 Create table If Not Exists Employee (Id int comment 主键列, Salary int comment 工资 );Truncate table Employee;insert into Employee (id, sala…...

14天手撸交互式问答数字人直播教程-课程计划

一、课程计划 二、时间安排 第01天:交互式问答数字人发展现状 从一个真实案例开始,介绍当前主流的交互式数字人平台,需求和应用场景,引入交互式数字人的交互流程和关键技术。后续整个直播系列的内容安排。 第02天:音…...

spring boot3.0新特性Http客户端远程调用

1、安装依赖 <!-- For reactive support --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-webflux</artifactId></dependency>2、项目结构 3、新建配置类WebConfig package com.exa…...

查询联系:多表查询 - 1

查询所有学生的 name&#xff0c;以及该学生在 score 表中对应的 c_no 和 degree 。 SELECT no, name FROM student; ---------------- | no | name | ---------------- | 101 | 曾华 | | 102 | 匡明 | | 103 | 王丽 | | 104 | 李军 | | 105 | 王芳…...

「Bug」OpenCV读取图像为 None 分析

头一次遇到 OpenCV 无法读取图像&#xff0c;并且没有任何提示&#xff0c;首先怀疑的就是中文路径&#xff0c;因为大概率是这个地方出错的&#xff0c;但是修改完依旧是None&#xff0c;这就很苦恼了&#xff0c;分析了下出现None的原因&#xff0c;大概有以下三种情况&#…...

EVO——视觉里程计/SLAM轨迹评估工具

EVO——SLAM轨迹精度评估软件 EVO简介 evo是一款用于视觉里程计VIO和slam轨迹评估 Python 包&#xff08;Linux / macOS / Windows / ROS&#xff09;。能够绘制轨迹&#xff0c;评估轨迹与真值的误差。支持多种数据集的轨迹格式&#xff08;TUM、KITTI、EuRoC的Mav、ROSbag&…...

TCP为什么要三次握手,而不是两次或四次?

文章目录TCP为什么要三次握手&#xff0c;而不是两次或四次&#xff1f;三次握手才可以阻止重复历史连接的初始化&#xff08;主要原因&#xff09;同步双方初始序列号避免资源浪费小结TCP为什么要三次握手&#xff0c;而不是两次或四次&#xff1f; TCP连接时用于保证可靠性和…...

git 命令:工作日常使用

git start 存储分支 git start list 查看所有存储 拉取最新master 合并到自己分支&#xff1a; git remote add [远程名称] [远程仓库链接] //关联(添加)远程仓库; 第一步&#xff1a;查看分支在哪里&#xff0c;是自己的吗&#xff0c;添加暂存区&#xff0c;添加到仓…...

Http和Https

http和https的区别 开销&#xff1a;HTTPS 协议需要到 CA 申请证书&#xff0c;一般免费证书很少&#xff0c;需要交费&#xff1b;资源消耗&#xff1a;HTTP 是超文本传输协议&#xff0c;信息是明文传输&#xff0c;HTTPS 则是具有安全性的 ssl 加密传输协议&#xff0c;需要…...

【计算机网络复习】第三章 传输层 2

UDP: 用户数据报协议 u 简单高效的传输层协议 u 提供“尽力而为(best effort)”服务 UDP数据报可能丢失 接收的顺序可能与发送顺序不一致 u 无连接协议 在发送数据之前&#xff0c;发送端和接收端没有握手(handshaking ) 每个UDP数据报都是独立的&#xff0c;…...

你真的会自动化测试?自动化测试技术选型抉择

自动化测试框架 在学习自动化测试或者实践自动化测试时&#xff0c;我们一定会对一个名词不陌生&#xff0c;那就是“自动化测试框架”&#xff0c;而有些人也将Selenium、Appium这样的工具也称之为“自动化测试框架”&#xff0c;那么到底自动化测试框架如何理解呢&#xff1…...

【id:31】【20分】A. Point(类与构造)

题目描述 下面是一个平面上的点的类定义&#xff0c;请在类外实现它的所有方法&#xff0c;并生成点测试它。 输入 测试数据的组数 t 第一组测试数据点p1的x坐标 第一组测试数据点p1的y坐标 第一组测试数据点p2的x坐标 第一组测试数据点p2的y坐标 .......... 输出 输出…...

ASM字节码处理工具原理及实践(二)

0. 相关分享 ASM字节码处理工具原理及实践&#xff08;一&#xff09; 上一篇讲了ASM的简介、导入&#xff0c;以及字节码文件结构&#xff0c;并给出了ASM通过ClassVisitor对class进行访问的基础实战。本篇将进入MethodVisitor&#xff0c;尝试对方法进行访问、生成、转换。…...

Golang每日一练(leetDay0030)

目录 88. 合并两个有序数组 Merge Sorted Array &#x1f31f; 89. 格雷编码 Gray Code &#x1f31f;&#x1f31f; 90. 子集 II Subsets II &#x1f31f;&#x1f31f; &#x1f31f; 每日一练刷题专栏 &#x1f31f; Golang每日一练 专栏 Python每日一练 专栏 C/…...

QT5.15.2 在线安装下载速度慢的解决办法

系列文章目录 文章目录系列文章目录前言一、解决前言 QT对5.15以及以上版本已经停止提供离线安装包&#xff0c;在线安装网速慢如蜗牛&#xff0c;而且一旦断了又得从头下载&#xff0c;不支持断点续传 由于Qt5.15及以上版本不提供离线安装包&#xff0c;则需要使用在线安装进…...

Cadence Allegro 导出Waived Design Rules Check Report报告详解

⏪《上一篇》   🏡《上级目录》   ⏩《下一篇》 目录 1,概述2,Waived Design Rules Check Report作用3,Waived Design Rules Check Report示例4,Waived Design Rules Check Report导出方法4.1,方法14.2,方法2B站关注“硬小二”浏览更多演示视频...

Java阶段一Day19

Java阶段一Day19 文章目录Java阶段一Day19对象流字符流WriterReader转换流缓冲字符流BufferedWriter与PrintWriterBufferedReader异常Throwable、Error、Exception异常处理机制throwthrowstry-catchfinally面试题教师总结新单词JAVA IO对象流对象输入流构造器方法例transient关…...

radmin远程控制软件怎么样,有没有替代品

Radmin 是流行的、屡获殊荣的安全远程控制软件&#xff0c;它使您能够在远程计算机上实时工作&#xff0c;就像使用它自己的键盘和鼠标一样。 您可以从多个地方远程访问同一台计算机&#xff0c;是网络和管理类别中流行的远程桌面工具。 Radmin 是外国软件&#xff0c;在国内使…...

Java反射面试总结(一)

什么是反射&#xff1f; Java的反射是指在程序运行时&#xff0c;对于任意一个类&#xff0c;都可以获取到这个类的所有属性和方法&#xff0c;并能够对其进行操作。通过反射机制&#xff0c;可以在程序运行时动态地创建对象、调用方法、获取属性值等。反射可以帮助我们更轻松…...

突破性解决方案:3步解决Calibre中文路径乱码,实现100%原生中文支持

突破性解决方案&#xff1a;3步解决Calibre中文路径乱码&#xff0c;实现100%原生中文支持 【免费下载链接】calibre-do-not-translate-my-path Switch my calibre library from ascii path to plain Unicode path. 将我的书库从拼音目录切换至非纯英文&#xff08;中文&#x…...

牛顿-拉夫逊法在电力系统中的5个常见误区:从Matpower仿真结果反推算法原理

牛顿-拉夫逊法在电力系统中的5个常见误区&#xff1a;从Matpower仿真结果反推算法原理 当你在Matpower中运行潮流计算时&#xff0c;是否遇到过迭代不收敛的报错&#xff1f;那些看似简单的"Maximum number of iterations reached"警告背后&#xff0c;往往隐藏着对牛…...

从南邮实验报告看数据结构:顺序表、链表、二叉树、图,这些实验到底在练什么?

解码数据结构实验&#xff1a;从顺序表到图算法的编程思维进阶之路 当你第一次翻开数据结构实验手册&#xff0c;看到那些关于顺序表、链表、二叉树和图算法的题目时&#xff0c;是否曾困惑过这些看似枯燥的操作练习究竟能带来什么实际价值&#xff1f;南邮的这一系列实验设计绝…...

Qwen2.5-VL-7B-Instruct实操手册:对话历史自动保存+一键清空功能详解

Qwen2.5-VL-7B-Instruct实操手册&#xff1a;对话历史自动保存一键清空功能详解 1. 开篇&#xff1a;你的全能视觉助手来了 今天给大家介绍一个特别实用的工具——基于Qwen2.5-VL-7B-Instruct多模态大模型的视觉交互工具。这个工具专门为RTX 4090显卡优化过&#xff0c;用上了…...

番茄矮砧密植:水肥一体化系统铺设全指南

大棚里&#xff0c;老周的番茄挂果累累&#xff0c;红绿相间。“这套系统让我的番茄产量翻了一番&#xff0c;”他指着地里的滴灌设备说&#xff0c;“不仅省工省力&#xff0c;品质还特别稳定。”认识番茄矮砧密植番茄矮砧密植&#xff0c;简单来说就是选用矮生品种&#xff0…...

秀米能做的它都行,AI 写作让内容生产更简单

「选题想破头&#xff0c;初稿磨半天&#xff0c;排版更费神。」这或许是当下许多小编、运营乃至企业内容负责人的日常写照。内容需求暴涨&#xff0c;但高质量产出一直是道门槛。传统的编辑器&#xff0c;如秀米等&#xff0c;已极大简化了图文排版与可视化编辑的流程&#xf…...

Docker Compose 多服务编排实战:从零搭建微服务架构

Docker Compose 多服务编排实战&#xff1a;从零搭建微服务架构 目录 为什么需要 Docker Compose&#xff1f;实战项目架构环境准备核心服务搭建高级特性&#xff1a;负载均衡与服务发现日志集中管理&#xff08;EFK 栈&#xff09;生产环境最佳实践常见问题排查 为什么需要 …...

OpenClaw+GLM-4.7-Flash:个人网络安全监控助手

OpenClawGLM-4.7-Flash&#xff1a;个人网络安全监控助手 1. 为什么需要个人网络安全监控 去年我的开发机遭遇了一次恶意脚本攻击&#xff0c;导致本地Git仓库被篡改。事后排查发现&#xff0c;攻击者通过一个陈旧的SSH密钥漏洞入侵&#xff0c;而系统日志里其实早有异常登录…...

用了Qoder写代码飞快,联调时却总因字段不一致返工,问题出在哪?

发版前夜&#xff0c;前端字段对不上后端接口&#xff0c;联调卡了整晚。这种场景在 AI Coding 普及后并不罕见&#xff0c;不少团队用了 Qoder 觉得生成快、跑通快&#xff0c;可一旦要改需求&#xff0c;系统就僵住了。看似工具背锅&#xff0c;其实根子往往不在速度&#xf…...

别再被‘小样本’难倒了!用Python的PyMC3库实战层次贝叶斯模型

用PyMC3解锁小样本分析&#xff1a;层次贝叶斯建模实战指南 当你的数据集像便利店冰柜里的酸奶——每个品类只有零星几瓶时&#xff0c;传统统计方法往往会束手无策。想象你正分析20个城市的新开门店周销售额&#xff0c;每个城市却只有3-5条数据记录。这时&#xff0c;层次贝叶…...