Martian-gateway 1.0.2 发布,Martian 框架网关组件

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Martian框架的第一个网关组件(Martian-gateway 1.0.2),功能较少,目前只实现了以下功能: 可以从zookeeper获取微服务接口,以负载均衡的方式进行请求的转发 可以自定义过滤器,来扩展一些功能 具体的使用方法 ...

Martian框架的第一个网关组件(Martian-gateway 1.0.2),功能较少,目前只实现了以下功能:

  1. 可以从zookeeper获取微服务接口,以负载均衡的方式进行请求的转发
  2. 可以自定义过滤器,来扩展一些功能

具体的使用方法

一、引入以下maven坐标

<dependency>
    <groupId>com.github.yuyenews</groupId>
    <artifactId>mars-gateway-starter</artifactId>
    <version>最新版,具体看《组件介绍》</version>
</dependency>

二、创建一个配置类,继承MarsGateWayConfig

重写里面的方法,可以实现定制化配置,具体看下面的注释

public class GateWayConfig extends MarsGateWayConfig {

    public CloudConfig getGateWayConfig() {
        CloudConfig cloudConfig = new CloudConfig();
        // 服务名称
        cloudConfig.setName("");
        // 尽量长一点,防止接口过多来不及发布
        cloudConfig.setSessionTimeout(10000L);
        // 请求Mars-Cloud接口超时时间
        cloudConfig.setTimeOut(10000L);
        // zookeeper地址,多个地址用英文逗号分割
        cloudConfig.setRegister("");
        // 负载均衡策略(暂时只支持轮询,随机两种)
        cloudConfig.setStrategy(Strategy.POLLING);
        return cloudConfig;
    }

    /******** 以下方法均有默认值,如果采用默认值的话,可以不重写 ********

    /**
    * 端口号
    * @return
    */
    public int port(){
        return 8080;
    }

    /**
    * 线程池配置
    * @return 线程池配置
    */
    public ThreadPoolConfig getThreadPoolConfig(){
        return new ThreadPoolConfig();
    }

    /**
    * 跨域配置
    * @return 跨域配置
    */
    public CrossDomainConfig crossDomainConfig(){
        return new CrossDomainConfig();
    }

}

三、创建一个启动类

这里调用的是StartGateWay里面的start方法,千万别看错了

public class ExpStart {

    public static void main(String[] args) {
        StartGateWay.start(ExpStart.class, new GateWayConfig());
    }
}

完成以上三步,一个网关就搭建完成了

接下来如何使用呢

很简单,一般发起一个请求,分两种场景:

  1. 希望服务器返回JSON格式数据(大部分场景)
  2. 希望服务器返回一个文件流(文件下载,excel导出,等场景)

返回JSON格式数据

请求方式如下

http://IP:端口号,或者域名/router/要请求的微服务name/微服务上的MarsApi方法名

返回一个文件流

请求方式如下

http://IP:端口号,或者域名/download/要请求的微服务name/微服务上的MarsApi方法名

注意事项

因为目前只是第一版,所以功能还不是很完善,所以造成了以下缺陷:

  1. 目前只实现了请求转发功能,但是这个转发是带负载均衡的

项目官网

http://mars-framework.com/


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

可伸缩架构

可伸缩架构

【美】Lee Atchison / 张若飞、张现双 / 电子工业出版社 / 2017-7 / 65

随着互联网的发展越来越成熟,流量和数据量飞速增长,许多公司的关键应用程序都面临着伸缩性的问题,系统变得越来越复杂和脆弱,从而导致风险上升、可用性降低。《可伸缩架构:面向增长应用的高可用》是一本实践指南,让IT、DevOps和系统稳定性管理员能够了解到,如何避免应用程序在发展过程中变得缓慢、数据不一致或者彻底不可用等问题。规模增长并不只意味着处理更多的用户,还包括管理更多的风险和保证系统的可用性。作......一起来看看 《可伸缩架构》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器