
开发问题
uling94
这个作者很懒,什么都没留下…
展开
-
记录flask框架下使用signal遇到的错误:ValueError: signal only works in main thread
背景基于flask框架的一个项目,对指定函数做超时监控。调研了以下几种方法:eventlet参考注:启动后运行到指定函数,无报错,卡住不动,后续定位signal参考其核心思想是通过signal的闹钟信号,触发自定义超时报错。第三方包timeout_decorator就是基于signal开发的超时装饰器。我采用的就是timeout_decorator,开发好的装饰器直接用即可。threading错误代码 File "/home/users/*********/.deck/1原创 2022-05-27 16:50:40 · 3747 阅读 · 1 评论 -
记录使用supervisor遇到的错误:pkg_resources.DistributionNotFound
背景基于supervisor+nginx+uWSGI+ flask的一个项目,在docker镜像启动过程中遇到现在的报错问题。其中supervisor的作用在于进程管理,可以对管理的进程进行重启尝试等操作。在docker镜像制作时,通过apt-get安装了supervisor。错误代码pkg_resources.DistributionNotFound: The 'supervisor==3.3.1' distribution was not found and is required by the原创 2021-11-25 15:56:20 · 5260 阅读 · 0 评论 -
flask使用celery报错:AttributeError: ‘_AppCtxGlobals‘ object has no attribute ‘session‘
flask使用celery报错:AttributeError: '_AppCtxGlobals' object has no attribute 'session'原因解决办法原因在celery的task任务中,使用了flask.g.session这个参数,它是连接sqlalchemey的对话参数。我理解flask.g是单次请求共用参数,但celery的task相当于新开一个进程进行处理,导致flask.g无法在task中共用。解决办法在celery的task任务中,再次对flask.g.sessi原创 2021-10-27 11:22:47 · 915 阅读 · 0 评论