學(xué)AI,好工作 就找北大青鳥
關(guān)注小青 聽課做題,輕松學(xué)習(xí)
周一至周日
4000-9696-28

一招教你如何存儲和前女友的私密照片

來源:北大青鳥總部 2023年02月03日 11:23

摘要: FastDFS是阿里開源的一個優(yōu)秀的輕量級高性能的分布式文件存儲系統(tǒng),提供了核心的文件上傳、下載、文件同步等功能,它是分布式架構(gòu)下的文件存儲,這就意味這個它可以應(yīng)對分布式環(huán)境下的各種問題。

眾所周知,程序猿很難有女朋友的,因為女生都喜歡擼貓,不喜歡擼代碼的;

有女朋友的程序猿,又因為白天黑夜的加班,沒有時間陪女朋友,整天和機器打交道,又缺少哄女朋友的天分,分手吧,分手吧。

夜深人靜,程序猿面對Bug時,一臉痛苦時,也總會打開一個加密的文件夾,翻看著前女朋友的照片回憶下逝去青春;耳邊單曲循環(huán)著那首歌 “ 懷念啊我們的青春啊,昨天在記憶里生根發(fā)芽,愛情滋養(yǎng)心中那片土地,綻放出美麗不舍的淚花 ” 。



雖然很懷念,但是現(xiàn)任女朋友發(fā)現(xiàn)了可怎么辦?越想越覺得不安。

突然,天空劃過一道閃電,猿小二突然站起來一拍猿腦(程序猿的腦袋),既然保存在在本地電腦上不安全,何不把這些照片都保存到云服務(wù)器(文件服務(wù)器)上呢,說干就干。



那么問題來了,這么多的圖片服務(wù)器廠商,選擇哪一個呢?聽說,阿里開源了一個叫Fastdfs的文件系統(tǒng)很好用,于是抱著試試看看的心態(tài),先來一個療程的


文件服務(wù)器-FastDFS

開始之前,咱們還是先來了解下阿里的這個分布式文件系統(tǒng)是個啥東西,它是阿里開源的一個優(yōu)秀的輕量級高性能的分布式文件存儲系統(tǒng),提供了核心的文件上傳、下載、文件同步等功能;最重要的是它是分布式架構(gòu)下的文件存儲,這就意味這個它可以應(yīng)對分布式環(huán)境下的各種問題,如:負(fù)載均衡等。

FastDFS 文件系統(tǒng)主要有三部分組成:

? Tracker Server(跟蹤服務(wù)器):主要做調(diào)度工作,如:負(fù)載均衡。

? Storage Server(存儲服務(wù)器):主要存儲文件和文件屬性相關(guān)信息

? Client(客戶端):主要是調(diào)用文件服務(wù)器接口進(jìn)行文件的上傳、下載等操作

如果是僅僅用來存儲前女朋友的照片,是有點大材小用了;不過鑒于此事,關(guān)系到程序猿的幸福生活,還是值得的



上傳和前女友私密照片

了解了FastDFS之后,接下里我們就開始上傳私密圖片吧,在正式開始之前我們要先準(zhǔn)備下環(huán)境,所謂“兵馬未動,糧草先行”,咱么也得先來準(zhǔn)備下文件服務(wù)器,由于這里安裝文件服務(wù)器不是我們這里的重點,所以在這里具體步驟不在贅述,我這里是在Linux上安裝的FastDFS(fastdfs的安裝非常復(fù)雜),接下來就開始在SpringBoot中集成FastDFS



創(chuàng)建項目工程

首先按照咱么的慣例,先來使用Spring Initializr(當(dāng)然別的方式也可以,主要是構(gòu)建Maven工程)創(chuàng)建Spring Boot 基礎(chǔ)工程


添加fastdfs客戶端的依賴

<dependency>
<groupId>com.github.tobato</groupId>
<artifactId>fastdfs-client</artifactId>
<version>1.26.5</version>
</dependency>


添加fastdfs配置信息

在application.properties屬性文件中添加fastdfs的相關(guān)配置信息

# fastDFS 配置 # 192.168.25.133是老師的虛擬機的ip
fdfs.tracker-list=192.168.25.133:22122


創(chuàng)建fastdfs配置類

配置類需要應(yīng)用啟動的時候注冊上傳文件必要的類

/**
* fastdfs文件上傳的配置類
*/
// 使用連接池的FastDFS
@Import(FdfsClientConfig.class)
// 解決jmx重復(fù)注冊bean的問題
@EnableMBeanExport(registration = RegistrationPolicy.IGNORE_EXISTING)
@Configuration
public class FileConfig {

}


測試結(jié)果

編寫測試類,將圖片上傳到文件服務(wù)器

@SpringBootTest
@RunWith(SpringJUnit4ClassRunner.class)
public class DemoApplicationTests {

@Autowired
private FastFileStorageClient storageClient;

/**
* 文件上傳服務(wù)器
*/
@Test
public void testUpload() throws FileNotFoundException {
// 本地文件路徑
File file = new File("D:\\Desktop\\xxxx\\110611110635b5f987b74e70c5.jpg");
// 上傳圖篇
StorePath storePath = storageClient.uploadFile(
new FileInputStream(file), file.length(), "jpg", null);
// 打印上傳到服務(wù)器的圖片路徑
String imagePath = storePath.getFullPath();
System.out.println("圖片在服務(wù)器路徑:" + imagePath);
}
}


運行結(jié)果,看到控制臺返回一串路徑,如下:group1/M00/00/00/wKgZhV5czHGAIJRXAAJthmwF-no493.jpg

這個就是圖片被上傳到文件服務(wù)器后返回的保存在服務(wù)器的路徑



然后我們就可以在瀏覽器輸入192.168.25.133/group1/M 直接訪問上傳的圖片,路徑是:http://服務(wù)器ip + 服務(wù)器返回的圖片路徑,是不是很簡單呢,以后有再多的女朋友也不用怕了,心中竊喜,哈哈哈...


標(biāo)簽: 分布式
熱門班型時間
人工智能就業(yè)班 即將爆滿
AI應(yīng)用線上班 即將爆滿
UI設(shè)計全能班 即將爆滿
數(shù)據(jù)分析綜合班 即將爆滿
軟件開發(fā)全能班 爆滿開班
網(wǎng)絡(luò)安全運營班 爆滿開班
報名優(yōu)惠
免費試聽
課程資料
官方微信
返回頂部
培訓(xùn)課程 熱門話題 站內(nèi)鏈接