关于Gunicorn部署Flask的多进程问题

你好李辉先生,我读了你的Flask Web实战书籍,仍有一些疑问:

1、你的CatChat程序使用全局变量统计在线人数的个数。

 但据我所知,Gunicorn的不同worker之间不会共享变量,所以这里可否改用Redis?

2、CatChat在不同worker中运行的时候,会导致消息不能在不同worker之间广播,我认为可以使用Redis的消息队列。

3、在连接数据库时,Gunicorn的不同worker之间是共用一个连接还是分别创建不同的连接?

 如果两个worker同时使用一个sqlite文件(.db)会不会有安全性问题?

4、我对于flask-sqlalchemy仍然不太了解,比如我有一个转账系统,需不需要额外加锁?我看你书里的代码从不加锁,或者Flask-Sqlalchemy会自动加锁?