perf(pixiv): 改用 waitress 线程池,缓存路径改为相对路径
- IMAGE_DIR 由硬编码 /home/pixiv/images 改为 (Path(__file__).parent/'../cache/pixiv/images').resolve() (即 source/cache/pixiv/images),mkdir 补 parents=True - systemd/pixiv.service: ExecStart 改为 waitress-serve --host=127.0.0.1 --port=9007 --threads=8 pixiv:app 替代 Flask 开发服务器(thread-per-request 无上限,突发流量下线程爆炸) - __main__ 兜底加 threaded=True,手动运行时不串行
This commit is contained in:
@@ -12,8 +12,8 @@ USER_AGENT = "PixivIOSApp/7.13.0 (iOS 14.6; iPhone)"
|
|||||||
|
|
||||||
urllib3.disable_warnings()
|
urllib3.disable_warnings()
|
||||||
|
|
||||||
IMAGE_DIR = Path("/home/pixiv/images")
|
IMAGE_DIR = (Path(__file__).resolve().parent / "../cache/pixiv/images").resolve()
|
||||||
IMAGE_DIR.mkdir(exist_ok=True)
|
IMAGE_DIR.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
app = Flask(__name__)
|
app = Flask(__name__)
|
||||||
|
|
||||||
@@ -196,4 +196,4 @@ if __name__ == '__main__':
|
|||||||
else:
|
else:
|
||||||
print("Warning: access_token missing in tokens.json")
|
print("Warning: access_token missing in tokens.json")
|
||||||
print(f"Cache directory: {IMAGE_DIR}")
|
print(f"Cache directory: {IMAGE_DIR}")
|
||||||
app.run(host='0.0.0.0', port=9088, debug=False)
|
app.run(host='127.0.0.1', port=9007, debug=False, threaded=True)
|
||||||
@@ -8,7 +8,7 @@ Type=simple
|
|||||||
User=root
|
User=root
|
||||||
WorkingDirectory=/home/openapi/source/pixiv
|
WorkingDirectory=/home/openapi/source/pixiv
|
||||||
Environment=PATH=/home/openapi/env/general/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
Environment=PATH=/home/openapi/env/general/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
|
||||||
ExecStart=/home/openapi/env/general/bin/python /home/openapi/source/pixiv/pixiv.py
|
ExecStart=/home/openapi/env/general/bin/waitress-serve --host=127.0.0.1 --port=9007 --threads=8 pixiv:app
|
||||||
Restart=always
|
Restart=always
|
||||||
RestartSec=5
|
RestartSec=5
|
||||||
StandardOutput=append:/var/log/pixiv.log
|
StandardOutput=append:/var/log/pixiv.log
|
||||||
|
|||||||
Reference in New Issue
Block a user