2016-12-04 286 views
0

我是Elastic Beanstalk的新手,剛剛上傳了一個NodeJs應用程序。 我想知道是否有可能「鏈接」(如unix符號鏈接)文件夾到S3存儲桶?上傳到S3存儲桶

使 「/錄音」 點S3:

var filename = 'recordings/' + match[1] + '.wav'; 
     var file = fs.createWriteStream(filename); 
     var request = https.get(url, function(response) { 
      response.pipe(file); 
      file.on('finish', function() { 
      file.close(); 
     }).on('error', function(err) { 
     fs.unlink(file); 
     console.log('error downloading recording'); 
     }); 
+0

不,這是不可能的,因爲S3不是文件存儲器,而是一個對象存儲器(亞馬遜稱它爲互聯網存儲器),它的意思是通過其REST API(或使用REST API的SDK來管理引擎蓋),所以它沒有文件系統功能。 – tavi

回答

1

可以使用的工具,像s3fs-fuse安裝S3水桶到你的文件系統。但是,通常不建議這樣做,因爲S3不是用作塊存儲設備。

由於s3fs自述文件:

一般S3不能提供相同的性能或語義本地 文件系統。更具體地講:

  • 隨機寫入或附加文件需要重寫整個文件
  • 元數據操作,如列出目錄有表現不佳 由於網絡延遲
  • 最終一致性可以暫時產生 陳舊數據沒有原子文件或目錄的重命名
  • 沒有協調 安裝同一個桶的多個客戶端
  • 沒有硬鏈接

在您的Node應用程序中使用S3的最佳方式是使用AWS SDK for JavaScript in Node.js