首页
免费后端云服务
关于
Search
1
小程序后端入门系列视频教程【一-微信开发工具介绍】
9,812 阅读
2
微信小程序三级联动之多列选择器
9,710 阅读
3
小程序开发免费后端之神秘利器分享
9,632 阅读
4
Golang-开发企业级资源权限管理【第一步表设计】-1
9,174 阅读
5
学会微信服务端开发第一步
9,049 阅读
日常记录
日常
随笔
Bmob后端云
从零开始学物联网
Serverless实战驾校小程序
心邮
Serverless
向量数据库
登录
Search
Typecho
累计撰写
124
篇文章
累计收到
22
条评论
首页
栏目
日常记录
日常
随笔
Bmob后端云
从零开始学物联网
Serverless实战驾校小程序
心邮
Serverless
向量数据库
页面
免费后端云服务
关于
搜索到
1
篇与
的结果
2016-02-20
Golang-Gateway-API-搭建教程
Golang Gateway API 搭建教程随着微服务的兴起,行业里出现了非常多优秀的微服务网关框架,今天教大家搭建一套国人,用Golang写的微服务网关框架。这里啰嗦一句,可能到今天还有人不理解什么是微服务,为什么要用微服务。目前网上相对比较模糊,没有精确的定义,但大家的意思都差不多,这里个人通俗描述,就是小项目发展到大项目过程中,出于已维护,与稳定性等考虑,将一个整体项目分为多个微小服务。微服务网关的作用是在用户第一个网关服务器,你按照业务服务相关需求,给网关分流,相比云主机厂商提供的负载均衡器,强大在于你可以根据自己业务去分流,同时还以可以实现鉴权、校验、聚合、缓存等自定义服务,而云主机的负载均衡器只是一个简单按照流量给你负载均衡请求,不具有自定义编程性质。接下来教如何安装,以及注意事项。地址:https://github.com/fagongzi/gateway功能:流量控制熔断负载均衡服务发现插件机制路由(分流,复制流量)API 聚合API 参数校验API 访问控制(黑白名单)API 默认返回值API 定制返回值API 结果CacheJWT AuthorizationAPI Metric导入PrometheusAPI 失败重试后端server的健康检查开放管理API(GRPC、Restful)支持websocket支持在线迁移数据1.下载https://github.com/fagongzi/gateway2.编译cd $GOPATH/src/github.com/fagongzi/gateway/cmd/proxy go build -o proxy ./... cd $GOPATH/src/github.com/fagongzi/gateway/cmd/api go build -o apiserver ./...3.ECTD安装Etcd是一个高可用的 Key/Value 存储系统,主要用于分享配置和服务发现。etcd github地址:https://github.com/etcd-io/etcd当然,你也可以用命令行安装1、安装yum install etcd2、修改配置文件,主要是地址,如果不是很懂,可以看下etcd官方文档vim /etc/etcd/etcd.conf # [member] ETCD_NAME="k8s_master_ip_name" #范例: etcd1 ETCD_DATA_DIR="/work/etcd" ETCD_LISTEN_PEER_URLS="http://k8s_master_ip:2380" ETCD_LISTEN_CLIENT_URLS="http://127.0.0.1:2379,http://k8s_master_ip:2379"3、启动systemctl daemon-reload systemctl enable etcd.service systemctl start etcd.service4、测试IP与端口改为配置的ip地址,如果没有使用,建议不要随意变动端口curl http://127.0.0.1:2379/version 如果返回{"etcdserver":"3.3.2","etcdcluster":"3.3.0"} 就是安装成功了基础软件都安装好了,我们就准备最低三台机器。运行环境我们以三台etcd、一台ApiServer,三台Proxy的环境为例环境信息组件环境说明etcd集群环境192.168.1.12配置服务器Proxy192.168.1.13代理服务器ApiServer192.168.1.14路由配置接口服务器1.启动 ApiServer服务启动ApiServer服务,看到以下截图就对了。2.启动代理服务看到以下截图就对了3.添加配置服务都启动后,我们添加配置路由。启动Proxy./proxy --addr=192.168.1.200:80 --addr-rpc=192.168.1.200:9091 --addr-store=etcd://192.168.1.100:2379,192.168.1.101:2379,192.168.1.102:2379 --namespace=test./proxy --addr=192.168.1.201:80 --addr-rpc=192.168.1.201:9091 --addr-store=etcd://192.168.1.100:2379,192.168.1.101:2379,192.168.1.102:2379 --namespace=test./proxy --addr=192.168.1.202:80 --addr-rpc=192.168.1.202:9091 --addr-store=etcd://192.168.1.100:2379,192.168.1.101:2379,192.168.1.102:2379 --namespace=test用户的API接入地址可以为:192.168.1.201:80、192.168.1.201:80、192.168.1.202:80其中任意一个如果能访问下你后面代理的接口内容,表示成功。如果觉得配置服务器API,命令行麻烦,可以下载WEB UI的管理控制台。下载地址:https://github.com/fagongzi/gateway-ui-vue最后大家有任何疑问,可以在本文章留言。
2016年02月20日
1,124 阅读
0 评论
10 点赞