python解決flask啟動的同時啟動定時任務

業務場景描述:在常規的開發中,我們開發接口服務,一般會將數據放在數據庫、文件等第三方文件,啟動服務后,服務到后臺數據庫中加載數據,這樣做的好處當然是開發會更加便利以及數據的可復用性較高,即不同的場景任務可以使用同一份數據。缺點則是涉及數據加載,會使效率變的低下。因為數據還會涉及從數據庫到服務器,這個過程并非數據直接轉發。在一些場景固定的情況下,我們可以直接將數據放到內存中,這樣算法計算完的數據,可以就在內存中保存,然后直接開發接口,由外部應用調用。

問題描述:使用第三方插件,如uwsgi,gunicorn插件將服務發布到生產后。常規寫法無法保證任務同時進行且互不影響。如果使用開發服務wsgi直接啟動,可以使用多線程方式實現,但服務并不穩定,官方也不推薦這樣使用。

解決方案:方案同樣是使用多線程,只不過需要使用后臺運行的方式,讓算法在后臺運行,這樣算法在運行時,不會阻塞web服務的主進程。即可保證同時運行

技術路線:算法、flask、gunicorn

具體代碼:見下圖

重點說明:在這里邊其實只有一個之間沒有怎么接觸過的點就是后臺運行。daemon模式,這個模式的運行,不會阻塞主線程。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/20841.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/20841.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/20841.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深度學習-03-函數的連續調用

深度學習-03-函數的連續調用 本文是《深度學習入門2-自製框架》 的學習筆記,記錄自己學習心得,以及對重點知識的理解。如果內容對你有幫助,請支持正版,去購買正版書籍,支持正版書籍不僅是尊重作者的辛勤勞動&#xff0…

LLaMA-Factory推理實踐

運行成功的記錄 平臺:帶有GPU的服務器 運行的命令 git clone https://github.com/hiyouga/LLaMA-Factory.git cd LLaMA-Factory/ conda create -n py310 python3.10 conda activate py310由于服務器不能直接從huggingface上下載Qwen1.5-0.5B,但本地可…

51仿真器 PZ-51Tracker 未知設備

插上仿真器,右擊我的電腦 等待一下,選擇winUSB 此時在keil中選擇仿真器會報錯,需要安裝如下我是win10) 安裝好后退出再試,沒有報錯即可 這項也要選擇 另外配置晶振

MYSQL之存儲篇

MYSQL之存儲篇 存儲過程簡介存儲過程優點: MySQL的存儲過程MySQL存儲過程的創建1.格式2.聲明分割符3.參數4.變量5.注釋6.MySQL存儲過程的調用7. MySQL存儲過程的查詢8.MySQL存儲過程的修改9.MySQL存儲過程的刪除10. MySQL存儲過程的控制語句11.MySQL存儲過程的基本函…

mybatis配置環境流程

mybatis配置環境流程 為啥要用mybatis&#xff1a;通過Mybatis實現快速訪問后端pgsql、mysql等數據庫。 1.修改pom.xml&#xff0c;添加mybatis相關依賴 <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-s…

React + SpringBoot開發用戶中心管理系統

用戶中心項目搭建筆記 技術棧 前端技術棧 “react”: “^18.2.0”,ant-design-pro 后端技術棧 SpringBoot 2.6.x 項目源碼地址 https://gitee.com/szxio/user-center 前端項目搭建 快速搭建一個后端管理系統項目框架 初始化 antDesignPro 官網&#xff1a; https://…

Spel表達式使用案例

package com.example.demo.api;import com.example.demo.model.User; import lombok.extern.slf4j.Slf4j;<

CSS Web前端框架:深入剖析與應用實踐

CSS Web前端框架&#xff1a;深入剖析與應用實踐 在快速發展的Web技術領域&#xff0c;CSS Web前端框架已成為構建現代化、高效且響應式網頁的關鍵工具。它們不僅簡化了開發過程&#xff0c;還提高了代碼的可維護性和復用性。然而&#xff0c;面對眾多紛繁復雜的框架選擇&…

ByteBuddy字節碼增強器

Byte Buddy是java的字節碼增強器&#xff0c;一個優雅的運行時java代碼生成庫&#xff0c;使用時需要慎重 文檔地址&#xff1a;http://bytebuddy.net/#/tutorial-cn 1. 引入ByteBuddy <!-- https://mvnrepository.com/artifact/net.bytebuddy/byte-buddy --><depend…

LeetCode---哈希表

242. 有效的字母異位詞 給定兩個字符串 s 和 t &#xff0c;編寫一個函數來判斷 t 是否是 s 的字母異位詞。 注意&#xff1a;若 s 和 t 中每個字符出現的次數都相同&#xff0c;則稱 s 和 t 互為字母異位詞。 代碼示例&#xff1a; //時間復雜度: O(n) //空間復雜度: O(1) c…

Java生成PDF筆記整理

引入依賴, groupId:com.itextpdf, version:8.0.4, artifactId如下kernel,io,layout,forms創建pdf對象try(ByteArrayOutputStream outputStream new ByteArrayOutputStream()){PdfWriter writer new PdfWriter(outputStream, new WriterProperties().setFullCompressionMode(t…

離線安裝python庫

1. 下載安裝包 在聯網機器上安裝 # 選擇符合目標架構的版本&#xff0c;主要是libc版本和python版本 pip download --platformmanylinux2010_x86_64 --only-binary:all: --python-version3.7.4 tabulate # 或者 pip download --platformmanylinux_2_5_x86_64 --only-binary:a…

do...while循環

基本語法 while循環&#xff0c;是先判斷條件再執行。 do...while循環&#xff0c;是先斬后奏&#xff0c;先至少執行一次循環語句塊中的邏輯&#xff0c;再判斷是否繼續。 do {//do while 循環語句塊; } while (bool類型的值);注意&#xff1a;do...while語句&#xff0c;存…

Common Lisp筆記

在計劃學習函數式編程的時候&#xff0c;我一開始打算學習的是 F#。因為我朋友就是在 DTU 上的學&#xff0c;F# 就是 DTU&#xff08;丹麥理工&#xff09;開發的。但是由于 F# 和微軟的 .NET 綁定&#xff0c;而在 macOS 上&#xff0c;目前版本的 .NET 的是有些問題的&#…

2020編程語言排序:探索編程界的熱門與趨勢

2020編程語言排序&#xff1a;探索編程界的熱門與趨勢 在數字時代的浪潮中&#xff0c;編程語言作為構建數字世界的基石&#xff0c;其流行度和影響力不容忽視。2020年&#xff0c;各大編程語言在各自的領域里展現出獨特的魅力和實力。本文將從四個方面、五個方面、六個方面和…

線性代數|機器學習-P3乘法和因式分解矩陣

文章目錄 1. 矩陣分解2. S Q Λ Q T SQ\Lambda Q^T SQΛQT3. A U Σ V T AU\Sigma V^T AUΣVT4. A LU 分解5. 矩陣的四個子空間 1. 矩陣分解 目前我們有很多重要的矩陣分解&#xff0c;每個分解對應于多個前提條件&#xff0c;分解方法&#xff0c;分解后的形狀會中如下&…

【Vue】v-for中的key

文章目錄 一、引入問題二、分析問題 一、引入問題 語法&#xff1a; key屬性 "唯一值" 作用&#xff1a;給列表項添加的唯一標識。便于Vue進行列表項的正確排序復用。 為什么加key&#xff1a;Vue 的默認行為會嘗試原地修改元素&#xff08;就地復用&#xff09;…

馬寶國和沈有容-UMLChina建模知識競賽第5賽季第12輪

DDD領域驅動設計批評文集 做強化自測題獲得“軟件方法建模師”稱號 《軟件方法》各章合集 參考潘加宇在《軟件方法》和UMLChina公眾號文章中發表的內容作答。在本文下留言回答。 只要最先答對前3題&#xff0c;即可獲得本輪優勝。 如果有第4題&#xff0c;第4題為附加題&am…

大模型備案語料來源安全要求

大模型備案的語料來源安全要求&#xff0c;對服務提供者的要求如下。 a&#xff09;語料來源管理方面&#xff1a; 1&#xff09;面向特定語料來源進行采集前&#xff0c;應對該來源語料進行安全評估&#xff0c;語料內容中含違法不良信息超過5%的&#xff0c;不應采集該來源…

R語言ggplot2包繪制網絡地圖

重要提示&#xff1a;數據和代碼獲取&#xff1a;請查看主頁個人信息&#xff01;&#xff01;&#xff01; 載入R包 rm(listls()) pacman::p_load(tidyverse,assertthat,igraph,purrr,ggraph,ggmap) 網絡節點和邊數據 nodes <- read.csv(nodes.csv, row.names 1) edges…