摘要:簡介最近在工作中使用和來實現(xiàn)開發(fā)功能,其中使用到作為。實現(xiàn)功能如下方法將數(shù)據(jù)發(fā)送到服務器,通過寫入指定的后臺多帶帶啟動進程產(chǎn)生消費者將的數(shù)據(jù)寫入到此處的進程使用一個多帶帶的文件實現(xiàn),此時需要配置中使用的配置信息,包括一些其他的配置信息。
簡介
最近在工作中使用 Django 和 django-rest-framework 來實現(xiàn) API 開發(fā)功能,其中使用到 kafka 作為broker。
實現(xiàn)功能如下:
POST 方法將數(shù)據(jù)發(fā)送到服務器,通過kafka寫入指定的 topic;
后臺多帶帶啟動進程產(chǎn)生 消費者 將 broker 的數(shù)據(jù)寫入到 MySQL
此處的進程使用一個多帶帶的 python 文件實現(xiàn),此時需要配置中使用 django orm 的配置信息,包括一些其他的配置信息。
方法一其實這些信息也可以使用包含上下文信息的工具:
python manage.py shell
此處特別推薦神器 ipython 安裝如下:
pip install ipython
如果在這個交互環(huán)境中,可以享用一切 django 的配置,我一般常用于測試 django 的 model。
凡是都有個但是,但是我們還有 方法二。(都看到這里了,就忍忍看完)
方法二方法一 中很方便,但是使用起來只能在指定的交互環(huán)境中使用,不夠靈活。
【我想要實現(xiàn)的是】:我在任意位置的代碼、腳本中都可以很爽的使用 django 的配置
代碼如下:
import os,threading import sys BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.extend([BASE_DIR,]) os.environ.setdefault("DJANGO_SETTINGS_MODULE", "jrjidfa.settings") import django django.setup() from idfacollect.kafka_utils import Utils as kfk from idfacollect.kafka_utils import Config as cfg class Consumer(threading.Thread): def run(self): kfk.consume_to_mysql(host=cfg.KFK_HOST, port=cfg.KFK_PORT, topic=cfg.KFK_TOPIC_IDFA_DEVICE_STARTUP, group_id=cfg.KFK_GP_TO_MYSQL) kfk.consume_to_mysql(host=cfg.KFK_HOST, port=cfg.KFK_PORT, topic=cfg.KFK_TOPIC_IDFA_APP_CLICK, group_id=cfg.KFK_GP_TO_MYSQL) if __name__ == "__main__": try: for i in range(5): # create 5 thread exectue Consumer t = Consumer() t.start() except Exception as e: print e
說明一下:
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) # 這個是想要使用的 `django` 工程的根目錄; sys.path.extend([BASE_DIR,]) # 將項目根目錄加入到 python 搜索的 path 中 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "jrjidfa.settings") # 設置環(huán)境變量中的 DJANGO_SETTINGS_MODULE 設置為 django 配置 import django django.setup() # 啟動 django 配置、注冊 app 等等初始化操作
總結(jié):接下來就可以愉快的使用了,看上面代碼就知道真的很愉快。
以上です!ありがとうございました
文章版權歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/38302.html
摘要:利用開發(fā)個小型商城我們本期的教程是教大家如何利用開發(fā)一個小型的商城這里所說的小型商城只是功能上的簡樸。并于年月在許可證下發(fā)布。這套框架是以比利時的吉普賽爵士吉他手來命名的。是重量級選手中最有代表性的一位。 利用Django開發(fā)個小型商城 我們本期的教程是教大家如何利用Django開發(fā)一個小型的商城,這里所說的小型商城只是功能上的簡樸。 作者:黃志成(小黃) 作者博客:博客地址 前提 1...
摘要:比較流行的解決方案是允許用戶通過第三方登錄,即可以通過微博這類知名社區(qū)的授權,從而登錄你的小站,免去了注冊的麻煩。微博微信的登錄方式大致都遵循這個流程本章雖然加載了微博的接口,但是限于篇幅并沒有配置,請讀者查閱官方文檔去實現(xiàn)。 現(xiàn)在我們已經(jīng)擁有一個可以進行用戶本地登錄的博客系統(tǒng)了。如果有人欣賞你的文章,說不定就會注冊成為本地用戶,并和你好好交流一番。 但頭疼的是,用戶可能每天都在互聯(lián)網(wǎng)...
摘要:默認的,及使用它的號數(shù)據(jù)庫此處使用號數(shù)據(jù)庫,在客戶端查看記得切換數(shù)據(jù)庫存儲在本機內(nèi)存中,比數(shù)據(jù)庫的方式讀寫快很多默認的配置項,采用號庫。狀態(tài)保持的配置項,采用號庫。使用名為的配置項存儲數(shù)據(jù)。配置完成后運行程序,測試結(jié)果。 1.配置開發(fā)環(huán)境當進入虛擬環(huán)境,通過django_admin創(chuàng)建一個項目后,會在項目同名目錄生成一個setting.py文件。而實際項目過程中會有不同的環(huán)境,如開發(fā)環(huán)境、生...
摘要:默認的,及使用它的號數(shù)據(jù)庫此處使用號數(shù)據(jù)庫,在客戶端查看記得切換數(shù)據(jù)庫存儲在本機內(nèi)存中,比數(shù)據(jù)庫的方式讀寫快很多默認的配置項,采用號庫。狀態(tài)保持的配置項,采用號庫。使用名為的配置項存儲數(shù)據(jù)。配置完成后運行程序,測試結(jié)果。 1.配置開發(fā)環(huán)境當進入虛擬環(huán)境,通過django_admin創(chuàng)建一個項目后,會在項目同名目錄生成一個setting.py文件。而實際項目過程中會有不同的環(huán)境,如開發(fā)環(huán)境、生...
閱讀 3701·2021-11-19 09:56
閱讀 1486·2021-09-22 15:11
閱讀 1142·2019-08-30 15:55
閱讀 3386·2019-08-29 14:02
閱讀 2927·2019-08-29 11:07
閱讀 447·2019-08-28 17:52
閱讀 3182·2019-08-26 13:59
閱讀 447·2019-08-26 13:53