blog.fuktommy.com

自宅サーバのためのRSS

はじめに

自宅サーバとXREAのような共用サーバの連携を考えます。 自宅サーバは非常設(1日のうち数時間しか動いていない)であり、 共用サーバはファイル容量や転送量が限られていると仮定します。 このような条件のとき、自宅サーバで高負荷のCGIを提供したり、 大きなファイルを共有したりすることを考えます。

この文書は非常設自宅鯖を考えますをもとにしています。

繋がらないときどうするか

外部にサービスをしているときはともかくとして、 繋がっていないときにどうするのか。 基本的なアイデアは3つあります。

チャットや電話みたいなものは、 単に相手(のサーバ)にデータが届くだけでは駄目で、 相手(の人間そのもの)に反応してもらわなければ使えません。 ならばデータが届かなければ、相手が留守だと考えて諦める、 というのは合理的です。

新月Winnyは キャッシュの仕組みがあり、 自分が繋がってないときでも誰かが仕事を肩代りしてくれます。 重要なサーバが2重化されているのと似ています。 2重化の例を出したことでわかるように、 このやりかたは大袈裟になってしまいます。 データの同期などの技術的な問題の他にも 同じ機能を持ったソフトを沢山の人に使ってもらう必要があります。 新しいCGIを考えたからといって、 簡単にユーザ全員に準備してもらうわけにはいきません。 あくまで限定的なアプリケーションだけに使える解決法です。

電子メールの配送に使われている SMTP では、何か問題があって相手に送れないときには再試行するようになっています。 自宅サーバで何か公開していたとして、 接続できなかったら何度も再試行してもらう、というのも合理的ではあります。 ただ、従来はこの方法は、ユーザの手間が大きいものでした。

再試行のためのRSS

この問題はRSSを使うと うまく解決できそうです。 自宅サーバで提供するものをRSSにリスト化しておきます。 このRSSを自宅サーバに置き、RSSのURIを共用サーバに載せます。

ユーザは共用サーバでRSSの存在を知り、RSSリーダに追加します。 RSSリーダは巡回のときに、そのRSSを読もうとします。 もし自宅サーバが機能していれば、RSSが読み込まれ、サービスが利用できます。 機能してなければRSSが読み込まれません。 これはユーザからみると、前回と比べて更新がないのと同じようになります。 ユーザにとっては、繋がっていて更新がないのも、繋がらないのも、 見る必要がないというのは同様です。 このようにすれば、自宅サーバが機能しているかどうかを ユーザにはあまり意識させることなく、利用してもらうことができます。

まとめ

自宅サーバではWebサーバを使ってファイル共有をする場合に、 ファイルの説明をまとめたRSSを作成するスクリプトを公開します。 このサイトのRSSもこのソフトで生成して、アップロードしています: Another HTMLPPの関連ツール

Windowsユーザの方はFumy RSS & Atom Makerを使うのもよいでしょう。

以前に公開した、パイプ処理向きのRSSリーダです。 簡易的なもので、正しいXMLパースはしていません。 rssread-0.3.1.pl.gz

Copyright© 1998-2014 Fuktommy. All Rights Reserved.
webmaster@fuktommy.com (Legal Notices)