亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于Flask的Python Web開發(fā)

        2020-11-24 17:40:34史寶坤李欣王淑嫻樊笑含張真真河北農(nóng)業(yè)大學(xué)
        數(shù)碼世界 2020年3期
        關(guān)鍵詞:數(shù)據(jù)庫(kù)環(huán)境語(yǔ)言

        史寶坤 李欣 王淑嫻 樊笑含 張真真 河北農(nóng)業(yè)大學(xué)

        引言

        隨著計(jì)算機(jī)技術(shù)的發(fā)展,web開發(fā)技術(shù)也迅速的發(fā)展。它們對(duì)開發(fā)者以及對(duì)編程語(yǔ)言,編程框架的要求越來(lái)越高。而Flask作為簡(jiǎn)單且易于拓展的web框架,適用于前后端分離的應(yīng)用程序的 Web 服務(wù)器端開發(fā),有利于提高開發(fā)者的效率,減少耦合。同時(shí)此框架使用Python語(yǔ)言編寫,許多第三方庫(kù)可供開發(fā)者使用,方便了開發(fā)者的學(xué)習(xí)及開發(fā)。

        1 Python簡(jiǎn)介

        Python 是一個(gè)面向?qū)ο蟮哪_本語(yǔ)言。它結(jié)構(gòu)簡(jiǎn)單,定義清晰易于開發(fā)者的學(xué)習(xí),閱讀和維護(hù)。它有著豐富的類庫(kù),可以嵌入到其他語(yǔ)言中,被稱為膠水語(yǔ)言。其提供了很多關(guān)于數(shù)據(jù)庫(kù)的接口,適用于MVC開發(fā)模式,提高了開發(fā)者開發(fā)效率。此外,還具有可移植,可拓展等特性。近幾年, 它逐漸成為主流的編程語(yǔ)言,廣泛應(yīng)用到web開發(fā)中。

        在使用Python進(jìn)行web應(yīng)用的開發(fā)中,要充分利用它的標(biāo)準(zhǔn)庫(kù)以及第三方庫(kù)。相較于C語(yǔ)言其速度慢。因此,對(duì)于某些速度要求很高的程序代碼,應(yīng)該合理利用其可嵌入性,調(diào)用C語(yǔ)言的代碼,提高程序運(yùn)行速度。

        2 Flask簡(jiǎn)介

        作為一種用Python語(yǔ)言編寫的“微”框架。其依賴 Jinja模板引擎和 Werkzeug工具箱進(jìn)行工作。進(jìn)行數(shù)據(jù)庫(kù)操作時(shí),可以根據(jù)自己的需要選取合適的數(shù)據(jù)庫(kù)。同時(shí)可以使用SQLAlchemy進(jìn)行對(duì)象關(guān)系映射,更加高效的進(jìn)行數(shù)據(jù)庫(kù)的操作。其作為一個(gè)輕量級(jí)的框架,只提供最基礎(chǔ)的功能,但是可以通過(guò)調(diào)用類庫(kù)進(jìn)行拓展,使后端業(yè)務(wù)邏輯層的編寫更加簡(jiǎn)單,大大減輕了開發(fā)者的負(fù)擔(dān),適用于Web API開發(fā)。

        3 服務(wù)端Flask應(yīng)用的生產(chǎn)環(huán)境配置

        無(wú)論是C/S還是B/S架構(gòu),合理的配置好服務(wù)器端Flask生產(chǎn)環(huán)境極其重要。在進(jìn)行Web API開發(fā)中,我們?cè)谝慌_(tái)安裝了Linux系統(tǒng)服務(wù)器上進(jìn)行了部署。部署可以分成:基礎(chǔ)環(huán)境的配置,采取Nginx+Gunicorn的方式部署。

        3.1 Python及Flask的安裝

        服務(wù)器上安裝Python,建議使用python3。然后使用pip install Flask 該服務(wù)器上安裝Flask。

        3.2 Nginx+Gunicorn的方式部署Flask。

        Nginx提供Http代理,反向代理,負(fù)載均衡,web緩存等功能,通過(guò)修改配置文件來(lái)實(shí)現(xiàn)。進(jìn)行反向代理時(shí)根據(jù)自己的需求設(shè)置正則表達(dá)式,采取不同的轉(zhuǎn)發(fā)策略。Nginx對(duì)請(qǐng)求進(jìn)行解析判斷,符合哪一個(gè)正則表達(dá)式,就將請(qǐng)求轉(zhuǎn)發(fā)到哪個(gè)服務(wù)器中。進(jìn)行負(fù)載均衡時(shí)采用加權(quán)輪詢方法進(jìn)行負(fù)載均衡設(shè)置,設(shè)置每個(gè)服務(wù)器的權(quán)重,高效處理客戶端請(qǐng)求。對(duì)服務(wù)器響應(yīng)時(shí)間,傳輸大小等設(shè)置能使服務(wù)器更安全效率的運(yùn)行。

        Gunicorn 運(yùn)行Flask項(xiàng)目服務(wù)器中的應(yīng)用。其可以容納 WSGI應(yīng)用,提供Flask工作環(huán)境的依賴,同時(shí)支持多進(jìn)程運(yùn)行,提高了并發(fā)數(shù)。

        4 基于Flask的API實(shí)現(xiàn)

        在基于Flask的Web開發(fā)中,后端使用flask處理前端發(fā)送的請(qǐng)求,進(jìn)行控制器邏輯和業(yè)務(wù)邏輯的開發(fā)。 前端可以使用不同的語(yǔ)言調(diào)用后端開發(fā)的接口,實(shí)現(xiàn)前后端分離開發(fā)。

        4.1 接口目錄文件

        DAO:主要完成與數(shù)據(jù)層相關(guān)的工作,如數(shù)據(jù)庫(kù)的創(chuàng)建以及對(duì)其增刪改查等操作。

        app:主要是一些方法類的實(shí)現(xiàn)。在某一個(gè)具體的類中使用flask_restful對(duì)前端發(fā)送的請(qǐng)求進(jìn)行相關(guān)的讀取等操作。使用reqparse進(jìn)行參數(shù)的解析,成功后,調(diào)用數(shù)據(jù)層中方法進(jìn)行數(shù)據(jù)的相關(guān)操作。最后將數(shù)據(jù)層中返回的數(shù)據(jù)進(jìn)行加工,返回給前端。

        server.py:接口的啟動(dòng)文件。當(dāng)接收到前端發(fā)送的請(qǐng)求時(shí),根據(jù)路由規(guī)則相應(yīng)類執(zhí)行。

        logs:接口的日志,記錄了接口運(yùn)行時(shí)產(chǎn)生的狀態(tài),config.py:配置文件,如與數(shù)據(jù)庫(kù)的相關(guān)配置等。

        4.2 接口測(cè)試

        在后端程序完成后使用一些軟件對(duì)接口的功能進(jìn)行測(cè)試。

        5 結(jié)束語(yǔ)

        本文對(duì)Python以及Flask的基本概念進(jìn)行了研究,介紹了如何基于Flask框架配置服務(wù)器環(huán)境以及基于Flask的Web API開發(fā)。我們發(fā)現(xiàn)Flask框架可以簡(jiǎn)單方便的進(jìn)行Web API開發(fā)。作為一個(gè)輕量級(jí)的web架構(gòu),F(xiàn)lask可以快速簡(jiǎn)單的進(jìn)行高質(zhì)量Web的開發(fā),能夠滿足計(jì)算機(jī)技術(shù)日新月異發(fā)展的要求。

        猜你喜歡
        數(shù)據(jù)庫(kù)環(huán)境語(yǔ)言
        長(zhǎng)期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
        一種用于自主學(xué)習(xí)的虛擬仿真環(huán)境
        語(yǔ)言是刀
        文苑(2020年4期)2020-05-30 12:35:30
        孕期遠(yuǎn)離容易致畸的環(huán)境
        環(huán)境
        讓語(yǔ)言描寫搖曳多姿
        數(shù)據(jù)庫(kù)
        累積動(dòng)態(tài)分析下的同聲傳譯語(yǔ)言壓縮
        數(shù)據(jù)庫(kù)
        數(shù)據(jù)庫(kù)
        另类亚洲欧美精品久久不卡| 精品久久久久久亚洲综合网| 国产精品特级毛片一区二区三区 | 国产激情视频免费观看| 免费看黄视频亚洲网站| 国产亚洲成av人片在线观看| 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 久久精品人妻嫩草av蜜桃| 国产女同va一区二区三区| 国产又色又爽又黄的| 激情另类小说区图片区视频区 | 尤物yw无码网站进入| 国产免费一区二区av| 国产激情自拍在线视频| 国产午夜精品综合久久久| 日本一区二区三区视频网站| 天干天干天啪啪夜爽爽av| 亚洲国产福利精品一区二区| 国产黑色丝袜在线观看网站91| 亚洲综合中文字幕综合| 国产午夜精品一区二区三区嫩草| 欧美黄色免费看| 一区两区三区视频在线观看| 欧美又大又硬又粗bbbbb| 人人妻人人澡人人爽久久av | 亚洲一区二区三区在线更新| 婷婷亚洲岛国热超碰中文字幕| 特级av毛片免费观看| 中文字幕永久免费观看| 97人妻中文字幕总站| 97se狠狠狠狠狼鲁亚洲综合色| 日本强好片久久久久久aaa| 中国老太老肥熟女视频| 亚洲av手机在线网站| 中文字幕乱码熟女人妻水蜜桃| 欧美成人www免费全部网站| 91热久久免费频精品99| 日本边添边摸边做边爱喷水 | 国产第一页屁屁影院| 亚洲av一区二区国产精品| 91色老久久偷偷精品蜜臀懂色|