ByProduct - 副産物

IT FukuSanButsu Blog

社内インフラエンジニアの自宅からはじまるIT
自宅のPCに向き合いながら気づいたことや個人的な知見をまとめています


プロフィール
しらせ(HN)
とあるIT企業のインフラエンジニア。プライベートでは開発もちょっとやります。
※本ブログの内容はすべて個人の見解であり、所属する企業とは関連ありません。
2023/09/30 暫く更新停止中m
プロフィールを読む
カテゴリ別
内部リンク
相互リンク
Twitter
来訪
1070020 [合計]
161 [今日]
382 [昨日]
Powered by
Powered by AWS Cloud Computing

【websona】Webサイトの更新をまとめて確認するツールをリリースしました

2021/02/20
2021/05/30

インターネット


お疲れ様です。
しらせです。

今回は、新しいWebサービス「websona」を本日(2月20日(土))にリリースしましたので簡単に残していきたいと思います。

このツールを作ろうと思ったのは年が明けて間もない今年1月の中旬の事です。

スマホに保存されているTechブログやらまとめサイトやら情報系サイトやらが、ブラウザのお気に入りとホーム画面に散在している状況を何とかできないか。。
と思ったのが始まりです。

もちろんRSSに対応しているサイトであればアプリを使えばいいだけの話ではあります。
ただ、数多あるWebサイト1つ1つにこの作業をするのはとても辛く、更新の有無だけでも良いので一括で分かる方法を探していました。

結果、そんな都合のいいツールは無かったので試しに作ってみたところから始まりました。

もくじ

websonaとは?

そもそもwebsonaとは何か?についてです。
一言で表現すると、、、

興味のある「Webサイトの更新をまとめて確認」できるツール

です。

主に、

「お気に入りのWebサイトの更新状況はまとめて一気に確認したい!」
「更新の有無を知りたいだけなのにRSS使うのは面倒。」

という方向けに作っております。
Webサイトの「title」「h1」「h2」タグを元に更新判定をする「Topic!」と、HTMLタグ全てを除いた文章全体で判定する「Update!」の2種類で更新の有無を判断できます。

その他、詳細は「websonaについて」をご参照ください。

構想・仕組み

websonaを作る上で特に気にしているポイントが以下の3点です。

  1. botによるクロールはしない
  2. 対象となるWebサイト側の負荷を減らす工夫
  3. 踏み台や悪意のある使われ方を防ぐ

1.botによるクロールはしない

いわゆるWebクローラのように定期的にWebサイトを巡回して最新情報を取ってくるようなbotの動きはしたくないというのが1つ目です。

Webサイトの数が増えれば増えるほどクロールに掛かる時間は増えますし、更新頻度が高くないサイトや小規模なサイトに対してはDoS攻撃になりかねません。

これらWebサイトのコンディションはインターネット越しには把握できませんので、websonaでは定期的なクロールや巡回は一切していません。

2.対象となるWebサイト側の負荷を減らす工夫

知りたい情報は、

「前回Webサイトをチェックした時から変更があったのか?なかったのか?」

それだけです。

同じWebサイトを複数人がウォッチしているような場合、毎回対象とするWebサイトに更新を確認するような動きはとても無駄が多くなります。

websonaでは前回取得したWebサイトの情報を変更点として保持し、複数人が頻繁に更新を確認する場合でも最小で1時間はwebsonaが保持している変更点を応答する仕組みになります。(更新ウィンドウ)
これにより、どんなに大多数の人がウォッチしている場合でも、対象となるWebサイトへの確認は1日最大24回に抑制されます。

一方で、websonaに登録されたものの誰一人として更新確認が行われない関心の低いWebサイトについては、利用者による更新頻度に応じて更新確認の頻度も1時間よりさらに長くなります。

(更新処理の概念図)

3.踏み台や悪意のある使われ方を防ぐ

3つ目が踏み台や悪意のある使われ方を防ぐという点です。

世の中には悪意を持って作られたWebサイトも多く存在しており、またwebsona自身についても不具合や設定の不備を突いた攻撃がなされる可能性もあります。
websonaでは登録可能なURLに一定の制限を設けることで、意図しない使われ方を軽減する工夫を入れています。

また、TwitterAPIを利用したOAuth2.0認証を利用していますため、独自にパスワードを保持することもなく、Twitter利用者の方であればどなたでも利用できる状態になっています。

使い方について

画面の配置

PC・スマホ、いずれもブラウザから利用できます。
以下に簡単に説明を記載しています。

①メニュー

・設定やヘルプ、ログオフなどのメニューになります。

②更新ボタン

  • 登録されているWebサイトの情報を更新します。
    ※前回更新から1時間を超えていないWebサイトはボタンを押しても更新されません。

③登録済みWebサイト一覧

  • 登録しているWebサイトの一覧です。
  • 色付きのTopic!Update!の表示がある場合は、更新後にまだWebサイトを見ていないことを示しています。
    Webサイトを閲覧するとTopicもUpdateも色がグレーになります。
  • 削除ボタンで一覧から削除が可能です。

④Webサイト登録フォーム

  • 新規に登録する場合はこちらから。
  • 登録されると登録済みWebサイト一覧のトップに並びます。

まだまだ改善の余地が多くありますが、どうぞよろしくお願いいたします。

websonaは以下のリンクから!
websona - Webサイトの更新をまとめて確認
https://websona.net/

次回時間があれば実装方法や使っている技術などをまとめていこうと思います。
以上、お疲れさまでした。



View:886 この記事をツイート!