iT邦幫忙

0

想請問imgur的原理是什麼呢???

  • 分享至 

  • xImage

最近吃飯跟朋友喜歡聊一些天馬行空的問題,
討論到imgur。
我就覺得真的很神奇,這個網頁本身沒什麼太多內容,就很簡單、單純。

我朋友說,你也可以架設一個伺服器來做啊。

1.我大概有個概念知道怎麼架圖床,
不過不太清楚要怎麼把幫user上傳的連結丟回給他們,
想知道這也是靠前端的JS嗎?

還是有其他語言,好像市面上沒有教怎麼寫這種網頁的課XDDD
todolist很多,
不過我想弄的是這種「有服務性質」的。
ex.幫文件轉檔等等....

這些東西都是怎麼實作的呢?是否有相關課程或文章可以閱讀?

2.我想問一下,imgur是否是有一個超大的伺服器來儲存user的圖片呢?
據說好像都不會刪圖,
那豈不是要佔據非常大的物理空間、成本?

以上愚昧無知,還請指教

jeffeux iT邦新手 4 級 ‧ 2023-01-09 04:04:46 檢舉
JS 可以做到呀~但是東西理論上都存在伺服器裡面⋯⋯
可是你有錢嗎? :'( (除非你用廣告)
yun1231 iT邦新手 3 級 ‧ 2023-01-09 09:56:12 檢舉
印象中有 API 可以用吧
混水摸魚 iT邦研究生 2 級 ‧ 2023-01-09 12:04:45 檢舉
要做圖床你除了要考慮儲存空間之外,流量頻寬跟IO都很恐怖也很燒錢,沒有你想像中的簡單。

當然要當練習的項目是可以,想要靠這個賺錢很難。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
JamesDoge
iT邦高手 1 級 ‧ 2023-01-23 04:00:46
最佳解答

1.我大概有個概念知道怎麼架圖床,
不過不太清楚要怎麼把幫user上傳的連結丟回給他們,
想知道這也是靠前端的JS嗎?

還是有其他語言,好像市面上沒有教怎麼寫這種網頁的課XDDD
todolist很多,
不過我想弄的是這種「有服務性質」的。
ex.幫文件轉檔等等....

這些東西都是怎麼實作的呢?是否有相關課程或文章可以閱讀?

你大概需要學會這些來實作:

  1. 前端:Imgur目前前端使用了React框架 , 這是一個由Facebook開發的前端JavaScript框架。React允許開發人員構建高性能的用戶界面,並提供了一組組件化的開發工具,可以讓開發人員輕鬆地重用程式碼。
  2. 後端:Imgur 的後端是使用Laravel 開發的, Laravel 是一個基於PHP的開發框架,提供了一個簡單而強大的工具集來開發Web應用程序。它提供了許多功能, 如路由,模板引擎,數據庫管理,認證和權限等等,這些都是構建網站所需的基礎功能。
  3. 資料庫:Imgur 使用 MySQL 作為其資料庫。 MySQL 是一個開源關聯式資料庫管理系统,它提供了高性能,可靠性和易用性。它可以與多種程式語言集成,如PHP,在這種情況下, Laravel 框架就可以使用 MySQL 來進行資料存儲和操作。
  4. 存儲空間:Imgur使用Amazon S3存儲圖片需要學會使用Amazon S3存儲服務的API。
  5. 網絡加速: Imgur有使用了CDN (Content Delivery Network)來加速圖片的加載,具體是使用了Amazon CloudFront作為其CDN(Content Delivery Network)服務商,需要學會使用CloudFront API,這樣可以確保用戶能夠快速,高效地訪問圖片。
  6. API: Imgur提供了一個API,使開發人員能夠在他們的應用程序中使用Imgur的圖片。

2.我想問一下,imgur是否是有一個超大的伺服器來儲存user的圖片呢?
據說好像都不會刪圖,
那豈不是要佔據非常大的物理空間、成本?

Imgur將圖片存儲在Amazon S3上,這是一個雲存儲服務。這樣可以提高存儲容量和可靠性,並且還可以降低成本。

成本部分:

  1. 根據Amazon S3的定價頁面,每月存儲每GB數據的成本約為 $0.023 。因此,如果Imgur存儲了1TB的數據,則其存儲成本約為 $23美金。
  2. 資料傳輸: 根據Amazon S3的定價頁面,在美國內部傳輸的成本為 $0.00 每GB,在美國外部傳輸的成本約為 $0.09/GB
  3. 請求: 根據Amazon S3的定價頁面,每1萬個請求的成本約為 $0.005。

假設 Imgur 使用了 100TB 的圖片存儲在 Amazon S3 上, 那麼根據 Amazon S3 的定價計價方式,存儲成本約為 $2300美元/月 但是實際成本可能會更高, 因為還有其他服務的成本也要算在內。

以上愚昧無知,還請指教

akajoke iT邦新手 5 級 ‧ 2023-01-25 00:21:20 檢舉

很好的方向 我會慢慢規劃 謝謝分析 給您最佳解答
也謝謝其他回答者

3

1.我大概有個概念知道怎麼架圖床,
不過不太清楚要怎麼把幫user上傳的連結丟回給他們,
想知道這也是靠前端的JS嗎?

一般說是靠前端的JS也不完全對就是了。因為還是得要經過後端的上傳後,再回傳連結。
依前端來說的話,大多是利用AJAX的方式處理了。
如果是FORM的模式,則是直接連結在轉頁上呈現就行了。
所以,並非是一定靠前端JS。但後端上傳處理生成連結,則是一定要的。

不過我想弄的是這種「有服務性質」的。
ex.幫文件轉檔等等....
這些東西都是怎麼實作的呢?是否有相關課程或文章可以閱讀?

一定是靠後端語言處理的。你只要決定好你要用的後端語言是什麼。PHP、PY、JAVA、.NET、GO....
都是可以做到的。課程的話,可能比較沒有針對這種的課程。
但文章一定有。

2.我想問一下,imgur是否是有一個超大的伺服器來儲存user的圖片呢?
據說好像都不會刪圖,
那豈不是要佔據非常大的物理空間、成本?

人家佛心來。且認真來說。並不是完全不會刪圖。
如果你上傳高解析度或容量超大的圖片。如果有傳上去的話,大多數都不會存活很久。
或是直接就被壓縮圖片了。
現在雲端主機很好用。完全不需要擔心容量問題。只要有錢就行。
至於錢從哪來的。很多來源就是了。

結論:
總之,你想問的東西。範圍有點太廣範。大略的幫你縮小一下範圍針對一下說明。
提外話,其實也不一定要自已做,自已做有時反而累。
要自已維護機器,還要自已寫程式。
現在有非常多的第三方都有在做這些。大多是免費(限次數或容量)

akajoke iT邦新手 5 級 ‧ 2023-01-09 15:56:01 檢舉

@㊣浩瀚星空㊣
的確,因為太無知沒辦法縮小問題範圍。
但您的解答很清楚地都把我的疑問說明清楚了!
果然是前輩,非常感謝。

我要發表回答

立即登入回答