原创 django開發-d'jango和tornado的不同

python中常用的幾個web框架有django, tornado, flask等,今天來總結一下django和tornado的不同。工作中django和tornado都用過,使用django相對更多一些。個人感覺django雖然好用,有搭

原创 python開發-常見面試題

今天總結一下python中常見的面試題: 1.is與==的區別is比較變量內存地址和值是否相等,==僅僅比較變量的值是否相等需要注意:當變量的值較小時(a=1, b=1時,a is b的值是True,這是由於python定義變量時底層的實現

原创 django開發-使用celery搭建分佈式(多節點)任務隊列

今天介紹一下如何在django項目中使用celery搭建一個有兩個節點的任務隊列(一個主節點一個子節點;主節點發布任務,子節點收到任務並執行。搭建3個或者以上的節點就類似了),使用到了celery,rabbitmq。這裏不會單獨介紹cele

原创 django開發-mongodb的配置與使用

今天整理了一下在django項目中如何使用mongodb, 環境如下:ubuntu18.04, django2.0.5, drf3.9, mongoengine0.16 第一步:在settings.py中配置mongodb和mysql,配置

原创 django開發-在Docker中部署django項目

今天整理了一下如何在docker中部署django項目。 1.環境如下: python3.6 django2.0.5 nginx mysql5.7 gunicorn 2.項目結構如下: 由於僅僅是測試,項目比較簡單,複雜的項目也是這

原创 python開發-實現RabbitMQ的消息隊列

最近在研究redis做消息隊列時,順便看了一下RabbitMQ做消息隊列的實現。以下是總結的RabbitMQ中三種exchange模式的實現,分別是fanout, direct和topic。 base.py: import pika

原创 python開發-實現redis中的發佈訂閱功能

redis中的發佈/訂閱模型是一種消息通信模式,今天聊一下在python中實現簡單的發佈訂閱功能。 實現方式一: redis_helper.py: 封裝發佈訂閱方法 import redis

原创 python中多個裝飾器的執行順序

今天講一下python中裝飾器的執行順序,以兩個裝飾器爲例。 裝飾器代碼如下: def wrapper_out1(func): print('--out11--') def inner1(*args, **kwargs):

原创 在nginx中配置https

今天聊一下如何在nginx中配置https 在web應用開發中,爲保證前端訪問後端服務器的安全,需要使用https連接,現在來聊一下如何在nginx中配置https. 1.首先需要申請ssl證書。 在阿里雲,騰訊雲,華爲雲等雲服務提供商的網

原创 django開發-定時任務的使用

今天介紹在django中使用定時任務的兩種方式。 方式一: APScheduler1)安裝: pip install apscheduler 2)使用: from apscheduler.scheduler import Scheduler

原创 ubuntu18.04上搭建django項目測試環境

今天來聊一下django項目測試環境的搭建,看下面的具體步驟。 以下環境在ubuntu18.04下搭建,步驟如下: 1.安裝數據庫mysql5.7:1)安裝 sudo apt-get install mysql-server sudo ap

原创 關於阿里雲短信發送的一個問題

使用阿里雲的短信服務時, 需要下載sdk, 現有以下兩個版本的sdk: aliyun-python-sdk-core-v3==2.9.1 aliyun-python-sdk-core-v3==2.8.6 在python3.6中使用短信服務的

原创 百度語音合成在python中的使用

今天來說一下在python中如何使用百度的語音合成功能;即輸入一段文字,請求百度相關服務器後,會返回來一段二進制語音流,將這段二進制數據經過base64編碼返回給前端,前端解碼後,可以播放出這段語音;也可以將這段二進制語音流保存到一個wav

原创 django開發-log日誌的配置

在生產環境中,將程序的運行日誌輸出保存到文件中是很必要的操作;當應用崩潰時,很容易通過查找日誌來定位問題。下面介紹一下django開發中如何將日誌輸出到文件中。 首先看一下日誌級別有哪些: DEBUG:所有等級中最低,其信息一般用來作爲調試

原创 django開發-聚合函數的使用

在django開發中,獲取一些統計數據時,需要用到model中的聚合函數;下面就聊一下django中跟統計、聚合有關的方法。 1.aggregate: 對QuerySet進行彙總後得到的數據1)求所有訂單的平均消費: from django