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

基于Apache Ftpserver的可自定義文件系統(tǒng)的文件服務(wù)器

2020-12-24 08:01:42王峰
軟件 2020年7期
關(guān)鍵詞:程序工程信息

摘? 要: 當(dāng)下的計算機(jī)文件系統(tǒng)發(fā)展進(jìn)程中,因為大數(shù)據(jù)、數(shù)據(jù)安全、業(yè)務(wù)場景定制化等需要,會有不同的文件系統(tǒng)。比如專屬于大數(shù)據(jù)存儲的開源分布式文件系統(tǒng)hadoop,紅旗文件系統(tǒng),嵌入式定制的linux文件系統(tǒng)。現(xiàn)基于apache的的開源項目ftpserver,此論文提供了一個可通用的文件系統(tǒng)服務(wù)的中間件方案,此方案可定制化到任何可被java實現(xiàn)文件接口的文件系統(tǒng)。文件系統(tǒng)服務(wù)可將不同文件系統(tǒng)的文件進(jìn)行對等傳輸和共享。可節(jié)約機(jī)器資源消耗,節(jié)約一部分開發(fā)量,簡化軟件架構(gòu)設(shè)計。

關(guān)鍵詞: 自定義文件系統(tǒng);文件傳輸服務(wù)器;hadoop文件系統(tǒng);大數(shù)據(jù);中間件

中圖分類號: TP393.093 ???文獻(xiàn)標(biāo)識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.039

本文著錄格式:王峰. 基于Apache Ftpserver的可自定義文件系統(tǒng)的文件服務(wù)器[J]. 軟件,2020,41(07):192-196

File Server For Customizable File System Based on Apache Ftpserver

WANG Feng

(School of Statistics, University of International Business and Economics, Beijing 100000, China)

【Abstract】: In the current development of computer file systems, there will be different file systems because of the need for big data, data security, and customization of business scenarios. For example, the open source distributed file system hadoop which is dedicated to big data storage, redflag file system, and embedded custom linux file system. Now based on apaches open source project ftpserver, this paper provides a common middleware solution for file system services. This solution can be customized to any file system that can be implemented by java. File system services can peer-transfer and share files from different file systems. It can save machine resource consumption, save part of development, and simplify software architecture design.

【Key words】: Customizable file system; File transform server; Hadoop file system; Big data; Middleware

0? 引言

在本人項目開發(fā)過程中,涉及到大數(shù)據(jù)分布式hadoop文件系統(tǒng)。由于工作的合作分工以及網(wǎng)絡(luò)安全的考量,需要對外提供一個文件服務(wù)來接收采集數(shù)據(jù),并上傳到云平臺,中間會把數(shù)據(jù)落到本地磁盤,在本地磁盤上會做一次本地文件管理以及腳本定制開發(fā)。以上過程需要浪費一定的開發(fā)人力,進(jìn)行組織和維護(hù)文件并上傳到云平臺,如果對數(shù)據(jù)有一定實時性要求,軟件整體架構(gòu)不變的情況下,需要做定時掃描文件更新情況,并做定制化的文件上傳程序。所以,本地文件系統(tǒng)傳輸?shù)酱髷?shù)據(jù)文件系統(tǒng),存在著各種不方便。基于以上問題,此過程可

通過一個中間件來節(jié)約硬件資源,簡化程序架構(gòu)設(shè)計,減少重復(fù)的定制化開發(fā)。對于傳統(tǒng)的文件系統(tǒng)平滑過渡到分布式文件系統(tǒng),ftp文件傳輸服務(wù)是一項重要的中間件技術(shù)。所以此項目應(yīng)用而生。項目開發(fā)到現(xiàn)在,已經(jīng)測試并可用于hadoop文件系統(tǒng)和本地文件系統(tǒng),并將此項目開源到github平臺。項目名稱為abitmiss-ftpserver,希望此項目可以給不同文件系統(tǒng)的架構(gòu)設(shè)計提供新的思路,為生產(chǎn)實踐帶來方便,也希望專業(yè)人士能提供建議、文檔和代碼幫助。

1 ?項目架構(gòu)

項目結(jié)構(gòu)簡單,可進(jìn)行極少的配置更改實現(xiàn)文件傳輸服務(wù)器的功能,文件傳輸服務(wù)器的其他功能

需要極少的配置就可以實現(xiàn)。基于apache ftpserver工程,項目成熟度高,符合標(biāo)準(zhǔn)的文件傳輸協(xié)議規(guī)范。對用戶來講,使用透明,對具體的文件系統(tǒng)類型無感知。使用相同的ftp連接和執(zhí)行口令,可實現(xiàn)文件的用戶驗證、上傳、下載、刪除、重命名、拷貝、列表、切換路徑、當(dāng)前路徑顯示等功能。

1.1 ?中間件說明

如圖1,在當(dāng)前版本中,只添加實現(xiàn)了hadoop文件系統(tǒng)的ftpserver。在原始的apache ftpserver中,只支持本機(jī)文件系統(tǒng),經(jīng)添加hadoop文件系統(tǒng)的實現(xiàn)代碼,可支持hadoop文件系統(tǒng)。相應(yīng)的,其他文件系統(tǒng),在支持java實現(xiàn)文件系統(tǒng)的接口的情況下,可通過添加相應(yīng)的定制化代碼加以支持。

對于hadoop文件系統(tǒng),abitmiss-ftpserver服務(wù)可部署到任何安裝有hadoop的gateway組件或者安裝有datanode、namenode的節(jié)點上,可安裝到不同的機(jī)器上做網(wǎng)絡(luò)負(fù)載均衡,可提供active mode和passive mode兩種文件傳輸協(xié)議服務(wù)模式。對于客戶端來講,ftp服務(wù)的使用是透明的,對ftp服務(wù)器所使用的具體文件系統(tǒng)類型無感知,只需要知道機(jī)器的ip、端口信息用戶驗證信息即可。ftp客戶端命令使用和本機(jī)文件系統(tǒng)的客戶端命令使用方式相同。

在工程項目規(guī)劃中,可因為此中間件,簡化傳統(tǒng)數(shù)據(jù)平臺遷移到大數(shù)據(jù)平臺思考方式,簡化工程分工,節(jié)約開發(fā)工作量,平滑過渡數(shù)據(jù)遷移模塊,節(jié)約人力成本。在軟件架構(gòu)設(shè)計中,提供了一種簡便的設(shè)計方式。在軟件實現(xiàn)中。相對來講,相對實時性的傳輸數(shù)據(jù)到大數(shù)據(jù)平臺。

1.2? 程序組織結(jié)構(gòu)

Apache Ftpserver模塊修改代碼塊中文件系統(tǒng)的Factory的對象后,添加并更改文件系統(tǒng)為定制的文件系統(tǒng),并添加定制的文件系統(tǒng)處理類、工廠類等,得到Abitmiss FtpServer(此項目名稱)。其中apache ftpserver,包含基礎(chǔ)的ftpserver的服務(wù)器配置、監(jiān)聽端口配置、用戶配置、基礎(chǔ)的ftp命令實現(xiàn)、ssl/tls安全支持、日志支持等。Abitmiss ftpserver只是在apache ftpserver基礎(chǔ)上修改文件系統(tǒng)為自定義文件系統(tǒng):hadoop文件系統(tǒng)。其中此服務(wù)基礎(chǔ)功能基于apache ftpserver項目,所以,此工程具有apache ftpserver所具有的功能。在此十分感謝此開源項目,為此中間件項目的實現(xiàn)提供了便利的條件和基礎(chǔ)。

1.3 ?工程路徑結(jié)構(gòu)

項目重新組織了工程結(jié)構(gòu),使工程路徑組織結(jié)構(gòu)更標(biāo)準(zhǔn)、明晰、規(guī)整。此工程包名稱格式為abitmiss-ftpserver-${version}-RELEASE.tar.gz。以下為路徑結(jié)構(gòu)說明:

bin路徑,是程序服務(wù)程序的入口,可以帶入?yún)?shù)達(dá)到abitmiss-ftpserver啟動(start)、停止(stop)、狀態(tài)(status)、重啟(restart)的程序操作。此路徑可放入到系統(tǒng)環(huán)境變量中,供用戶在操作系統(tǒng)任意路徑下使用命令。

sbin路徑包含程序啟動、停止、狀態(tài)的具體腳本以及程序環(huán)境變量配置信息。在部署運行之前,可根據(jù)平臺環(huán)境的具體情況,對程序環(huán)境變量配置信息做一定的更改,以滿足程序運行條件。

conf路徑為程序的配置信息,包含程序配置、用戶配置、日志配置信息、ftp服務(wù)配置信息。此路徑下的配置文件,需要根據(jù)不同的部署情況和平臺環(huán)境情況,做一定的配置更改。

logs路徑包含程序執(zhí)行的日志信息,存儲日志信息。由conf路徑下的log4j.log文件決定。可更改log4j.log配置文件更改日志打印方式和存儲方式。

dependency路徑為程序所依賴的jar包。此依賴項不包含hadoop依賴性jar包,hadoop依賴性jar包需要在conf路徑下配置。

lib路徑為此程序的定制jar包。此路徑只能包含一個.jar結(jié)尾的文件。啟動時會通配.jar結(jié)尾文件并僅且只有一個。

程序路徑結(jié)構(gòu)如圖3。

2 ?測試情況

此中間件程序現(xiàn)有階段僅支持hadoop文件系統(tǒng)和原生的本機(jī)文件系統(tǒng)的文件傳輸服務(wù)。故分別做了一定的測試。測試過程如下:

2.1? 2.1 ?測試環(huán)境基礎(chǔ)條件

采用esxi系統(tǒng)虛擬出8臺虛擬主機(jī)(如圖4)來安裝大數(shù)據(jù)平臺,每臺機(jī)器配置如下(詳見圖5)。

2 core cpu

12GB RAM memory

40GB + 200GB ROM disk memory

1000Mbps bandwidth network

系統(tǒng)及大數(shù)據(jù)平臺部署情況:

CentOS7系統(tǒng)

Java Development Kit 8u191

Cloudera Manager CDH6.1.1

Hadoop 3.0.0

大數(shù)據(jù)平臺組件部署信息如圖6。

本次測試只用到了大數(shù)據(jù)組件的hadoop file system角色組件,其他組件不用。其中hdfs角色配置信息如圖7。

2.2? Hadoop文件系統(tǒng)測試情況

部署程序到任何一臺包含有hdfs客戶端配置的機(jī)器上并解壓。

到工程路徑的conf路徑下,修改相應(yīng)配置文件的配置信息(詳情配置見工程說明);另有工程依賴的環(huán)境配置信息到sbin路徑下配置。開通防火墻ftp端口對外訪問權(quán)限。配置根路徑為hadoop文件系統(tǒng)的/user/test/abc,路徑目錄結(jié)構(gòu)信息如圖8。

到工程路徑下啟動運行abitmiss ftpserver程序,然后在任意一臺可連接此ftpserver所在機(jī)器的主機(jī)(作為客戶端主機(jī))上,執(zhí)行ftp命令連接abitmiss ftpserver服務(wù)并做相應(yīng)的用戶驗證,然后測試ls、get、put、pwd、cd等ftp命令。到工程路徑的logs路徑下查看日志信息,日志信息正常顯示并無報錯和告警信息。目錄結(jié)構(gòu)信息以及測試命令過程如圖9。

經(jīng)驗證,上傳和下載數(shù)據(jù)文件和原始文件md5值相同,為同一文件。可正常執(zhí)行cd、pwd、put、get等命令并得到相應(yīng)的預(yù)期結(jié)果。ftp路徑結(jié)構(gòu)信息和hadoop路徑結(jié)構(gòu)信息可一一對應(yīng)。由此,可驗證此工程有效,可實現(xiàn)hadoop文件系統(tǒng)的ftp服務(wù)功能。

2.3 ?本機(jī)文件系統(tǒng)測試情況

關(guān)閉上述工程,修改配置項,改為本地文件系統(tǒng)的ftpserver配置(詳情配置見工程說明)。修改ftpserver根路徑為/home/test;然后到此工程路徑下啟動abitmiss ftpserver服務(wù)程序;最后到客戶端主機(jī)執(zhí)行ftp命令連接ftpserver主機(jī),驗證用戶信息,并執(zhí)行l(wèi)s、pwd等命令。且到工程路徑下的logs路徑查看日志信息,日志打印正常,并無看到告警和報錯日志輸出。測試命令過程如圖10。

經(jīng)驗證,此功能和原有的apache ftpserver功能相同。可正常實現(xiàn)本地文件系統(tǒng)的ftp服務(wù)功能。

3 ?結(jié)論

程序測試并運行正常,并可自定義文件系統(tǒng)為hadoop文件系統(tǒng)。對于客戶端來講,使用相同的ftp命令,實現(xiàn)用戶驗證、上傳、下載、列表、拷貝、重命名、刪除、當(dāng)前路徑顯示、路徑切換等功能。

以此類推,此工程項目可添加其他類型的文件系統(tǒng)。只要定制化的文件系統(tǒng),可以用java語言實現(xiàn)或調(diào)用其文件系統(tǒng)操作接口,理論上都可以集成到此項目中。對于大數(shù)據(jù)平臺系統(tǒng),可安裝到不同的機(jī)器上,做網(wǎng)路負(fù)載均衡。

工程已經(jīng)做了開源,可到github上clone代碼到編譯器中,進(jìn)行修改和驗證,也歡迎提出寶貴意見,協(xié)助增加、修改此工程的其他功能。

程序使用基于apache ftpserver基礎(chǔ)做服務(wù),符合標(biāo)準(zhǔn)的文件傳輸協(xié)議規(guī)范,工程邏輯實現(xiàn)成熟度較高。對客戶端來講是透明的,客戶端無感知,可復(fù)用客戶端原始的代碼和邏輯,客戶端工程維護(hù)成本低,可平滑遷移到新的文件系統(tǒng)平臺。

工程缺點說明:大數(shù)據(jù)平臺在kerberos驗證下的情況,未作長期穩(wěn)定性測試。已知的暫未處理的缺點:在kerberos驗證過期的情況下,需要重新實例化hadoop的filesystem實例。目前沒有實現(xiàn)自動更新hadoop的filesystem實例的功能。當(dāng)前的處理方式,如果有kerberos驗證的情況下,在kerberos驗證過期之前重啟此服務(wù)。

參考文獻(xiàn)

  1. 胡棟梁, 秦曉軍, 王曉鋒. 基于消息中間件的分布式網(wǎng)絡(luò)掃描研究[J/OL]. 計算機(jī)工程: 1-15[2020-03-01]. https: //doi. org/10. 19678/j. issn. 1000-3428. 0056018.

  2. 劉文杰. 基于HDFS的大數(shù)據(jù)文件傳輸實驗設(shè)計[J]. 實驗室研究與探索, 2019, 38(12): 132-134+215.

  3. 陳芳州. 基于HDFS的云環(huán)境數(shù)據(jù)存儲優(yōu)化技術(shù)研究[D]. 南京郵電大學(xué), 2019.

  4. 戴威. 一種跨HDFS集群的文件資源分布式高效存儲方法[J]. 電子設(shè)計工程, 2019, 27(21): 14-17+22.

  5. 趙華茗. 搭建基于云計算的開源海量數(shù)據(jù)挖掘平臺[J]. 現(xiàn)代圖書情報技術(shù), 2010(10): 76-81.

  6. 鄭華兵. FTP服務(wù)器在公司企業(yè)網(wǎng)的應(yīng)用研究[J]. 通訊世界, 2019, 26(10): 136-137.

猜你喜歡
程序工程信息
試論我國未決羈押程序的立法完善
“程序猿”的生活什么樣
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
英國與歐盟正式啟動“離婚”程序程序
子午工程
太空探索(2016年6期)2016-07-10 12:09:06
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
工程
工程
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
工程
主站蜘蛛池模板: 国产特一级毛片| 天天躁日日躁狠狠躁中文字幕| 强乱中文字幕在线播放不卡| 国产91麻豆视频| 欧美成人国产| 免费人成视网站在线不卡| 91人妻日韩人妻无码专区精品| 欧美一级在线| 欧美成人免费午夜全| 在线观看无码a∨| 久久综合九色综合97网| 久久免费精品琪琪| 日韩精品专区免费无码aⅴ| 69av在线| 黄色网在线| 996免费视频国产在线播放| 97青青青国产在线播放| 亚洲欧洲日韩综合色天使| 色综合成人| 亚洲男人在线| 国产成人精品2021欧美日韩| 亚洲成AV人手机在线观看网站| 欧美国产菊爆免费观看| 另类综合视频| 国产欧美又粗又猛又爽老| 91福利国产成人精品导航| 伊人无码视屏| 国产国拍精品视频免费看| 青青操国产| 国产精品区视频中文字幕| 在线国产你懂的| 99资源在线| 国产一区二区免费播放| 在线看片国产| 91蜜芽尤物福利在线观看| 久久情精品国产品免费| 欧美亚洲国产精品第一页| 在线观看免费国产| 免费不卡在线观看av| 国产成人无码AV在线播放动漫 | 伊人欧美在线| 久久综合丝袜长腿丝袜| 无码视频国产精品一区二区| 国产精品尤物铁牛tv| 女人av社区男人的天堂| 亚洲视频欧美不卡| 婷婷六月综合| 99热这里只有精品免费| 免费观看无遮挡www的小视频| 日韩毛片在线视频| 动漫精品啪啪一区二区三区| 国产福利一区视频| 国产亚洲精| 秋霞国产在线| 国产成人精品第一区二区| 一级爆乳无码av| 国产在线日本| 一级毛片网| 国产精品视频导航| 欧美亚洲中文精品三区| 成年A级毛片| 日本欧美一二三区色视频| 亚洲日韩精品伊甸| 国产91丝袜在线播放动漫 | 久久久亚洲色| 久久国产免费观看| 国产福利一区在线| a在线亚洲男人的天堂试看| 亚洲中文字幕手机在线第一页| 久久国产精品国产自线拍| 114级毛片免费观看| 99精品热视频这里只有精品7| 久久中文字幕2021精品| 97免费在线观看视频| 亚洲va视频| 久久99国产乱子伦精品免| 亚瑟天堂久久一区二区影院| 亚洲欧美日韩精品专区| 国产网友愉拍精品| 欧洲成人在线观看| 国产va视频| 免费国产高清视频|