# 快捷帮项目 ## 需求: 1、该项目服务于会计行业人员。 2、并且提供相应的工作便利和生活便利。 ## 模块: 1、登录 2、用户 3、首页 4、购物系统 5、评论系统 6、任务系统 7、项目后台管理。 ## 项目部署: ```bash #如果是在debian中,安装apt install nginx python3.6以上版本及依赖包、uwsgi、flask、MySQL。 apt install nginx python3.8 mysql-server[or mariadb] -y pip3 install flask SQLAlchemy uwsgi #配置uwsgi #进入/home目录下,新建新的用户并配置密码来使用该该项目 useradd -m kuajbang passwd kuajbang #新建服务文件夹存放服务和数据。 mkdir kuajbang_server/server and kuajbang_server/db #将新建的用户赋予给该文件,让其后期可以进行服务修改和维护。 chmod u+wx kuajbang_server chown kuajbang:kuajbang #在kuajbang_server/server下新建uwsgi.ini 格式: [uwsgi] uid=www-data # Ubuntu系统下默认用户名 gid=www-data # Ubuntu系统下默认用户组 project=mysite1 # 项目名 base = /home/user1 # 项目根目录 home = %(base)/Env/%(project) # 设置项目虚拟环境,Docker部署时不需要 chdir=%(base)/%(project) # 设置工作目录 module=%(project).wsgi:application # wsgi文件位置 master=True # 主进程 processes=2 # 同时进行的进程数,一般 # 以下uwsgi与nginx通信手段3选一即可 # 选项1, 使用unix socket与nginx通信,仅限于uwsgi和nginx在同一主机上情形 # Nginx配置中uwsgi_pass应指向同一socket文件 socket=/run/uwsgi/%(project).sock # 选项2,使用TCP socket与nginx通信 # Nginx配置中uwsgi_pass应指向uWSGI服务器IP和端口 # socket=0.0.0.0:8000 或则 socket=:8000 # 选项3,使用http协议与nginx通信 # Nginx配置中proxy_pass应指向uWSGI服务器一IP和端口 # http=0.0.0.0:8000 # socket权限设置 chown-socket=%(uid):www-data chmod-socket=664 # 进程文件 pidfile=/tmp/%(project)-master.pid # 以后台守护进程运行,并将log日志存于temp文件夹。 daemonize=/var/log/uwsgi/%(project).log # 服务停止时,自动移除unix socket和pid文件 vacuum=True # 为每个工作进程设置请求数的上限。当处理的请求总数超过这个量,进程回收重启。 max-requests=5000 # 当一个请求花费的时间超过这个时间,那么这个请求都会被丢弃。 harakiri=60 #当一个请求被harakiri杀掉会输出一条日志 harakiri-verbose=true # uWsgi默认的buffersize为4096,如果请求数据超过这个量会报错。这里设置为64k buffer-size=65536 # 如果http请求体的大小超过指定的限制,打开http body缓冲,这里为64k post-buffering=65536 #开启内存使用情况报告 memory-report=true #设置平滑的重启(直到处理完接收到的请求)的长等待时间(秒) reload-mercy=10 #设置工作进程使用虚拟内存超过多少MB就回收重启 reload-on-as=1024 #将服务开启 uwsgi --ini kuajbang_server/server/uwsgi.ini ``` ## 联系: 作者:AiNiSuBing 链接: http://github.com/AiNiSuBing/adiao/KuaJBang.git