config.py 2.52 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
# -*- coding: utf-8 -*-
import os
import multiprocessing

MODE = 'develop'  # develop: 开发模式; production: 生产模式
UPLOAD_ROOT_DIR = os.path.join(os.path.dirname(__file__), 'assets', 'upload')
EXPORT_ROOT_DIR = os.path.join(os.path.dirname(__file__), 'assets', 'export')
UPLOAD_ALLOWED = set(['doc', 'docs', 'csv', 'xls', 'xlsx'])

class ProductionConfig(object):
    BIND = '127.0.0.1:3000'
    WORKERS = multiprocessing.cpu_count() * 2 + 1
    WORKER_CONNECTIONS = 10000
    BACKLOG = 64
    TIMEOUT = 60
    LOG_LEVEL = 'INFO'
    LOG_DIR_PATH = os.path.join(os.path.dirname(__file__), 'logs')
    LOG_FILE_MAX_BYTES = 1024 * 1024 * 100
    LOG_FILE_BACKUP_COUNT = 10
    PID_FILE = 'run.pid'
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379
    REDIS_PASSWORD = ''
    REDIS_MAX_CONNECTIONS = 100
    JWT_HEADER_NAME = 'Auth'
    JWT_HEADER_TYPE = 'Bearer'
    JWT_SECRET_KEY = '6UdxRgs2hvWpTLmj027d5vt7dXXQX'
    JWT_ACCESS_TOKEN_EXPIRES = 7200
    JWT_REFRESH_TOKEN_EXPIRES = 1800
    MYSQL_DB = 'qianjing_iot'
    MYSQL_HOST = '127.0.0.1'
    MYSQL_PORT = 3306
    MYSQL_USER = 'debian-sys-maint'
    MYSQL_PWD = 'XMigC2B2uugnv18y'
wanli's avatar
wanli committed
35 36 37 38
    SQLALCHEMY_BINDS = {
        'app-store':      'sqlite:///../test.db'
    }
    SQLALCHEMY_DATABASE_URI = 'sqlite:///../test.db'
39 40 41 42

    def __init__(self):
        super().__init__()

wanli's avatar
wanli committed
43
        self.SQLALCHEMY_DATABASE_URI = 'sqlite:///../test.db'
44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70


class DevelopConfig(object):
    BIND = '127.0.0.1:3000'
    WORKERS = 2
    WORKER_CONNECTIONS = 1000
    BACKLOG = 64
    TIMEOUT = 30
    LOG_LEVEL = 'DEBUG'
    LOG_DIR_PATH = os.path.join(os.path.dirname(__file__), 'logs')
    LOG_FILE_MAX_BYTES = 1024 * 1024
    LOG_FILE_BACKUP_COUNT = 1
    PID_FILE = 'run.pid'
    REDIS_HOST = '127.0.0.1'
    REDIS_PORT = 6379
    REDIS_PASSWORD = ''
    REDIS_MAX_CONNECTIONS = 100
    JWT_HEADER_NAME = 'Auth'
    JWT_HEADER_TYPE = 'Bearer'
    JWT_SECRET_KEY = '6UdxRgs2hvWpTLmj027d5vt7dXXQX'
    JWT_ACCESS_TOKEN_EXPIRES = 7200
    JWT_REFRESH_TOKEN_EXPIRES = 1800
    MYSQL_DB = 'qianjing_iot'
    MYSQL_HOST = '127.0.0.1'
    MYSQL_PORT = 3306
    MYSQL_USER = 'debian-sys-maint'
    MYSQL_PWD = 'XMigC2B2uugnv18y'
wanli's avatar
wanli committed
71 72 73 74
    SQLALCHEMY_BINDS = {
        'app-store':      'sqlite:///../test.db'
    }
    SQLALCHEMY_DATABASE_URI = 'sqlite:///../test.db'
75 76 77 78 79 80
    SQLALCHEMY_TRACK_MODIFICATIONS = True
    SQLALCHEMY_ECHO = False

    def __init__(self):
        super().__init__()

wanli's avatar
wanli committed
81
        self.SQLALCHEMY_DATABASE_URI = 'sqlite:///../test.db'
82 83 84 85 86

if MODE == 'production':
    config = ProductionConfig()
else:
    config = DevelopConfig()