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

基于微服務架構的農業數據云存儲研究

2022-03-31 10:27:14楊改改高賢強
浙江農業科學 2022年4期
關鍵詞:農業用戶服務

楊改改, 高賢強

(塔里木大學 信息工程學院,新疆 阿拉爾 843300)

近年來,隨著農業信息化建設的發展和農業綜合生產力的提高[1],各類農業數據得到重視,合理的保存和利用這些農業數據可以更好地指導和推動農業經濟的有效發展。然而,我國農業數據分布廣泛,增長迅速,農業信息資源呈現多元化與異構化特征[2-3]。面對海量農業數據[4],通過購買昂貴的大型服務器存儲,不僅成本高,而且這些服務器大多采用傳統的關系型數據庫管理數據,導致系統擴展升級困難,可維護性差。云存儲能有效地解決海量數據的存儲問題,最大限度地整合系統的存儲能力,減低數據存儲成本,大幅提高系統的整體性能及可維護性[5-7]。

隨著平臺的不斷發展,用戶數量和業務需求日益增多,傳統單體應用程序顯然很難滿足較大的網絡流量和復雜的業務需求,在這種情況下,可以采用微服務的架構模式。這種架構模式可將傳統的單體應用按照業務劃分為一個個小的服務,而這些小的服務之間又能相互通信、相互協調、相互配合,并具有可獨立部署、高可用、容錯等特點[8-10]。微服務架構有效解決了單體架構代碼量質量差、耦合性高、系統可維護性差和可擴展性差等問題[11-12],使得農業大數據可以更好地存儲和管理。

1 材料與方法

1.1 微服務架構

Martin Fowler和James Lewis于2014年共同提出微服務架構的概念[13]。微服務架構是軟件開發中的一種架構風格,它將一個大型復雜軟件應用根據業務功能劃分成多個微服務。每個服務運行在獨立進程中,服務底層可選擇適合自己的技術棧,實現并進行獨立部署,服務之間采用輕量級協議進行通信。

與微服務架構相比,傳統的單體架構系統耦合度高,擴展性和維護性較差。應用微服務架構可將業務系統徹底的組件化,圍繞業務功能組織服務,邊界清晰,耦合度降低,使基礎設施自動化,利于應用開發和部署[14]。本農業數據云存儲平臺研究使用的SpringCloud微服務[15],是以SpringBoot[16]為基礎,擁有一套完整的微服務實現組件,使分布式系統的開發更加簡單,平臺更易部署和維護。

1.2 Hadoop存儲原理

Hadoop是一個分布式系統基礎架構,由Apache基金會開發,實現了分布式文件系統HDFS(Hadoop Distributed File System)[17]。Hadoop適于存儲TB和PB級別的大型數據,其原理就是使用HDFS作為存儲系統。HDFS可運行于普通廉價機器,具有高容錯性,為數據存儲提供所需的擴展能力[18]。在一個Hadoop集群中,客戶端Client把上傳的文件切分成一個個Block,由NameNode處理客戶端請求,管理HDFS的名稱空間和數據塊(Block)映射信息。此外,多個DataNode節點存儲數據塊,執行數據塊的讀寫操作,而SecondaryNameNode輔助NameNode,分擔其工作量。圖1為Hadoop存儲數據的結構圖。

圖1 Hadoop存儲數據的結構

2 結果與分析

2.1 微服務架構設計

農業數據云存儲平臺是采用SpringCloud微服務架構,基于SpringBoot搭建微服務、前后端分離的理念進行開發的。圖2為基于SpringCloud 微服務架構圖,采用SpringCloud的組件Eureka為注冊中心進行服務注冊,Feign完成服務間的調用,Hystrix為熔斷器來提高系統整體的彈性,使用Gateway集群實現路由、限流、鑒權功能。

圖2 SpringCloud 微服務的架構

2.2 平臺整體架構設計

基于SpringCloud開發的農業數據云存儲平臺主要使用Hadoop分布式存儲進行農業數據的海量存儲,主要分為訪問層、轉發層、接口層、服務層和存儲層,圖3是平臺整體架構圖。

圖3 基于SpringCloud的農業數據云存儲平臺架構

訪問層。該層主要是在客戶端展示平臺的業務,給用戶提供訪問的端口,例如用PC端或者移動端去訪問農業數據云存儲平臺,實現用戶和存儲平臺之間的交互。

轉發層。為避免服務器崩潰,讓用戶有更好的體驗,該層搭建Nginx集群作為負載均衡承受高用戶量的訪問,可把用戶的請求分布在各個服務器上來緩解服務器的壓力,使性能得以提升。

接口層。農業數據平臺在該層搭建SpringCloud Gateway網關集群,提供一個簡單而有效的方式,對API進行路由。通過轉發服務,使前端的調用邏輯和復雜的內部服務調用變得更加簡便易操作,同時還具有安全、鑒權和限流功能。

服務層。該層基于微服務實現,主要分為業務服務、公共抽取服務以及服務管理。業務服務主要完成平臺要實現的邏輯功能和對數據的操作,公共抽取服務主要是對Feign、Ribbon、Hystrix等微服務組件和常用工具類的抽取,而服務管理通過注冊發現、配置管理和監控報警來支撐服務有效的運行,這些服務之間可通過HTTP或RPC協議互相調用。

存儲層。該層包括數據緩存和數據存儲。使用Redis數據庫做數據緩存可保證數據的高速訪問,同時還可將數據持久化到磁盤中,使數據的安全性得到保證。用Hadoop中的分布式文件系統HDFS做海量非結構化農業數據的存儲。

2.3 Hadoop分布式集群搭建

本試驗安裝了4臺版本為Centos7.4的Linux系統,并安裝了JDK和Hadoop,JDK版本為Java 1. 8.0_271,Hadoop版本為Hadoop 2.7.5。在4個節點組成的分布式集群中,包含1個master主節點和3個slave從節點,分別命名master、node01、node02和node03。4個節點分別關掉防火墻和selinux、host映射,配置時鐘同步。具體的集群規劃如表1所示。在實際生產環境中,可根據具體需求,動態的添加和刪除節點,提高集群的可維護性。

表1 分布式集群服務器節點規劃

4臺機器關閉防火墻和設置時鐘同步之后開始配置Hadoop集群環境:在core-site.xml中設置fs.default.name定義master的URI和端口,設置hadoop.tmp.dir指定臨時文件存儲目錄;在hdfs-site.xml來設置HDFS參數,dfs.namenode.http-address指定namenode的訪問地址和端口,dfs.namenode.name.dir和dfs.datanode.data.dir指定數據的存放位置,設置文件的副本個數dfs.replication的值為3;配置slaves文件,把從節點名稱加入到Master配置中;使用start-all.sh啟動Hadoop集群,輸入命令jps驗證成功。

2.4 平臺功能的實現

農業數據云存儲平臺主要由客戶端、數據管理、數據存儲和系統管理4個部分組成,每部分分別對應各自的微服務單元。每個微服務單元可以部署多個實例注冊到Eureka上,通過Feign互相調用,每個微服務單元專注自己業務互不影響,使得存儲平臺變得高內聚和低耦合,提升了平臺的擴展性和可維護性。

客戶端服務用來實現客戶與平臺的數據存儲交互,只要經過授權的用戶都可以進入云存儲平臺,它包括用戶注冊、用戶登錄、用戶鑒權等功能。

數據管理服務是客戶端和云存儲之間的交互介質,對上負責接收客戶端的請求,對下銜接數據存儲,對數據進行相應的轉換處理,其中具體包括農業數據文件的查看、上傳、下載、刪除、分享等功能。

數據存儲服務是云存儲的基礎,是農業數據存儲的具體介質,包含設備管理、狀態監控、升級維護等功能。

系統管理服務是對用戶及其權限管理和日志管理的設置,是其他功能模塊運行的基礎。主要包括用戶管理、權限管理和日志管理。

農業數據云存儲平臺整體頁面使用Bootstrap前端框架搭建而成。使用spring security完成對用戶的認證、授權和非法攻擊防護,確保用戶輸入正確的用戶名和密碼后才能進入平臺進行相關操作,登陸平臺首頁面,側邊菜單欄可以直觀地展示出該平臺不同權限的用戶所看到的業務功能模塊,用戶可點擊菜單欄就可進入子菜單進行更詳細的功能操作。

2.5 性能測試與分析

對本文所設計的云存儲平臺與Mysql這種通用存儲管理系統進行相關測試,對比兩者在存儲農業數據時性能上的差異。本實驗所選取的環境是由Hadoop集群和Mysql數據庫管理系統組成。Hadoop集群由4個服務器節點組成,其中1個節點為Master主節點,另外3個節點為slave數據節點。通過國家農業科學數據中心,獲取實驗中的46 775個數據資源。應用分布式存儲方法將這些實驗對象存入Hadoop集群中,同時將相同的實驗數據文件以longblob類型的形式存儲到Mysql數據庫中。

在實驗過程中,通過不同數量用戶并發訪問上述2種存儲方式,計算讀取數據耗時的差異,進而分析上述2種存儲方式的性能區別。本實驗各組所耗費時間是基于多次實驗耗時結果所得的平均值,如圖4為實驗所得的結果。

圖4 訪問耗時與并發數的關系

通過訪問耗時與并發數的關系結果圖可以看出,隨著用戶訪問并發數的增加,分布式存儲訪問耗時與Mysql存儲訪問耗時的差距逐漸增大,說明在高并發的情況下,分布式存儲中數據訪問性能要優于Mysql數據存儲訪問性能,從而說明本文所提出的基于微服務架構的分布式數據存儲方法可滿足海量農業數據的存儲和管理。

3 小結與討論

目前,農業信息化是我國農業生產發展的戰略化目標,對農業的生產和發展起著至關重要的作用[19-20]。然而我國農業數據具有種類繁多、數量龐大及數據結構復雜等特點。傳統單體架構面對復雜業務時可維護性和可擴展性較差以及并發性不足等問題,使得海量農業數據存儲過程中出現能力不足和管理困難等問題。

本研究創新性地將微服務與Hadoop技術結合,設計出一種基于SpringCloud微服務架構的農業數據云存儲平臺。在這個平臺中,通過Hadoop分布式集群實現農業數據的海量存儲,同時SpringCloud微服務架構提升了系統可擴展性、容錯性,以及開發和維護效率。系統測試結果表明,所構建的云存儲平臺性能穩定,能滿足海量農業數據的存儲,為農業信息化的發展提供一定的參考價值。

猜你喜歡
農業用戶服務
國內農業
今日農業(2022年1期)2022-11-16 21:20:05
國內農業
今日農業(2022年3期)2022-11-16 13:13:50
國內農業
今日農業(2022年2期)2022-11-16 12:29:47
擦亮“國”字招牌 發揮農業領跑作用
今日農業(2021年14期)2021-11-25 23:57:29
服務在身邊 健康每一天
今日農業(2019年12期)2019-08-15 00:56:32
服務在身邊 健康每一天
今日農業(2019年10期)2019-01-04 04:28:15
服務在身邊 健康每一天
今日農業(2019年16期)2019-01-03 11:39:20
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
主站蜘蛛池模板: 中文国产成人久久精品小说| 91精品国产丝袜| 亚洲欧洲日产国产无码AV| 亚洲最黄视频| 欧美色亚洲| 91精品最新国内在线播放| 成人av专区精品无码国产| 美女一级免费毛片| 无码视频国产精品一区二区| 被公侵犯人妻少妇一区二区三区| 午夜福利网址| 国产一二视频| 亚洲综合九九| 一本无码在线观看| 国产99视频在线| 久久精品无码国产一区二区三区| 国产精品一区在线麻豆| 99精品福利视频| 高潮爽到爆的喷水女主播视频| 久久综合结合久久狠狠狠97色| 伊人色综合久久天天| 亚洲欧美另类专区| 无码国产伊人| 亚洲日韩精品欧美中文字幕| 国产精品成人久久| 天堂在线亚洲| 美女潮喷出白浆在线观看视频| 亚洲天堂网在线播放| 日韩国产综合精选| 青青草原国产| 国产精品自在在线午夜区app| h网址在线观看| 老司机午夜精品网站在线观看| 无码啪啪精品天堂浪潮av| 亚洲欧美精品在线| 国产高清在线丝袜精品一区| 免费无码一区二区| 国产丝袜一区二区三区视频免下载| 伦精品一区二区三区视频| a毛片免费在线观看| 久久精品娱乐亚洲领先| 亚洲高清在线播放| 激情综合五月网| 激情综合图区| 欧美 亚洲 日韩 国产| 伊人久久精品无码麻豆精品| 欧美高清视频一区二区三区| 日韩a级片视频| 九九视频在线免费观看| 四虎亚洲精品| 国产精品久久自在自线观看| 亚洲人精品亚洲人成在线| 好紧好深好大乳无码中文字幕| 国产乱子伦视频三区| 五月天天天色| 国产精品男人的天堂| 亚洲国产欧美国产综合久久 | 亚洲成在线观看| 国产成人久视频免费| 亚洲三级成人| 最新国语自产精品视频在| 丁香综合在线| 91丨九色丨首页在线播放| 欧美一级黄色影院| 国产福利一区二区在线观看| 欧美国产日韩另类| 亚洲无码久久久久| 狠狠ⅴ日韩v欧美v天堂| 中文字幕在线播放不卡| 亚洲人成网站18禁动漫无码| 天天摸天天操免费播放小视频| 尤物午夜福利视频| 国产jizzjizz视频| 99热线精品大全在线观看| 黄色成年视频| 91国语视频| 欧美a在线| 日韩国产一区二区三区无码| 无码高潮喷水专区久久| 免费视频在线2021入口| 欧美高清日韩| 国产成人综合在线观看|