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

基于Apache Ftpserver的可自定義文件系統的文件服務器

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

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

關鍵詞: 自定義文件系統;文件傳輸服務器;hadoop文件系統;大數據;中間件

中圖分類號: TP393.093 ???文獻標識碼: A??? DOI:10.3969/j.issn.1003-6970.2020.07.039

本文著錄格式:王峰. 基于Apache Ftpserver的可自定義文件系統的文件服務器[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? 引言

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

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

1 ?項目架構

項目結構簡單,可進行極少的配置更改實現文件傳輸服務器的功能,文件傳輸服務器的其他功能

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

1.1 ?中間件說明

如圖1,在當前版本中,只添加實現了hadoop文件系統的ftpserver。在原始的apache ftpserver中,只支持本機文件系統,經添加hadoop文件系統的實現代碼,可支持hadoop文件系統。相應的,其他文件系統,在支持java實現文件系統的接口的情況下,可通過添加相應的定制化代碼加以支持。

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

在工程項目規劃中,可因為此中間件,簡化傳統數據平臺遷移到大數據平臺思考方式,簡化工程分工,節約開發工作量,平滑過渡數據遷移模塊,節約人力成本。在軟件架構設計中,提供了一種簡便的設計方式。在軟件實現中。相對來講,相對實時性的傳輸數據到大數據平臺。

1.2? 程序組織結構

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

1.3 ?工程路徑結構

項目重新組織了工程結構,使工程路徑組織結構更標準、明晰、規整。此工程包名稱格式為abitmiss-ftpserver-${version}-RELEASE.tar.gz。以下為路徑結構說明:

bin路徑,是程序服務程序的入口,可以帶入參數達到abitmiss-ftpserver啟動(start)、停止(stop)、狀態(status)、重啟(restart)的程序操作。此路徑可放入到系統環境變量中,供用戶在操作系統任意路徑下使用命令。

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

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

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

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

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

程序路徑結構如圖3。

2 ?測試情況

此中間件程序現有階段僅支持hadoop文件系統和原生的本機文件系統的文件傳輸服務。故分別做了一定的測試。測試過程如下:

2.1? 2.1 ?測試環境基礎條件

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

2 core cpu

12GB RAM memory

40GB + 200GB ROM disk memory

1000Mbps bandwidth network

系統及大數據平臺部署情況:

CentOS7系統

Java Development Kit 8u191

Cloudera Manager CDH6.1.1

Hadoop 3.0.0

大數據平臺組件部署信息如圖6。

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

2.2? Hadoop文件系統測試情況

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

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

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

經驗證,上傳和下載數據文件和原始文件md5值相同,為同一文件。可正常執行cd、pwd、put、get等命令并得到相應的預期結果。ftp路徑結構信息和hadoop路徑結構信息可一一對應。由此,可驗證此工程有效,可實現hadoop文件系統的ftp服務功能。

2.3 ?本機文件系統測試情況

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

經驗證,此功能和原有的apache ftpserver功能相同。可正常實現本地文件系統的ftp服務功能。

3 ?結論

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

以此類推,此工程項目可添加其他類型的文件系統。只要定制化的文件系統,可以用java語言實現或調用其文件系統操作接口,理論上都可以集成到此項目中。對于大數據平臺系統,可安裝到不同的機器上,做網路負載均衡。

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

程序使用基于apache ftpserver基礎做服務,符合標準的文件傳輸協議規范,工程邏輯實現成熟度較高。對客戶端來講是透明的,客戶端無感知,可復用客戶端原始的代碼和邏輯,客戶端工程維護成本低,可平滑遷移到新的文件系統平臺。

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

參考文獻

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

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

  3. 陳芳州. 基于HDFS的云環境數據存儲優化技術研究[D]. 南京郵電大學, 2019.

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

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

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

猜你喜歡
程序工程信息
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
子午工程
太空探索(2016年6期)2016-07-10 12:09:06
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
工程
工程
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
工程
主站蜘蛛池模板: 亚洲清纯自偷自拍另类专区| 熟妇丰满人妻| 98超碰在线观看| 九月婷婷亚洲综合在线| 99久久亚洲精品影院| 99久久国产精品无码| 欧美成人二区| 伊人国产无码高清视频| 少妇精品网站| 亚洲欧美精品日韩欧美| 国产亚洲精久久久久久无码AV| 日韩精品毛片人妻AV不卡| 中文字幕第4页| 最新国产精品鲁鲁免费视频| 伊人激情综合| 九九热精品视频在线| 欧美国产日产一区二区| 精品一区二区三区视频免费观看| 国产精选小视频在线观看| 玖玖免费视频在线观看| 精品午夜国产福利观看| 国产av一码二码三码无码| 永久毛片在线播| 在线观看热码亚洲av每日更新| 国产欧美精品专区一区二区| 无遮挡国产高潮视频免费观看| 亚洲国产成人超福利久久精品| 91精品网站| 乱人伦视频中文字幕在线| 国产精品成人第一区| 成人日韩精品| 国产精品欧美在线观看| 激情影院内射美女| 日韩第一页在线| 亚洲Av综合日韩精品久久久| 欧美亚洲中文精品三区| 四虎国产精品永久在线网址| 2021国产v亚洲v天堂无码| 久久久久亚洲Av片无码观看| 青草免费在线观看| 永久免费av网站可以直接看的| 91极品美女高潮叫床在线观看| 久久人人97超碰人人澡爱香蕉| 中文字幕精品一区二区三区视频| 国产在线精品网址你懂的| 亚洲最大情网站在线观看| 国产午夜人做人免费视频中文| 亚洲一区无码在线| 日韩免费毛片| 欧美一区二区三区欧美日韩亚洲 | 亚洲日本www| 71pao成人国产永久免费视频| 国产黄在线免费观看| 国产精品护士| 天堂亚洲网| 免费A∨中文乱码专区| 国产日韩欧美成人| 国产v精品成人免费视频71pao| 国产精品国产三级国产专业不| 亚洲国产成人在线| 中文字幕无码av专区久久| 国产剧情国内精品原创| 99精品影院| 久久香蕉欧美精品| 青青草久久伊人| 刘亦菲一区二区在线观看| 免费观看男人免费桶女人视频| 国模私拍一区二区三区| 国产成人精品一区二区三在线观看| 成人精品午夜福利在线播放| 久久久久久久蜜桃| 国产精品网拍在线| 亚洲午夜国产精品无卡| 谁有在线观看日韩亚洲最新视频| 天堂网亚洲系列亚洲系列| 欧美成人精品一区二区| 免费在线播放毛片| Aⅴ无码专区在线观看| 国产成人欧美| 中文字幕在线播放不卡| 成年A级毛片| 一本色道久久88亚洲综合|