SpringCloudAlibaba:4.2云原生网关higress的基本使用

本文涉及的产品
.cn 域名,1个 12个月
简介: SpringCloudAlibaba:4.2云原生网关higress的基本使用

概述

image.gif 编辑

简介

Higress是基于阿里内部的Envoy Gateway实践沉淀、以开源Istio + Envoy为核心构建的下一代云原生网关, 实现了流量网关 + 微服务网关 + 安全网关三合一的高集成能力,深度集成Dubbo、Nacos、Sentinel等微服务技术栈

定位

在虚拟化时期的微服务架构下,业务通常采用流量网关 + 微服务网关的两层架构,流量网关负责南北向流量调度和安全防护,微服务网关负责东西向流量调度和服务治理, 而在容器和 K8s 主导的云原生时代,Higress 成为 K8s 生态的网关标准,赋予了网关新的使命,使得流量网关 + 微服务网关合二为一成为可能

官网

https://higress.io/zh-cn/

image.gif

路由配置

image.gif 编辑

image.gif 编辑

image.gif 编辑

依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <artifactId>java_sc_alibaba</artifactId>
        <groupId>jkw.life</groupId>
        <version>1.0-SNAPSHOT</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>
    <artifactId>test-higress8006</artifactId>
    <dependencies>
        <!-- nacos-discovery -->
        <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
        </dependency>
        <!-- SpringMVC-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>
</project>

image.gif

application.yml

server:
  port: 8006
spring:
  application:
    name: test-higress8006
  cloud:
    nacos:
      discovery:
        # 配置 nacos注册中心地址
        server-addr: 192.168.66.103:8848

image.gif

启动类

package jkw;
import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@Slf4j
@EnableDiscoveryClient
@SpringBootApplication
public class Main8006 {
    public static void main(String[] args) {
        SpringApplication.run(Main8006.class, args);
        log.info("************** 服务提供者 8001 启动成功 ************");
    }
}

image.gif

测试控制器

package jkw.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
 * 测试控制器
 */
@RequestMapping("/test")
@RestController
public class TestCon {
    @GetMapping("/index")
    public String index() {
        return "higress index";
    }
}

image.gif

higress路由配置

原理剖析:higress从所在的nacos中获取服务,这些服务可以用higress作为网关

1.域名映射配置:使用Switchhosts进行域名映射,把higress所在地址映射域名【192.168.66.103 www.jkw.com】

2.域名管理:创建域名【www.jkw.com http】

3.路由配置:创建路由【8006-higress-test 精确匹配 | /test/index test-higress8006.DEFAULT-GROUP.public.nacos】

4.访问:http://www.jkw.com/test/index

跨域配置

image.gif 编辑

image.gif 编辑

跨域问题的来源

源于浏览器的同源策略限制,同源策略是一种约定,同源策略是浏览器最核心也最基本的安全功能, 如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。 可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。

简介

当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域

解决

CORS("跨域资源共享"(Cross-origin resource sharing)):目的域告诉请求者允许什么来源域来请求, CORS使得浏览器在向目的域发起请求之前先发起一个OPTIONS方式的请求到目的域获取目的域的信息

higress配置跨域

路由配置:策略:配置跨域

相关文章
|
6天前
|
编解码 运维 Kubernetes
政采云业务网关实践:使用 Higress 统一替代 APISIX/Kong/Istio Ingress
政采云基础架构团队技术专家朱海峰介绍了业务网关项目的背景和解决方案。
|
20天前
|
人工智能 数据可视化 API
FastGPT 基于Higress 聚合 LLM 网关的最佳实践
本文介绍了Fast GPT的产品形态和设计理念,重点讨论了大模型的幻觉问题及其对应用落地的影响。Fast GPT通过结合工作流的强逻辑性和AI的理解能力,提升系统的稳定性和可靠性。文章还详细描述了Fast GPT的工作流节点、知识库管理及AI网关的功能,并展示了几个实际应用场景,如私人助手、图文生成和文档处理等。最后,探讨了如何通过引入云函数和Copilot简化代码编写,实现无代码编排的工作流解决方案,提升用户体验。
|
5月前
|
人工智能 缓存 Cloud Native
用 Higress AI 网关降低 AI 调用成本 - 阿里云天池云原生编程挑战赛参赛攻略
《Higress AI 网关挑战赛》正在火热进行中,Higress 社区邀请了目前位于排行榜 top5 的选手杨贝宁同学分享他的心得。本文是他整理的参赛攻略。
559 77
|
6月前
|
人工智能 Cloud Native API
Higress 重磅更新:AI 能力全面开源,云原生能力再升级
Higress 最新的 1.4 版本基于为通义千问,以及多家云上 AGI 厂商客户提供 AI 网关的积累沉淀,开源了大量 AI 原生的网关能力。同时也在 Ingress、可观测、流控等云原生能力上做了全方位升级。
21443 277
|
7月前
|
人工智能 缓存 安全
22.5 万奖金池丨Higress AI 网关编程挑战赛启动
2024 天池云原生编程挑战赛 6 月 12 日正式启动,8 月 28 日线下决赛,9 月公布最终参赛结果,奖金池合计 22.5 万,共计三个赛道,面向全社会开放。
641 20
|
8月前
|
JSON SpringCloudAlibaba Cloud Native
SpringCloudAlibaba:4.3云原生网关higress的JWT 认证
SpringCloudAlibaba:4.3云原生网关higress的JWT 认证
142 1
|
8月前
|
SpringCloudAlibaba Cloud Native Docker
SpringCloudAlibaba:4.1云原生网关higress的搭建
SpringCloudAlibaba:4.1云原生网关higress的搭建
183 1
|
1月前
|
运维 Cloud Native 持续交付
深入理解云原生架构及其在现代企业中的应用
随着数字化转型的浪潮席卷全球,企业正面临着前所未有的挑战与机遇。云计算技术的迅猛发展,特别是云原生架构的兴起,正在重塑企业的IT基础设施和软件开发模式。本文将深入探讨云原生的核心概念、关键技术以及如何在企业中实施云原生策略,以实现更高效的资源利用和更快的市场响应速度。通过分析云原生架构的优势和面临的挑战,我们将揭示它如何助力企业在激烈的市场竞争中保持领先地位。
|
1月前
|
Kubernetes Cloud Native 微服务
探索云原生技术:容器化与微服务架构的融合之旅
本文将带领读者深入了解云原生技术的核心概念,特别是容器化和微服务架构如何相辅相成,共同构建现代软件系统。我们将通过实际代码示例,探讨如何在云平台上部署和管理微服务,以及如何使用容器编排工具来自动化这一过程。文章旨在为开发者和技术决策者提供实用的指导,帮助他们在云原生时代中更好地设计、部署和维护应用。
|
2月前
|
Cloud Native Devops 云计算
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
64 3