Storacle - dezentrale Dateispeicherung

Bild


Bevor ich anfange, muss ich einen Link zum vorherigen Artikel hinterlassen , damit klar ist, was genau gemeint ist.


In diesem Artikel möchte ich die Ebene analysieren, die fĂŒr das Speichern von Dateien verantwortlich ist, und wie sie von jedem verwendet werden kann. Storacle ist eine unabhĂ€ngige Bibliothek , es besteht keine direkte Verbindung zur Musik. Sie können die Speicherung beliebiger Dateien organisieren.


Im vorherigen Artikel habe ich den Lauf ein wenig auf ipfs gerollt , aber dies geschah genau im Zusammenhang mit dem Problem, das ich löste . Im Allgemeinen finde ich dieses Projekt cool. Ich mag nur die Möglichkeit, verschiedene Netzwerke fĂŒr verschiedene Aufgaben zu erstellen. Auf diese Weise können Sie die Struktur besser organisieren und die Belastung einzelner Knoten und des gesamten Netzwerks verringern. Bei Bedarf ist es sogar im Rahmen eines Projekts möglich, das Netzwerk nach bestimmten Kriterien in Teile zu zerlegen, um die Gesamtlast zu verringern.


, storacle spreadable . :


  • .
  • , .
  • .
  • ( , )
  • spreadable , ( )

, :


:


const  Node = require('storacle').Node;

(async () => {
  try {
    const node = new Node({
      port: 4000,
      hostname: 'localhost'
    });
    await node.init();
  }
  catch(err) {
    console.error(err.stack);
    process.exit(1);
  }
})();

:


const  Client = require('storacle').Client;

(async () => {
  try {
    const client = new  Client({
      address: 'localhost:4000'
    });
    await client.init();
    const hash = await client.storeFile('./my-file');
    const link = await client.getFileLink(hash); 
    await client.removeFile(hash);
  }
  catch(err) {
    console.error(err.stack);
    process.exit(1);
  }
})();


. , in-memory , . , - , . , (> ) . . "" , .


256 2 . . 1. 62500 (1000000 / sqrt(256)).


, , .


: , , , ... .



, , .
. . http .



javascript , . 
https://github.com/ortexx/storacle/blob/master/dist/storacle.client.js window.ClientStoracle ...



" ". , , , . , , , - . src . .


Api


  • async Client.prototype.storeFile() —
  • async Client.prototype.getFileLink() —
  • async Client.prototype.getFileLinks() — ,
  • async Client.prototype.getFileToBuffer() —
  • async Client.prototype.getFileToPath() —
  • async Client.prototype.getFileToBlob() — blob( )
  • async Client.prototype.removeFile() —
  • Client.prototype.createRequestedFileLink() —


, :


  • . ( )
  • . , , node.normalizeFilesInfo(), .
  • node.exportFiles(), .


, .
, .


  • storage.dataSize —
  • storage.tempSize —
  • storage.autoCleanSize — , . , .
  • file.maxSize —
  • file.minSize —
  • file.preferredDuplicates —
  • file.mimeWhitelist —
  • file.mimeBlacklist —
  • file.extWhitelist —
  • file.extBlacklist —
  • file.linkCache —

, .



. : npm i -g storacle. , . , storacle -a storeFile -f ./file.txt -c ./config.js, . https://github.com/ortexx/storacle/blob/master/bin/actions.js



  • - , . , , , storacle.
  • , . , , .
  • - . , .
  • , , . .

:



All Articles