Skip to main content

Seatools Starter Server Uvicorn

Project description

seatools uvicorn 服务器启动器

该框架在uvicorn层完成seatools.ioc的加载, 使用该项目后无需在每个进程额外执行seatools.ioc.run函数, 仅在启动时传递一个ioc启动的函数即可

使用指南

  1. 安装, poetry add seatools-starter-server-uvicorn
  2. 这里以fastapi为例, 假设xxx.boot模块存在start的自定义启动ioc函数
from seatools.ioc import run


def start():
    run(scan_package_names='xxx', config_dir='./config')

命令行启动uvicorn xxx.boot:start xxx.fastapi.app:app, 其他参数与官方uvicorn一致, 在uvicorn基础上增加了一个ioc_app的参数, 需要指明ioc应用启动的函数 若配置application.ymlapplication-[*].yml中存在seatools.server.uvicorn.app配置, 则可不传递uvicornapp仅传递ioc_app即可, 示例uvicorn xxx.boot:start 若同时使用了seatools-starter-web-*web启动包, 则uvicornapp直接可省略 3. 程序直接调用

from xxx.boot import start
from seatools.ioc.server import uvicorn


def main():
    uvicorn.run(
        start,
        'xxx.fastapi.app:app' # 配置中seatools.server.uvicorn.app存在 或 安装了seatools-starter-web-fastapi 此处可不填
    )


if __name__ == '__main__':
    main()
  1. 支持配置config/application.yml
seatools:
  server:
    uvicorn:
      # 配置该参数后启动参数可忽略app参数, 配置与官方uvicorn.run一致, 若安装 seatools-starter-web-fastapi可省略app配置 
      app: xxx.fastapi.app:app
      host: 127.0.0.1
      port: 8000
      workers: 1
      # ...
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

seatools_starter_server_uvicorn-1.0.2.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

File details

Details for the file seatools_starter_server_uvicorn-1.0.2.tar.gz.

File metadata

File hashes

Hashes for seatools_starter_server_uvicorn-1.0.2.tar.gz
Algorithm Hash digest
SHA256 405e7963b23ecc98065f7d69e90d6920d94df61057f4b4e8425f62932f83ade9
MD5 8f226c140483e0aba2771f01870a334f
BLAKE2b-256 7e3ccf7353ced6fc2b2904a76d7813a9fe21506df72d8452aece58855de9a338

See more details on using hashes here.

File details

Details for the file seatools_starter_server_uvicorn-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for seatools_starter_server_uvicorn-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 89b9f4e4984a730f9c223f15144a8c4fd32440ea21886d85a1ea72892bc92056
MD5 221920b2e6692e09f9eef0ee086d9a24
BLAKE2b-256 10c9d0317af1dd1e412666b720c01cf15194dc6b5fb57f43d854abde58b29ef9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page