title_parttitle_parttitle_part
静岡県浜松市であれこれソフトを開発している A.K.I Software のブログです。日々の開発日記やサーバー・セキュリティ関連の話題なども掲載。
<< 2024/05 >>12345678910111213141516171819202122232425262728293031
《《《 ネットワーク機器の購入は Amazon で! 》》》
2007/09/25 BLOM正式版リリース!
BLOM のダウンロードは こちらからどうぞ。

Powered by BLOM 更新Pingサーバを作る
小さくも大きくも閉じたりもしません
08/02/16 22:23 / BLOM

blom に更新Pingクライアントを実装しましたので、当然の流れとして更新Pingサーバを作っています。

更新Pingサーバの仕組みとして
1)Web サーバ上で xmlrpc を受け取る CGI
2)1のCGIが受け取った xmlrpc を元にhttpで巡回し、changes.xml を生成するサービス
3)気が向いたら changes.xml を綺麗に整形するCGI

この3つを作ることにします。
1だけでも更新Pingサーバは作れるのですが、記事作成後に一定時間経過してからアクセスをしないと、更新Ping送信からブログのRSSフィードに反映するまでに時間がかかる場合に反映されないと言う症状が発生するからです。
blomは保存が完全に完了してから更新Pingの送信を行うので関係無いのですが念の為)

また1のCGIは過負荷になる可能性も充分にありますので、極力軽くし、負担の大きいhttpアクセスはサービスアプリでポーリングさせると将来的にイイカンジになります。

さて、1のCGI用に xmlrpc パーサを作る必要があります。
xmlrpc は非常に単純(のはずが、array とか余分な書式があってイヤなんですが。structは良いとしてももっとシンプルにすればいいのに)なので自作します。
もちろん、PHP などにはモジュールがあるのですが、そこは Delphi そんな便利な物は標準装備されていませんので2,3時間かけて作ります。

xmlrpcパーサが出来ましたので、CGIの中に組み込んで受信と応答部分を作ります。基本的にこの部分は、xmlrpcパーサが解析したデータを使って、サーバアプリに渡すキューデータの作成と応答を返すのみです。CGIはこれで終了です。

2は、Windows のサービスとして稼働させるようサービスアプリケーションとして作ります。
サービスアプリケーションと言っても、httpクライアントとHTMLパーサを組み合わせて、更新Pingを送信してきた WebサーバからRSSフィードを取得して changes.xml へ出力するだけです。(ちなみに、このブログに出ている浜松市の天気情報も似たようなサービスアプリを作り、それがサーバ上で稼働しているだけです)
サービスアプリにすることにより巡回速度や間隔を調節でき、フィルタリングなどもこれに行わせることにより分業化をします。

3は気が向いたら作ります。検索などをさせるならば、このCGIにやらせればいいでしょう。
1,2は完成していますので要望があればドキュメントなどを整備してフリーソフトとして公開しようかと考えています。

[更新日付:2008/02/16 22:23:41]
トラックバックを見る(0)
Log Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+sl+41bcff7a9802192544db9ec2f7a18b78c42f05ea]
TB Link [https://akisoftware.com/cgi-bin/blom.exe?akisoft+tb+41bcff7a9802192544db9ec2f7a18b78c42f05ea]

記事へのコメント

コメントはありません

名前
コメントキー
 
コメントする時はキーを正確に入力して下さい
コメント
アドレスを含んだコメントはできません
© 2008-10 A.K.I Software all rights reserved.