七牛存儲
Ⅰ 七牛雲存儲的關於七牛
七牛,是一家雲存儲初創企業,由國內存儲行業的領軍人物之一許式偉於2011年創立。團隊核心成員主要來自盛大、金山、網龍、惠普等知名互聯網公司,核心成員之間已合作多年。
七牛採用全分布式存儲架構,可以解決單一數據中心架構可能存在的風險。和傳統的雲存儲服務不同,七牛還增加了上傳下載全網加速以及圖片、音視頻的處理服務。
七牛雲存儲主要託管企業的靜態資源,為企業提供一站式在線數據託管、上傳下載全網加速、以及數據雲端處理服務。主要做靜態文件,包括富媒體一體化解決方案,解決富媒體存儲、上傳下載加速、數據處理,包括圖片處理、音視頻處理,比如說做縮略圖,打水印。
此外,七牛還提供了鏡像存儲、客戶端直傳以及斷點續上傳等功能,方便開發者的使用。
Ⅱ 如何獲取七牛雲存儲的AccessKey和SecretKey
牛在使用API方式管理文件是通過Access Key和Secret Key來認證的,這里只說下如何獲取這兩個KEY。
首先必須注冊一個七牛賬號(注冊鏈接),注冊完成後創建一個空間(BUCKEY,可以是公開的或私有的),點擊導航上的「賬號設置」:
然後點擊左側的「密鑰」,在右邊就可以看到你七牛賬戶對應的AK和SK,所有的使用API操作七牛雲存儲中的文件的方法都是需要提供這兩個參數的:
另外使用「創建新密鑰」的方法還可以再創建一組AK和SK,這樣就可以同時使用這兩組參數;或者創建一個新密鑰,再把舊密鑰停用後刪除,這樣就可以起到定期更換密鑰的功能,安全性大有保障。
Ⅲ 七牛雲存儲很牛么
牛年你最牛,此話有理由:才高過八斗,事業立上游,錢來如水流,身體健如牛,妻比明星秀,朋友遍五洲,吉祥伴你走,幸福到永久。
牛年鍾聲響,牛勁暗中藏。牛皮包美元,牛頭賺大錢。牛眼看金磚,牛尾獎錢栓。牛奶灑銀元,牛腳踏桂冠。牛年快樂!牛年發財!一個中國不動搖,兩岸三通架金橋,四川人民永不倒,五環旗下爭榮耀,六十華誕祖國好,七號神舟太空遨,八方盛贊改革潮,九州大地金牛鬧。
零點金牛來下凡,一個春節舉國歡,兩岸同胞會團圓,三十年間換新顏,四海賓朋聚五環,六旬華誕神七連,八面春風到九天,十分圓滿一整年!
願君喜迎新春牛,勤力敬業似耕牛,身強體壯賽公牛,心平氣和不鬥牛;愛情美滿勝牽牛,財運亨通賺金牛,春風得意莫吹牛,一年更比一年牛。
敲響新年的鍾聲,跨入牛年的時代;對待工作似耕牛,只講奉獻似奶牛;意志堅強似耗牛,敢於拼搏似公牛;願做祖國老黃牛,祝願大家都很牛。
牛年祝福就是牛,辛勤勞作似耕牛,勤於奉獻似奶牛,敢於拼搏似鬥牛,俯首甘為孺子牛,甘當祖國老黃牛。
瑞雪飄,寒梅俏,金牛哞哞報春早。鑼鼓敲,爆竹鬧,神州處處有歡笑。 交情牢,趕個巧,今兒巴巴送福到。身體好,財神找,牛運鼎鼎莫忘交!。。
覺得我說的不錯就給我分把付
最後祝樓主全家快樂~
Ⅳ 如何使用七牛雲存儲免費存儲功能
首先注冊,然後實名制一下領取10個G的免費空間,創建一個
bucket (存放文件的空間)
上傳的你文件,復制外鏈即可!
Ⅳ 我為什麼最終選擇了七牛雲存儲
說實話,當初在用又拍雲的時候,遇到了一些麻煩,因為我一開始不知道該怎麼操作,其操作界面不是很人性化,弄了半天才弄明白怎麼樣新建一個空間,新建空間之後,還需要用 FTP 軟體來管理這個空間的內容,在 Mac 上找到一個靠譜的FTP 管理工具並不容易,我試用了FileZilla 這個軟體,使用和配置 FTP 又花了我不少功夫。
反觀七牛則是一目瞭然,從新建空間、配置空間、上傳文件、獲取外鏈,全部都是在網頁中可以完成簡易的可視化操作:
在管理後台,無論是使用還是統計都是一目瞭然:
以我上傳一張照片並獲取外鏈供博客使用為例,比較一下又拍雲和七牛雲的流程:
又拍雲
1.打開並登錄 FTP 工具;
2.上傳圖片;
3.復制圖片名
4.在博客管理後台輸入外鏈路徑+圖片名(這一點最為麻煩,每次都需要手動輸入一長串鏈接地址)
七牛雲
1.直接在網頁管理後台上傳圖片(這個界面很友好,和 wordpress 的圖片上傳界面類似)
2.直接獲取復制完整外鏈即可(注意右側的圖片預覽功能,這個對於圖片多了之後防止誤操作很是實用)
相比之下,顯然是七牛雲在操作使用上更加簡便易行。
可視化圖片處理設置
在數據處理環節,七牛雲也比較方便,比如我的博客圖片寬度不能超過550px,否則會撐破主題,並且想加上一個@望月的水印,那麼就可以在數據處理界面進行設置。
這樣,就不用在博客後台每次添加圖片之後都去重新調整一下大小,也不用使用圖片修改軟體去添加水印之類的了。
免費的使用空間和流量
對於新用戶,七牛雲存儲免費贈送10G 的使用空間+10G/月的流量,對於小博客來說,是完全夠用了,推薦朋友還可以免費獲取空間,如果你有需要,可以通過我的推薦鏈接注冊七牛,也可以幫我增加一些免費空間和流量,謝謝。
同時,通過36Kr 的活動頁面,還可以獲取800元的代金券和85折的協議價進行續費充值。
即使是流量、存儲空間和數據請求超出,七牛的價格也相對便宜。
一鍵加速功能
除此之外,還很是喜歡七牛雲的一鍵加速網站功能,也就是鏡像存儲,源站資源(文件/圖片等)根據初次訪問自動同步到七牛雲存儲,數據平滑遷移。可使用綁定的自定義域名訪問鏡像存儲的源站資源。格式:http://綁定域名/源站資源相對路徑。
還可以配合使用七牛鏡像存儲 WordPress 插件一鍵實現 WordPress 博客靜態文件 CDN 加速。
其實,七牛雲在圖片存儲和使用方面的便捷就足夠打動我了,綜合來說,七牛雲存儲設計更加人性化、操作更加簡便,價格更加適中,無論是對於博客用戶還是開發者用戶,都是個不錯的選擇。
Ⅵ 沒有個人網站怎麼注冊七牛雲存儲
網站注冊沒說明好,其實那個個人網站是指用戶的自定義url,並非需要自己的個人網站
也就是在u/後方輸入自己喜愛的id就好,前面自己輸,怕和諧
Ⅶ 關於七牛雲存儲自定義URL的問題
近段時間將使用七牛雲存儲來存放用戶上傳的數據,客戶端通過七牛的js-sdk與七牛交互,服務端C#實現了七牛相關的介面。在這過程中多多少少遇到點問題,在這里總結一下。原文: 使用七牛雲存儲的一些經驗總結
599錯誤處理
如果在與七牛的交互中出現http狀態碼為599的錯誤,一句話,不要猶豫,直接聯系七牛技術支持 。七牛的文檔也在很多地方提到這個錯誤,都是指導大家去聯系技術支持的。筆者是在分塊上傳後的 mkfile 調用時出現的,聯系技術支持後,說是調整了一下,讓我重試。後來就好了...
分塊上傳無法從回調中獲得文件的原始名
簡單上傳採用的是multipart/form-data方式上傳,七牛服務端能夠從請求中獲得文件的原始名,並支持使用魔法變數 $(fname) 回調業務伺服器。不過當使用分片上傳的時候情況有所不同。分片上傳需要在最後調用 mkfile ,來將分片拼接起來。但是, mkfile 介面支持普通的請求,並沒有附帶文件名,所以七牛也就無法獲得文件名,此時從 $(fname) 中是取不到文件名的。這個問題我也向七牛技術支持提交了問題,得到的結果是使用自定義變數 mkfile 支持將自定義變數放在url中,回調的時候自定義變數可以傳遞給業務伺服器。
慎用圖片預處理
七牛雲支持很多對文件的預處理,其中最常用的應該就是圖片預處理了,可以對圖片的大小做變換等。七牛推薦使用GET的方式直接指定圖片處理結果的url,像這樣:
http://qiniuphotos.qiniudn.com/gogopher.jpg?imageView2/1/w/200/h/200
處理後的圖片會自動緩存,用戶不用關心,只要每次訪問都用這個url就行了。然而,筆者在開始的時候,為了保持與其他文件形式統一的處理方法,對圖片使用了預處理(因為視頻什麼的只能預處理),即在token中指定了預處理。此時問題出現了,從後台的日誌看到,圖片的預處理通知回調竟然比正常的上傳成功回調還要快!這就導致預處理結果到來之前,我的業務伺服器的資料庫中還沒有這個圖片,無法保存預處理結果了。所以 推薦還是使用url直接處理,對圖片要慎用預處理
視頻文件無法快進播放
通常用戶在觀看視頻的時候都會根據自己的喜好,快速將視頻定位到指定的時間播放。實現這個功能,需要視頻本身有關鍵幀信息、服務端需要支持關鍵幀播放請求,在 這篇文章 中有詳細討論。
但是筆者發現,在使用七牛雲轉化後的視頻,這樣做是無效的。於是咨詢技術支持,得到的答案是:轉化的文件是具有關鍵幀的,但七牛使用CDN加速,所以關鍵幀請求需要CDN的支持,如果想要用這個功能的話,需要單獨聯系銷售或技術支持在CDN上配置,而且時間比較長。筆者聯系了銷售和技術支持,說是幫我配置,但到現在還沒有搞定,因為最近這個也不是特別重要,所以也沒有跟下去。
Callback校驗
這是可選的一個步驟。由於七牛雲會在上傳完成之後回調業務伺服器,所以理論上說業務伺服器需要校驗這個回調的合理性。原理在七牛的 文檔 中有,需要用到 HMAC-SHA1 簽名函數。但是七牛的sdk中沒有提供直接的方式來做校驗,在研讀文檔、多次失敗和查看sdk源碼後,筆者終於校驗成功了。關鍵的分歧在於,文檔中的這句話:
獲取明文:data = Request.URL.Path +」\n」 +Request.Body
這里的 Request.URL.Path 是否包含Querystring?答案是包含的!下面是筆者C#服務端的校驗代碼,使用的是ASP.NET Web Api:
```C#
byte[] key = System.Text.Encoding.UTF8.GetBytes(Qiniu.Conf.Config.SECRET_KEY);
using (HMACSHA1 hmac = new HMACSHA1(key))
{
var t = filterContext.Request.Content.ReadAsStringAsync();
t.Wait();
string rawbody = t.Result;
log.DebugFormat("request's rawbody : {0}", rawbody);
string text = filterContext.Request.RequestUri.PathAndQuery + "\n" + rawbody;
log.DebugFormat("PathAndQuery + \n + rawbody : {0}", text);
byte[] digest = hmac.ComputeHash(System.Text.Encoding.UTF8.GetBytes(text));
string computed = Qiniu.Util.Base64URLSafe.Encode(digest);
log.DebugFormat("Computed hash after base64 : {0}", computed);
IEnumerable<string> auths;
if (filterContext.Request.Headers.TryGetValues("Authorization", out auths) && auths.Count() == 1)
{
string auth = auths.First();
log.DebugFormat("Authorization in header : {0}", auth);
if (auth.StartsWith("QBox "))
{
var arr = auth.Substring(5).Split(':');
if (arr.Length == 2)
{
if (arr[1] != computed)
{
log.ErrorFormat("Authorization failed. Since auth from header {0} not equals computed {1}", arr[1], computed);
}
else
{
log.Debug("Authorization success.");
//only pass can be return
return;
}
}
else
{
log.Error("Callback Authorization's format is invalid, can not find two part after split by ':'.");
}
}
else
{
log.Error("Callback Authorization's format is invalid, missing leading 'QBox '.");
}
}
else
{
log.Error("The request from qiniu callback is missing 'Authorization'");
}
filterContext.Response = filterContext.Request.CreateResponse(System.Net.HttpStatusCode.Forbidden);
}
如下幾個注意點:
- 明文應當是請求的path+querystring部分和rawbody
- 對於.NET而言,明文和key都需要用UTF-8編碼變換成位元組才能進行簽名。而php中的hash_hmac函數完全不用這么復雜...
- 簽名的結果再用base64的url安全的方式編碼,再與請求的http頭部的Authorization比較
建議官方在文檔中加入一些相對底層一些的編程語言的實現,php太高端了...
## js-sdk實現略顯粗糙 ##
在使用過程中,我發現[官方的js-sdk](https://github.com/qiniupd/qiniu-js-sdk/)有幾個我覺得不好的地方:
**不能為每個文件獲取UpToken**
試想,在文件上傳過程中有獲取UpToken是必須的,而且UpToken又需要包含預處理指令,不同的文件顯然需要不同的UpToken,而在js-sdk的實現中,只在初始化這個上傳組件對象的時候請求一次上傳憑證,後面所有的上傳都需要使用這個預先得到的UpToken:
```javascript
uploader.bind('Init', function(up, params) {
getUpToken();
});
於是我修改了這部分,在 BeforeUpload 事件中請求UpToken。建議官方考慮更改這個地方
只能實現分片上傳,無法斷點續傳
js-sdk的實現在分片上傳的實現上,是很簡單的,不僅沒有使用分片,而是分塊(一塊4m,調用mkblk),而且沒有實現持久化ctx,或者類似的回調或介面。4m分塊這個問題還可以不追究,沒有實現持久化ctx就說不過去了,不持久化怎麼實現斷點續傳撒?!就算不實現,也應該給出回調的入口,讓調用者來實現持久化,而我實在無法找到這個'空子'可鑽,只能直接在源碼上改動了。
沒有復用流行類庫的東西
這個其實算不上問題,因為作為一個不依賴jquery的sdk,當然不能使用jquery現成的東西,比如ajax。不依賴jquery就算了,依賴plupload是幾個意思嘛,還依賴全局對象...於是最後,我乾脆自己將sdk改成了Backbone的類,將不要的東西統統去掉,使用jquery和underscore簡化代碼了...
Ⅷ 七牛雲存儲的技術實力怎麼樣
特有的上傳加速能力。其他雲存儲通常只加速下載(CDN)。有的號稱支持上傳加速,其實也就只是做了上傳的代理節點。但是七牛是全球首家採用多IDC架構的分布式存儲。數據就近上傳到某個IDC即落地,真正加速到極致。
特有的斷點續上傳功能。不再需要網路不行時在那一遍遍從頭再來。無論網路多糟糕(尤其是3G/2G移動網路)、無論文件多大,我們都能夠保證讓你的數據到達伺服器。這個在國內仍然沒有其他雲存儲能夠做到。
CDN整合。七牛目前整合了包括藍汛、網宿在內的 4 家 CDN,總節點數已經超過 1000 個IDC,這讓自建 CDN 望塵莫及。我們不重新發明輪子。但我們要讓 CDN 從高端走向平民。為什麼只能大公司才能享受 CDN 帶來的好處?有了七牛,你就是個博客主也可以享受高品質的快感。七牛還幫你做了智能的 CDN 品質監測。萬一某家 CDN 出現局部節點問題時,七牛還能夠自動幫你把該區域切換到另一家 CDN,整個過程透明,讓你省時省心。
獨特的鏡像存儲,體驗七牛雲存儲只需一鍵。
流媒體(音視頻處理)支持。這個目前國內雲存儲也是首家。悄悄告訴你,最近音視頻支持還會重大更新哦。
數據處理功能的級聯(也就是管道)。圖片先縮略再打水印,是管道功能的典型案例。
大文件支持。七牛雲存儲單文件最大支持到1TB
Ⅸ 七牛雲存儲怎麼布署到伺服器
"在網路覆蓋的范圍內手機、平板、電腦可以隨時的實現文件同步
"部門之間可以安全的文件分享
"所有人對文件的操作行為均可以被記錄
"登錄身份認證機制與企業現有管理機制相結合
"存放於數據中心的文件具備高強度的加密
正是從這種需求出發,推動了廠商對企業私有雲存儲的技術研發,目前市場上已經有部分成熟的產品方案得到應用,筆者剛剛拿到VEsystem 推出的VECloud 2.0最新版,目前正在測試中;在此謹以VECloud 2.0(和信雲存儲)為例,向大家講解企業私有雲存儲的快捷部署方法,供企業信息管理人員在方案選擇時參考所有。
抽象來看與網路雲網盤一樣,部署好的私有雲存儲是一個可以通過瀏覽器輸入網址或IP地址直接訪問的網站。那麼除伺服器基礎平台的建設之後,我們需要就是搭建一套Web Server 的發布平台,最常見的WEB發布平台應該是IIS(微軟伺服器版系統中自身提供) 、以及Apache ,根據不同網站開發語言的需要還需要配置腳本解釋與資料庫支持;比如大家經常提到的ASP + msSQL 、PHP + mySQL 等;
2
VECloud 2.0 對WEB平台要求是:PHP 5.10 / mySQL 5.5
以往在Windows平台手工搭建AMP環境(Apache MySQL PHP)是比較復雜的,幸好現在已經有相應的一鍵式集成包,可以幫助我們快速完成這項工作。筆者比較習慣使用的是EasyPHP,本次部署所採用的版本是12.0 ;EasyPHP 安裝非常簡單幾乎你只用點下一步即可以完成(對AMP 環境的搭建比較熟的朋友可以越過章節)。
安裝結束後會自動打開默認瀏覽器呈現當前AMP配置運行信息,如上圖我們可以看到APACHE 2.42 / MYSQL 5.5.2 / PHP 5.4.4 即已經有運行中,有關EasyPHP 12.0 的詳細調試使用可以參考官方教程或相關文章,作為服務運行的支撐平台,其不屬於雲存儲的技術討論范圍後面的章節中不再重復提及。
接下來我將VECloud2.0 的WEB站點的發布包,解壓到WWW 目錄中,然後通過瀏覽器訪問本機IP 如127.0.0.1??即可以打開這個站點;站點首次被打開時會有一個安裝向導完成初始的部署工作。如下圖:
點擊"現在就開始"…
接下來的頁面中會顯示出當前WEB伺服器的環境配置信息,以及和信雲存儲對環境基本要求自檢結果,為了保障功能的全面正常執行,建議按照提示信息的要求,調整伺服器的配置信息以達到推薦標准,如下圖:
在默認情況下 PHP 擴展中的PHP_EXIF 、PHP_GETTEXT 、PHP_LDAP 、PHP_OPENSSL 並未消開啟,最大文件限制默認為2M ,這里會建議我們開啟上述擴展並調大文件限制。
這都可以通過修改PHP.INI 配置文件來實現,PHP.INI 文件默認存放在apache 目錄中,可以用記事本打開
可以通過查找方式找到PHP_EXIF 、PHP_GETTEXT 、PHP_LDAP 、PHP_OPENSSL 這幾項PHPExt 所在位置,注意行前一個" ; "(分號),分號表示此行被注釋,只需要將分號去掉即可,(如上圖)如果是手工搭建的AMP 環境需要確定對應DLL 文件已經安裝注冊。
同時找到upload_max_filesize = 項,將最大上傳文件的大小設定到一個合適的值。如上圖
重新啟動Apache 服務,刷新頁面後我們可以看到自檢測結果已經發生變化,目前我們WEB服務端的配置已經完全符合推薦要求。
點擊"下一步"繼續…
接下來的配置是關於MYSQL資料庫的參數,我們需要創建一個資料庫管理員以及對應的資料庫、表名前綴;
可以通過PHPMYADMIN(MYSQL的在線管理工具,如果是通過EASYPHP安裝則已經自帶)來方便的創建用戶並同時創建與用戶名同名的資料庫;如下圖:
添加 [ 用戶 ] / [ 添加用戶 ], 輸入用戶名VECLOUD 、主機:127.0.0.1(如無分布部署或有額外的名稱解析,應採用本機IP), 勾選"創建與用戶同名的資料庫並授予所有許可權"
通過上述操作我們就為雲存儲服務端創建了專用的資料庫管理用戶及同名的資料庫。
返回到雲存儲的安裝界面,注意最後一項是關於"文件存儲路徑"的設置,在此處可以設定一個目標路徑,當雲存儲服務上線之後,用戶上傳分享的文件都將保存在這個路徑之下,因為目標路徑建議採用專業存儲陣列或設備,確保並發速度與數據安全。
接下來的頁面中可對雲存儲的管理用戶與密碼進行設置,提示:管理員將可以在後台管理所有用戶的信息以及系統的相關參數設置,一定要管理好該用戶並設置高強度的密碼,防止被猜測破解後登錄。
點擊"下一步"繼續
至此,"和信雲存儲"的安裝已經完成,可以試一下在瀏覽器中再次打開127.0.0.1 訪問
這一次打開的不再是安裝向導,一個真正架設在內網中的私有雲存儲用戶登錄界面呈現在眼前,VECloud 同時提供了Windows / Android / IPhone 、IPAD 的客戶端,對此私有雲存儲的訪問方式不限於網頁登錄,也可以隨時用移動設備登錄分享、同步自己的文件。
天互數據 為您解答,希望能幫到你