分散式檔案伺服器SeaweedFS,控訴京東TigLab抄襲其程式碼
【獵雲網(微信:)北京】9月29日報道
獵雲網今日獲悉,分散式檔案儲存開源專案SeaweedFS作者以知乎ID:Chris Lu(資料介紹為:SeaweedFS, Gleam、Glow作者)連發兩篇文章,控訴京東方面建立的TigLab抄襲其程式碼。
Chris Lu表示,在京東TigLab所公佈的ContainerFS原始碼中,tiglabs/containerfs的關鍵資料儲存部分程式碼讀起來與自己若干年以前開發的SeaweedFS專案有著“異樣的熟悉”。
據瞭解,SeaweedFS是基於go語言開發的高可用檔案儲存系統,該伺服器以二進位制方式儲存檔案,可上傳並下載,具有“成儲存上億的檔案(最終受制於你的硬碟大小)”、“速度剛剛的”兩大特性。
Seaweedfs的設計原理是基於Facebook的一篇圖片儲存系統的論文Facebook-Haystack。
另據瞭解,Seaweedfs以前舊版叫Weedfs。
以下為 ofollow,noindex">《京東抄我的開源程式怎麼辦?》 原文:
最近在github上搜索,碰到京東方面建立的TigLab公佈出來的ContainerFS原始碼。 tiglabs/containerfs 其中關鍵的資料儲存部分程式碼讀起來異樣的熟悉。彷彿時光倒流到SeaweedFS若干年以前。
例如storage/chunk.go 裡面,函式名WalkIndexFile, 兩種檔名".cpx", ".cpd", 變數名TombstoneFileSize。其實都是我拍拍腦袋想出來的。當時自己覺得很土的名字。沒想到還有人認真的沿用了。真是非常榮幸。
tiglabs/containerfs——github.com
ContainerFS 做儲存的,這段程式碼是最關鍵的垃圾回收的部分。抄起SeaweedFS來挺大氣的。不過抄的挺認真的。別的地方一般都有test. 這麼重要的地方都不用寫test.
例如,Google上隨便搜尋一下TombstoneFileSize,看看是不是都是指向SeaweedFS.
這是我相關的一些程式碼 https://github.com/chrislusf/seaweedfs/blob/master/weed/storage/volume_vacuum.go#L41 不過這是最新的,程式碼重構了無數次了,加了不少新的功能。京東估計也是改了不少變數名稱,另外增加了不少功能。(當然這些功能是從哪裡學習來的我就不知道了。)
據最近京東的報道,“幻想一蹴而就和急功近利,都是容器化過程中的大忌。” 看來京東踏踏實實的借鑑了不少前人的經驗。只是不用說明而已。
京東構建了全球最大的Kubernetes叢集,沒有之一
"我們也計劃釋出我們的內部自研專案。在 http://github.com/tiglabs 上能找到很多。我們還計劃提出新的CNCF專案。其中一個專案是ContainerFS。它是一個與Kubernetes無縫整合的大規模容器原生叢集檔案系統。"
https://www.kubernetes.org.cn/4407.html
在SeaweedFS微信群裡的反響:
以下為 《京東抄我的開源程式怎麼辦?(續集)》 原文:
聯絡了京東的負責人。京東的效率非常高。在穩住我的同時,偷偷讓程式設計師改了一些明顯的引數名,儘快掃除痕跡。然後批評我不該發知乎,讓他吃驚了。薑還是老的辣!下面是一些截圖讓大家一起學習見識一下:
聯絡對話
具體的 commit 細節
看看群里人的反應
對於不瞭解的同學,我想說一下,真的只是不想和京東摻和。對於這種事,生氣傷身體。大浪淘沙,奶茶即使變綠茶也說要守得雲開見月明。見識了,多吐吐,大家就會遺忘了吧。