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

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

2020-06-29 07:16周文浩宋英雄
微型電腦應用 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)

猜你喜歡
入庫初創代碼
“初創”杯喜劇大賽
2021年山西省6591家科技型中小企業入庫
中國食品品牌庫入庫企業信息公示②
中國食品品牌庫入庫企業信息公示①
初創企業的估值與融資問題
京滬初創企業領跑亞洲
《花花腸子》《倒車入庫》《拔牙之后》《老農趕集》
神秘的代碼
一周機構凈增(減)倉股前20名
重要股東二級市場增、減持明細
主站蜘蛛池模板: 免费国产黄线在线观看| 99热这里都是国产精品| 国产精品毛片一区| 99成人在线观看| 人妻少妇乱子伦精品无码专区毛片| 国内熟女少妇一线天| 亚洲一区二区约美女探花| 国产成人禁片在线观看| 99热这里只有精品免费| 久久久久久午夜精品| 潮喷在线无码白浆| 午夜福利亚洲精品| 国产极品美女在线| 久久青草热| 国产精品亚洲专区一区| 亚洲综合18p| 欧美黄色网站在线看| 日韩精品成人在线| 在线99视频| 成人午夜亚洲影视在线观看| 久久香蕉国产线| 亚洲国产欧美中日韩成人综合视频| 午夜一级做a爰片久久毛片| 午夜国产在线观看| 亚洲精选高清无码| 国产黄色片在线看| 亚洲婷婷在线视频| av手机版在线播放| a级毛片免费播放| 成年片色大黄全免费网站久久| 影音先锋丝袜制服| 亚洲成a人片在线观看88| 久久黄色一级视频| 成人中文在线| 亚洲αv毛片| 亚洲国产成人在线| 国产原创第一页在线观看| 国产精品爽爽va在线无码观看 | 国产一级毛片高清完整视频版| 国产精品一区二区不卡的视频| 亚洲天堂成人在线观看| 国产三区二区| 亚洲视频a| 亚洲欧洲美色一区二区三区| 精品久久人人爽人人玩人人妻| 婷婷亚洲视频| 色偷偷综合网| 美女黄网十八禁免费看| 97无码免费人妻超级碰碰碰| 日本一区二区三区精品AⅤ| 国产色网站| 亚洲人成电影在线播放| 国产精品手机在线观看你懂的 | 国产综合欧美| 亚洲αv毛片| 亚洲黄色成人| 四虎AV麻豆| 欧美精品不卡| 午夜视频www| 国产精品亚洲精品爽爽| 欧美国产综合色视频| 真实国产乱子伦视频| 18禁影院亚洲专区| 亚洲精品视频免费| 久久影院一区二区h| 在线观看免费人成视频色快速| 欧美精品伊人久久| 九色在线视频导航91| 任我操在线视频| 亚洲精品无码久久久久苍井空| 97超爽成人免费视频在线播放 | 欧美午夜视频| 华人在线亚洲欧美精品| av在线无码浏览| 99这里精品| 四虎永久在线精品影院| 在线国产综合一区二区三区| 亚洲女人在线| 国产女人18毛片水真多1| 久久精品一品道久久精品| 亚洲久悠悠色悠在线播放| 亚洲一区国色天香|