You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
CubeAI智立方 660789fc32 Merge pull request 'hls007' (#3) from hls007 into master 1 month ago
app init commit 1 month ago
.gitignore init commit 2 months ago
Dockerfile init commit 2 months ago
LICENSE init commit 2 months ago
README.md init commit 2 months ago
application.yml init commit 2 months ago
build-docker.sh init commit 2 months ago
pip-install-reqs.sh init commit 2 months ago
requirements.txt init commit 2 months ago
start.py init commit 2 months ago

README.md

CUBE-Net微服务框架——API网关(gateway)

CUBE-Net微服务框架使用基于ServiceBoot微服务引擎开发的特殊微服务——gateway——来充当API网关,用于为后端微服务提供统一的访问入口和HTTP路由转发功能。

在CUBE-Net微服务框架中,前端程序不能直接向后端微服务发起HTTP服务请求,而是将所有服务请求统一发送至API网关,再由API网关根据请求地址中的服务名自动将这些服务请求转发至后端相应的微服务中去。

除了HTTP路由功能外,gateway还在用户身份认证时充当Oauth2协议的client身份。

gateway使用Consul来进行微服务注册和发现。在gateway启动时,它首先尝试与Consul建立连接并在Consul上注册自己。如果Consul未就绪,gateway将启动失败。

作为一个微服务,gateway在启动时会尝试从uaa获取用于微服务访问控制的公钥和JWT。如果uaa未就绪,gateway将启动失败。

基本配置

  • 监听端口

    • 开发环境: 8080
    • 生产环境: 80
  • 服务注册与发现:Consul(8500)

  • 用户认证授权:uaa

  • 数据库: 无

运行/调试/二次开发

  1. 开发环境中运行本微服务之前,需要先拉起项目依赖的后台docker。

     # cd ~/cubenet/cubenet/dev
     # docker-compose up
    

    参见cubenet/cubenet/dev目录下的README文档。

  2. 使用PyCharm打开本project所在目录。

  3. 建议在PyCharm中专门为本project新建一个专用Python虚拟环境,Python版本选择3.5以上(建议Python 3.5.9)。

  4. 在PyCharm的terminal窗口中执行如下命令安装依赖包:

     # sh pip-install-reqs.sh
    

    依赖包安装完成后,可在terminal窗口中执行如下命令来查看serviceboot所有命令行格式:

     # serviceboot
    
  5. 在PyCharm窗口中右键单击“start.py”文件,选择“run ‘start’”或者“debug ‘start’”来运行或调试程序。

  6. 开发完成后,可在terminal窗口中执行如下命令来生成微服务docker镜像:

     # serviceboot build_docker
     或者
     # sh build-docker.sh
    

简介

CUBE-Net微服务框架基础组件——API网关(gateway)。

Python Dockerfile Shell Text