像SpringBoot一样使用Flask - 6.多环境打包发布

 接上文《像SpringBoot一样使用Flask - 5.统一处理(日志、异常、响应报文)》,一个小架子差不多了,就得看看怎么像SpringBoot多环境以及打包之后一个最终效果是怎样了。

    一、写一个配置文件

class BaseConfig():
    LOCAL_ENV = "pro"
    """通用基础配置"""
    MEDIA_ROOT = "/static/media"

class TestConfig(BaseConfig):
    """测试环境配置"""
    DEBUG = True
    DB = '127.0.0.1'

class DevConfig(BaseConfig):
    """开发环境配置"""
    DEBUG = True
    DB = '192.168.1.1'

class PreProConfig(BaseConfig):
    """预发布环境配置"""
    DEBUG = False
    DB = '47.18.1.10'

class ProConfig(BaseConfig):
    """生产环境配置"""
    DEBUG = False
    DB = '47.18.1.1'

  二、配置生效


# 多环境配置
app.config.from_object(BaseConfig)
localEnv = str(app.config.get('LOCAL_ENV'))
# 正式环境配置
if localEnv == "pro":
    app.config.from_object(ProConfig)
# 测试环境配置
if localEnv == "dev":
    app.config.from_object(DevConfig)

三、测试运行,成功✌️

 眼尖的小伙伴肯定看到这段了

app.run(host='127.0.0.1', port=5001, debug=True)

    可以配置服务相关端口哦

    四、打包运行

我们跑起来的时候,总是出现红色的字,这是我们需要使用WSGI服务用在生产。

    安装 Gunicorn

pip install gunicorn

常用参数:

-c CONFIG, --config=CONFIG 指定配置文件
 
-b BIND, --bind=BIND 绑定运行的主机和端口
 
-w INT, --workers INT 用于处理worker进程的数量,默认为1
 
-k STRTING, --worker-class STRTING 指定要使用的工作模式,默认为sync异步,类型:sync, eventlet, gevent, tornado, gthread, gaiohttp
 
--threads INT 处理请求的工作线程数,使用指定数量的线程运行每个worker。为正整数,默认为1
 
--worker-connections INT 最大客户端并发数量,默认1000
 
--chdir 在加载应用程序之前切换目录

总结:

    基本上大伙可以通过上述的文章内容可以完成一个flask搭建,及部署使用。有兴趣的可以看看ORM和定时任务。如果有需要的话,可以评论发信息,我再更新出来哦~ 也可以自己尝试玩玩。

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值