RIF Storageを利用してサーバーレスのウェブサイトを立ち上げる方法

Rinke Hendriksen- Swarm Product所有者
2020年4月10日

RIF Storageは、真の分散型インターネットのベースレイヤーを構築するために設計されました。 高水準のプロトコル機能、プロトコルのインセンティブ化に関する改善、ならびにインセンティブ化されたテストネットの立ち上げ に関するRIF StorageとSwarmのパートナーシップについては、すでにご説明しました。当社のドキュメンテーションでは、自分独自のRIF Storageノードを起動し、当社のインセンティブ化されたテストネットに参加する方法をを確認できます。しかし、独自のサーバーレスウェブサイトを立ち上げる方法とは?

実は、それは驚くほど容易です。その容易さがゆえ、立ち上げを試すためのシンプルで実践的なチュートリアルをすでにご用意しておくべきでした。

当社は、停止せずかつサーバーレスのウェブサイトを誰もが立ち上げることができるようにすることをお約束できます。その方法は以下でご説明します。

Hello World HTML

分散方式で完全にウェブサイトのホストを行うためには、いかなる(集中型)バックエンドへの接続も不要です。そのようなウェブサイトを作成したことがない方のために、非常にシンプルなものを作成してみましょう:

    <html>
    <header>
    <title>My first website</title>
    </header>
    <body>
    Hello world
    </body>
    </html>

このウェブサイトは非常に簡単ですが、通常のウェブで使用されるすべての構成要素をRIF Storageで利用できます。

このファイルをindex.htmlとして保存してブラウザで開くと、入力された内容に対するブラウザの解釈が表示されます。

従来、Hello Worldの例では、ここから基本的なウェブサーバーの設定を続行することになります。要するに、サーバーはリクエストに応じてファイル(例えばindex.html)を送信するコンピューター・プログラムです。つまり、ウェブサイトにアクセスするとサーバーにリクエストが送信され、サーバーがウェブページを返すわけです。

従来の集中型クライアント・サーバーのモデル(web1.0 and web2.0アーキテクチャ)と分散型モデル(web3.0)の比較

サーバーレス・ウェブサイト

RIF Storageは、サーバーレス・ウェブサイト設定を可能にします。つまりそれは、リクエストに応じてindex.htmlファイルを送信する中央管理型のサーバーではなく、協調ノードとインセンティブ化されたノードの集合体のことです。本ブログにおいては、この仕組みに関する詳細まではお話ししません。基本的に、ファイルは多くの部分に分割されて別々のコンピューターに保存さると、リクエストに応じて元通りにつなぎ合わされます。このアーキテクチャには多くの利点がありますが、主なものとして、このウェブ上のデータは単一の作成者が所有や管理を行っていないため、耐検閲性があり、かつ停止不可能であるということがあります。

それでは、まず準備をしましょう。index.htmlファイルを、「Hello decentralized world(分散型の世界にこんにちは)」と表示されるように変更してください。

    <html>
    <header>
    <title>My first website</title>
    </header>
    <body>
    Hello decentralized world
    </body>
    </html>

次に、swarm.rifgateways.org に移動し、「Upload(アップロード)」をクリックします。それから更新されたindex.htmlに移動し、ファイルをアップロードしてください。

次に、「Copy link to clipboard(リンクをクリップボードにコピー)」をクリックし、ブラウザのアドレスバーにこのリンクをペーストすると、サーバーレス・ウェブサイトを表示できます。簡単でしょう?

ご注意!ディレクトリおよびファイル名は、<long_sequence_of_characters/index.html>となっているはずです。

サーバーレスDNS

ブラウザにコピーしたリンクは長く複雑なため、覚えるのは容易ではありません。他の人はこのリンクをブラウザにペースすればウェブサイトにアクセスが可能でしょうが、覚えやすい名称で実際のウェブサイトを作成する方が簡単ではないでしょうか?

集中型ウェブサイトでは、この問題はDNSサーバーが解決します。基本的に、DNSサーバーはウェブサイト・アドレスおよびIPアドレスの記録を保持します:ブラウザにhttps://www.iovlabs.org/と入力すると、DNSサーバーにリクエストを送信され、このウェブサイトの後ろにあるIPアドレスをリクエストするDNSサーバーにリクエストが送信され、実際のサーバーにリクエストが送信されます。

ブロックチェーン上のスマート・コントラクトを利用することで、分散型の方法においても同様のことが可能です。つまり、RIFは、RSK Name Service(RNS)によってこれを容易にします。そうすることで、人間が読み取れるあらゆる名称(拡張子.rskで終わるもの)をコンテンツ識別子(ウェブサイトのアドレス)に転換することが可能になります。このプロセスを説明する当社の最新ブログ投稿を未読の場合は、ぜひ目を通してください。ブログで説明されているステップに従うことで、新しく作成したウェブサイトには独自のドメイン名を使用できます。素晴らしいことです。

ドメイン購入後は、コンテンツ解像度を追加する必要があります。しかし、新しいRNSマネージャーを使用すれば簡単です。Your admin console(管理コンソール)にログインしてください(以下を参照)。

コンテンツ設定は、「Edit(編集)」をクリックます。それから、index.htmlのコンテンツアドレスを設定する必要があります。コンテンツアドレスとはこの長い文字列と数字列のことで、ブラウザのアドレスバーに表示されていたものです。RNSは、0xで始まるコンテンツアドレスを必要とします。それを追加するだけでOKです。

時間を省略したい場合は、 manifesto.rksにアクセスすることで同じ作業を行うことができます。

とても簡単ですね。

ゲートウェイについてはどうでしょうか?

これまで説明したステップに従い独自のサーバーレス・ウェブサイトを作成し、分散型の名称解決を追加できたのであれば、素晴らしいことです。しかし、また一つの集中型構成要素が関係していることに気付かれたかもしれません。その構成要素とは、当社のゲートウェイです。

これまで、当社は分散型ネットワークへのポータルとして「従来の」ウェブサイトを使用してきました。当社は、そのようなシステムをゲートウェイ・サーバーと呼びます。ゲートウェイ・サーバーはRIF Storage Swarmソフトウェアを実行してインターネットに公開するため、自分で実行する必要はありません。ゲートウェイ・サーバーは分散型インターネットへのアクセスに必須なわけではありませんが、利用すればアクセスが容易になります。

ゲートウェイが分散型ストレージおよびクライアントとどのように相互作用するかの例

完全な分散型体験を望む方向けに、ゲートウェイで実行されているSwarmソフトウェアは十分に文書化されています(当社の 開発者ポータルや、このRIF記事内)。情報をすべて読み、お試しになることをお勧めします。また、ご質問や実装の支援につきましては、当社RIFチームまでお気軽にお問い合わせください。

独自のノードを使用してRIFストレージでウェブサイトを立ち上げる方法に関する私のワークショップチュートリアルは、以下のリンクで公開しています:https://www.youtube.com/watch?v=dXMEHi5cjck&t=2281s

次回:

分散型ウェブ体験をさらに向上させるために盛り沢山な内容でお届けしますが、近い将来については、特に以下の2項目に焦点を当てます。ツイッター@rif_osで当社をフォローして最新情報を入手し、当社の立ち上げについての情報をいち早くチェックしましょう!

RIF Publish

RIF Publishは、多くの場合、分散型ストレージに静的コンテンツ(例えば、記事やウェブサイト)を公開し、消費する(さらに容易な)方法です。目的は、検閲がより重大な問題を引き起こす特定の法域において、コンテンツおよびコンテンツ作成者に対する検閲と戦うことです。

グローバル・ピンニング

インターネットの骨格としての分散型ネットワークは、場合によっては優れていますが、分散型では制御が失われます。例えば、ファイルの一部がネットワーク内の他のノードに保存されているため、ファイルが失われる可能性があります。最終的に、これを完全に予防することはできません。だからこそ、グローバル・ピンニングが非常に重要な役割を担います。グローバル・ピンニングは、ファイルが失われた場合にファイルを自動的に修復するため、、1つのノード(ピンナー)がファイルを格納している限り、ファイルの永続性が保たれます。

Follow our news!