Django开发问题汇总

GSSException

GSS_EXCEPTIONS = (gssapi.GSSException,)
AttributeError: module 'gssapi' has no attribute 'GSSException'

问题解决方式

pip3 uninstall gssapi
pip3 uninstall paramiko
pip3 install paramiko

初步怀疑原因是已安装的包和paramiko需要的包版本不一致

URIs not supported

sqlite3.NotSupportedError: URIs not supported

The above exception was the direct cause of the following exception:

尝试了更换sqlite版本的方式没起作用,最后尝试更换django版本

pip uninstall django
pip install django==2.0.6

怀疑是django版本不一致的问题

Django Internal Server Error 错误排查

设置DEBUG=False后无法查看django内部错误原因
打开文件 INSTALL_PATH/python-3.6.6/lib/python3.6/site-packages/django/core/handlers/exception.py
在handle_uncaught_exception函数中添加如下代码

    print("+++++++++ HTTP 500 Error Message +++++++++++++ ")                              
    print(exc_info)                                                                  
    import traceback                                                             
    print(traceback.format_exc())                                                   
    print("----------------------------------------------- ")

这样就可以打印

cProfile性能调优

执行下列命令获取性能采样及分析

> python3 -m cProfile -o profile.out manage.py runserver
> gprof2dot -f pstats profile.out | dot -Tpng -o profile.png

展示结果发现,只有主线程的性能分析,没有其他线程。对于网站性能分析没有实际效果,可以用来分析脚本性能。

点赞