999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于PhalApi的Api服務平臺系統的設計與研究

2020-06-29 07:16:23周文浩宋英雄
微型電腦應用 2020年5期
關鍵詞:系統

周文浩 宋英雄

摘 要:不同于大型企業,中小型初創企業在為自身應用研發相應的Api服務平臺的同時,需要注重時間成本和經濟成本的控制。而采用基于PhalApi和OAuth2.0協議的輕量級架構可以在保證系統資源安全的前提下達到敏捷開發,縮短開發周期的目的。通過在該架構下對大量數據批量存儲入庫效率的測試研究,進一步優化了系統在大量數據存儲入庫方面的性能。該系統為中小型初創企業提供了一個平衡時間和成本的Api服務平臺方案。

關鍵詞:PhalApi框架;OAuth2.0協議;批量存儲;成本控制

Abstract:Differing from large enterprises, small and medium-sized start-ups need to pay attention to the control of time cost and economic cost while developing corresponding Api service platform for their own applications. The lightweight architecture based on PhalApi and OAuth 2.0 protocol can achieve agile development and shorten the development cycle on the premise of ensuring the security of system resources. By testing and studying the efficiency of mass data storage in the framework, the performance of the system in mass data storage is further optimized. This system provides an Api service platform for small and medium-sized start-ups to balance time and cost.

Key words:PhalApi frame;OAuth2.0 protocol;batch storage;cost control

0 引言

當今大型企業的Api服務平臺的后端業務框架多是基于SSM(Spring SpringMVC MyBatis)來開發的,對于那些中小型初創企業而言,采用此框架需要維護一個規模不小的開發運維團隊,從時間和金錢角度而言也是開銷巨大的。另外,對于某些特定業務功能而言,無論是在開發速度還是迭代周期等方面,SSM又顯得太過笨重。有鑒于此,OpenApi服務平臺系統的成本與性能的平衡問題是中小型初創企業不可回避的。

本文所研究探索的基于PhalApi的Api服務平臺系統正是致力于解決中小型初創企業無法找到合適貼切的開源框架的困境。其良好的架構約束規范保證了在海量數據下系統的性能穩定[1]。這些都對中小型初創企業在降低開發和維護自身開放服務平臺時的時間和金錢成本方面具有重要意義。

1 系統的設計

1.1 基于WAMP的底層環境架構設計

WAMP是指在Windows環境下配置Apache+Mysql+PHP相關組件的一種開源軟件環境架構[2]。在整個系統結構中,WAMP作為底層環境架構主要負責對http請求的解析處理和響應,具體結構如圖1所示。

在實際設計過程中若以外網的方式訪問,則需要更改apache的相關配置文件。在配置文件夾中找到httpd.conf這個文件,找到deny from all這行代碼并刪除,然后把allow from 127.0.0.1這行代碼更改為allow from all[3]。具體的配置文件代碼,如圖2所示。

另外,為了為了確保url重寫功能能夠正常運行,需要把配置文件中AllowOverride none這段代碼更改為AllowOverride all。具體代碼如圖3所示:

1.2 基于OAuth2.0認證協議的安全設計

基于OAuth2.0協議,用戶可以在無需為第三方應用提供用戶名和密碼的情況下授權第三方應用以調用api等方式訪問其保存在服務器上的視頻,照片等私密資源[4]。OAuth2.0的大致框架流程,如圖4所示。

它既保障了用戶私密信息的安全性,又減少了因為授權問題而產生的同步時延問題的時間成本,進一步提升了用戶體驗。

使用授權碼模式完成OAuth2.0授權的過程需要以下3個步驟:(1)client請求授權服務端,獲取Authorization Code;(2)client通過Authorization Code再次請求授權服務端,獲取Access Token;(3)client通過服務端返回的Access Token獲取用戶的基本信息[5]。而第三方應用正式通過上述的幾個接口與服務端交互進而獲得用戶授權的,其主要的流程,如圖5所示。

具體實現代碼,如圖6所示。

1.3 PhalApi輕量級框架

PhalApi框架又被稱為π框架,作為國內一款完全開源的輕量級PHP Api開發框架,它非常適用于api平臺的接口服務開發,支持HTTP/SOAP/RPC協議,可用于快速搭建微服務、RESTful接口或Web Services[6]。連接后端數據庫的相關配置代碼如下所示:

2 系統性能測試

由于本系統是面向某企業設計的聚合類接口服務平臺,因此在性能上必須保證穩定和高效。而在實際應用中需要每隔一段時間調用一次入庫Api存儲十萬級甚至百萬級的數據,所以接下來著重測試Test.Warehouse接口。

2.1 測試準備

本次測試采用本機作為一臺小型服務器。同時,為了使測試結果具有可對比性,除了保證硬件設備參數一致外,每次對后臺數據庫進行十萬級數據寫入操作后都清空相關表格。具體測試環境信息,如表1所示。

2.2 測試流程

首先我們采用逐條插入的方式將10萬條數據進行存儲入庫。測試結果為一次性逐條入庫10萬條數據所需耗時為86.397秒。顯然,這種低效的入庫方式在實際應用中是不能接受的。因此,我們需要對入庫方法和邏輯進一步優化。具體代碼如下所示。

在實際應用過程中,面對大量數據的存儲入庫問題,采用批量插入的方式可以極大地提升入庫效率,而通過進一步研究測試發現,單次提交的數量同樣會影響大量數據的入庫性能。測試過程中,更改單次提交數量,將10萬條數據分批提交入庫,得到九組測試數據,測試結果,如圖9所示。

3 結果分析

由系統測試結果可以看出,當使用PhalApi框架對十萬級甚至百萬級數據進行存儲入庫時,采用insert_multi批量插入的方式可以大幅提升海量數據的入庫效率。如圖11所示,進一步深入框架底層研究insert_multi函數的源碼可以發現,批量插入正是在一句標準插入SQL語句中封裝多條數據,然后提交至服務端。而如果采用逐條插入的方式,那么插入100 000條數據就會有100 000條insert語句提交到服務端,每一句都需要提交到數據庫引擎中去解析、優化。結果必將是增加數據庫的開銷,進而大大降低整個系統的性能。更簡明地說,批量插入使得提交到服務器地insert語句減少了,服務端壓力也隨之減小,雖然對單個SQL語句的解析和優化的時間相應增加,但實際的存儲數據行卻大幅增加,因此系統的整體性能得以提高。insert_multi函數底層源碼如下所示。

4 總結

本文設計的基于PhalApi和OAuth2.0協議的接口服務平臺系統具有可快速部署,安全性高,迭代周期短等特點,為中小型企業和初創團隊搭建聚合類接口服務平臺提供了一個平衡時間和金錢成本的高性價比方案。另外,通過對本系統性能的進一步研究測試,本系統經受了企業級的功能測試,在保證系統安全穩定運行的同時,還進一步提升了大量數據存儲入庫的效率。

參考文獻

[1] 歐海文,付永亮,于芋,等. 一種改進的OAuth授權機制有效性分析[J]. 計算機應用與軟件,2017,34(12):196-201.

[2] 黃小冬,陳薇. 教育教學數據Open API設計與實現[J]. 軟件導刊,2015,14(5):115-118.

[3] 段玉龍.基于OAUTH、OPENAPI、REST技術的快速開發云平臺架構的設計與實現[J].工業設計,2016(2):160-161.

[4] 王丹磊,李長軍,趙磊,等. OAuth 2.0協議在Web部署中的安全性分析與威脅防范[J]. 武漢大學學報(理學版),2012(12):41-43.

[5] 譚晨輝,劉青炎. OpenAPI出現、起源與現狀[J]. 程序員,2016(7):411-417.

[6] HARDT D. The OAuth 2.0 Authorization Framework[EB/OL]. (2012-3-30) http:// tools.ietf.org/html/draft-ietf-oauth-v2-31.

[7] Cloud Security Alliance. The Treacherous Twelve[EB/OL]. 2016:42(2):229-233.

(收稿日期:2019.09.22)

猜你喜歡
系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
基于UG的發射箱自動化虛擬裝配系統開發
半沸制皂系統(下)
FAO系統特有功能分析及互聯互通探討
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
一德系統 德行天下
PLC在多段調速系統中的應用
主站蜘蛛池模板: 精品视频一区二区观看| 亚洲男人在线天堂| 久久窝窝国产精品午夜看片| 免费毛片全部不收费的| 综合五月天网| 国产99久久亚洲综合精品西瓜tv| 欧亚日韩Av| 91无码人妻精品一区二区蜜桃| 国产精品99在线观看| 无码有码中文字幕| 国产网友愉拍精品视频| 亚洲欧美日韩中文字幕一区二区三区 | 国产一区二区三区日韩精品| 国产剧情无码视频在线观看| 91麻豆精品视频| 国产大片黄在线观看| 亚洲毛片在线看| 亚洲无卡视频| 丝袜国产一区| 亚洲欧洲日本在线| 亚洲aⅴ天堂| 毛片大全免费观看| 青青草国产精品久久久久| 亚洲天堂区| 91日本在线观看亚洲精品| 免费播放毛片| 国产成人精品在线| 婷婷六月激情综合一区| 91久久国产综合精品女同我| 亚洲一区二区日韩欧美gif| 欧美成人午夜视频免看| 国产亚洲精品在天天在线麻豆| 自偷自拍三级全三级视频| 香蕉色综合| 国产日韩欧美成人| 国产成人综合亚洲欧洲色就色| 99久久这里只精品麻豆| 麻豆a级片| a级毛片网| 亚洲国产系列| 国产精品主播| 免费一级毛片完整版在线看| 中文字幕免费视频| 久久青草精品一区二区三区| h视频在线观看网站| 91精品国产麻豆国产自产在线| 久久精品人人做人人综合试看| 亚洲美女一区| 国产黄色免费看| 国产白浆一区二区三区视频在线| 国产导航在线| 色哟哟国产精品| 天堂网亚洲系列亚洲系列| 凹凸国产分类在线观看| 97国产成人无码精品久久久| 亚洲人成人无码www| 亚洲中文字幕日产无码2021| 国产一区二区三区免费观看| 婷婷亚洲综合五月天在线| 国产精品亚欧美一区二区三区| 青草国产在线视频| 九九热精品视频在线| www.youjizz.com久久| 国产精品所毛片视频| 成人综合在线观看| 亚洲国产成人久久精品软件 | 在线精品欧美日韩| 爆乳熟妇一区二区三区| 99国产在线视频| 国产剧情国内精品原创| 日本免费福利视频| 精品欧美视频| 久久综合干| 国产亚洲精品精品精品| 亚洲欧美成aⅴ人在线观看| 亚洲福利一区二区三区| 欧美人与动牲交a欧美精品| 国产精品成人不卡在线观看| 波多野衣结在线精品二区| 亚洲日韩精品无码专区97| 亚洲丝袜中文字幕| 午夜电影在线观看国产1区|