JP2007148882A - コンテンツ配信システム - Google Patents

コンテンツ配信システム Download PDF

Info

Publication number
JP2007148882A
JP2007148882A JP2005343768A JP2005343768A JP2007148882A JP 2007148882 A JP2007148882 A JP 2007148882A JP 2005343768 A JP2005343768 A JP 2005343768A JP 2005343768 A JP2005343768 A JP 2005343768A JP 2007148882 A JP2007148882 A JP 2007148882A
Authority
JP
Japan
Prior art keywords
server
index
data
content
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005343768A
Other languages
English (en)
Inventor
Kumiko Wada
久美子 和田
Kazuhiro Kawabe
和宏 河辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oki Electric Industry Co Ltd
Oki Networks Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Oki Networks Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd, Oki Networks Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2005343768A priority Critical patent/JP2007148882A/ja
Publication of JP2007148882A publication Critical patent/JP2007148882A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

【課題】インデックス情報又は各インデックスサーバの起動サーバリスト情報間に不整合が生じるのを防止。
【解決手段】コンテンツ識別データ毎にコンテンツを保持するコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報を保持する記憶部と複数のインデックスサーバとを設け、ルックアップサーバはサーバ切断を検知すると、該切断サーバのサーバ識別データを削除すべく削除指示データを各インデックスサーバに送信し、コンテンツサーバはコンテンツデータが更新されると、コンテンツデータの追加、変更、削除のいずれかを示す更新指示データをインデックスサーバのいずれかに送信し、インデックスサーバは削除指示データを受けると、該指示データに基づき起動サーバリスト情報からサーバ識別データを削除し、更新指示データを受けると、該指示データに基づき記憶部のインデックス情報を更新する。
【選択図】図1

Description

本発明は、クライアントからのコンテンツ配信要求に応じて、所望のコンテンツデータを配信するコンテンツ配信システムに関し、特に、起動中のサーバを示す起動サーバリスト情報及びインデックス情報の整合性を維持するコンテンツ配信システムに関する。
クライアントからのコンテンツ配信要求に応じて、所望のコンテンツデータを配信するコンテンツ配信システムが知られている。例えば、下記特許文献1では、音楽、動画等のコンテンツデータを識別するためのコンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバのサーバ識別データが対応づけられたインデックス情報が格納されたインデックス記憶部と、インデックス記憶部のインデックス情報を更新管理すると共に、起動中のサーバを示す起動サーバリスト情報を保持する1台のインデックスサーバと、サーバの切断を検知するルックアップサーバと、コンテンツデータおよびインデックス情報を保持する複数のコンテンツサーバとを備え、例えば、クライアント端末からコンテンツデータが追加されたコンテンツサーバがインデックスサーバに対し、インデックス記憶部のインデックス情報の更新指示を行うと、インデックスサーバがインデックス情報を更新すると共に、起動サーバリスト情報に基づいた各サーバに対して、インデックス情報の更新指示を行い、該指示を受けた各コンテンツサーバが保持するインデックス情報の更新を行い、また、ルックアップサーバが起動中のサーバの切断を検知すると、起動サーバリスト情報の更新をインデックスサーバに指示し、インデックスサーバが起動サーバリスト情報の更新を行うコンテンツ配信システムが開示されている。
しかしながら、上記したようなコンテンツ配信システムでは、インデックスサーバが1台であることから、このインデックスサーバに障害が発生した場合、システム復旧までに多大な時間を要してしまい、この間、コンテンツの配信サービスを行うことができず、配信サービスの低下を招く問題があった。
上記した問題を解決するためには、各コンテンツサーバに対し、負荷分散装置を介して、複数のインデックスサーバを並列に稼動させることも考えられる。
特開2005−4615号公報
しかしながら、上記したコンテンツ配信システムにおいて、複数台のインデックスサーバを単に並列稼動させた場合、コンテンツデータが追加されたコンテンツサーバからのインデックス情報の更新指示は、負荷分散装置により任意に選択されたいずれかのインデックスサーバに対して行われることから、選択されなかった他のインデックスサーバが保持するインデックス情報との整合性を維持することができない問題が生じる。また、コンテンツサーバ又はインデックスサーバが切断された場合、各インデックスサーバに対して、起動サーバリスト情報の更新指示を行う手段がなく、各インデックスサーバが保持する起動サーバリスト情報の整合性を維持できない問題が生じる。
従って、本発明は、インデックス情報または各インデックスサーバが保持する起動サーバリスト情報間に不整合が生じ、サービスが中断するのを防止する可用性の高いコンテンツ配信システムを提供することを目的とする。
本発明は、以上の点を解決するために、次の構成を採用する。
〈構成1〉
コンテンツデータを識別するためのコンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報が格納されたインデックス記憶部と、前記インデックス記憶部のインデックス情報を更新管理すると共に、起動中のサーバを示す起動サーバリスト情報を保持するインデックスサーバと、少なくともサーバの切断を検知するルックアップサーバとを備えるコンテンツ配信システムにおいて、前記インデックスサーバを複数備え、前記ルックアップサーバは、サーバの切断を検知すると、切断されたサーバのサーバ識別データの削除を指示する削除指示データを前記起動サーバリスト情報に基づいて、前記各インデックスサーバに送信するリスト更新指示部を備え、前記コンテンツサーバは、コンテンツデータが更新されると、前記インデックス情報の更新を指示すべく、前記更新されたコンテンツデータに付与されたコンテンツ識別データを含む、コンテンツデータの追加、変更、削除のいずれかを示す更新指示データを前記各インデックスサーバのいずれかに送信するインデックス更新指示部とを備え、前記各インデックスサーバは、前記削除指示データを受信すると、前記削除指示データに基づいて、前記起動サーバリスト情報からサーバ識別データを削除し、前記更新指示データを受信すると、前記更新指示データに基づいて、前記インデックス記憶部のインデックス情報を更新する更新部を備えることを特徴とする。
〈構成2〉
構成1のコンテンツ配信システムにおいて、前記リスト更新指示部は、サーバの起動を検知すると、起動されたサーバのサーバ識別データの追加を指示する追加指示データを前記起動サーバリスト情報に基づいて、前記各インデックスサーバに送信し、前記更新部は、前記追加指示データを受信すると、前記追加指示データに基づいて、前記起動サーバリスト情報にサーバ識別データを追加することを特徴とする。
〈構成3〉
構成1のコンテンツ配信システムにおいて、前記リスト更新指示部は、前記削除指示データを前記コンテンツサーバに送信することを特徴とする。
〈構成4〉
構成2のコンテンツ配信システムにおいて、前記リスト更新指示部は、前記追加指示データを前記コンテンツサーバに送信することを特徴とする。
〈構成5〉
構成1のコンテンツ配信システムにおいて、前記コンテンツサーバは、コンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバのサーバ識別データが対応づけられたインデックス情報を保持する記憶部と、前記インデックスサーバが前記更新指示データに基づいて、前記インデックス記憶部に前記インデックス情報を追加すると、前記記憶部を参照し、前記追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報を検索するデータ検索部と、前記データ検索部が非最新インデックス情報を検索すると、前記各インデックスサーバのいずれかに前記非最新インデックス情報の削除を指示する削除指示データを送信する削除指示部と、前記削除指示データを受信したインデックスサーバが前記削除指示データに基づいて、前記インデックス記憶部から前記非最新インデックス情報を削除すると、前記記憶部から前記非最新インデックス情報を削除するインデックス更新部とを備えることを特徴とする。
本発明のコンテンツ配信システムでは、コンテンツ識別データ毎に、コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報が格納されたインデックス記憶部と複数のインデックスサーバとを設け、ルックアップサーバは、少なくとも、サーバの切断を検知すると、切断されたサーバのサーバ識別データの削除を指示する削除指示データを起動サーバリスト情報に基づいて、各インデックスサーバに送信し、コンテンツサーバは、コンテンツデータが更新されると、インデックス情報の更新を指示すべく、更新されたコンテンツデータに付与されたコンテンツ識別データを含む、コンテンツデータの追加、変更、削除のいずれかを示す更新指示データを各インデックスサーバのいずれかに送信し、各インデックスサーバは、削除指示データを受信すると、削除指示データに基づいて、起動サーバリスト情報からサーバ識別データを削除し、更新指示データを受信すると、更新指示データに基づいて、インデックス記憶部のインデックス情報を更新するようにしたので、コンテンツデータの更新時、インデックスサーバ、コンテンツサーバ間のインデックス情報の整合性を維持することができると共に、障害等によりコンテンツ配信システムの構成が変更された場合においても、各インデックスサーバ間の起動サーバリスト情報の整合性を維持することができる。従って、インデックス情報または各インデックスサーバが保持する起動サーバリスト情報間に不整合が生じることがなく、サービスが中断するのを防止する可用性の高いコンテンツ配信システムを提供できる。
以下、本発明の一実施形態を図を用いて詳細に説明する。
〈実施例の構成〉
図1は、本発明のコンテンツ配信システムを示すブロック構成図である。
図1に示すように、本実施例のコンテンツ配信システムは、クライアント端末10、コンテンツサーバ20、コンテンツサーバ30、負荷分散装置40、インデックスサーバ50、インデックスサーバ60、インデックスサーバ70、ルックアップサーバ80、インデックスDB90から構成されている。
クライアント端末10は、例えば、PC(Personal Computer)等のような、利用者がコンテンツデータの追加、削除等を指示するために操作する端末である。
コンテンツサーバ20は、クライアント端末10からの追加、削除等の指示に応じて、コンテンツデータの追加、削除等を行うと共に、インデックスサーバ50、60、70からの指示に応じて、自己が保持するインデックス情報を更新するサーバであり、制御部21、記憶部22、インデックス更新部23、確認信号送信部24、データ検索部25、インデックス更新指示部26、インデックス情報生成部27、削除指示部28を有している。
確認信号送信部24は、起動中であることを示す確認信号をルックアップサーバ80に送信する部であり、後述するように、通信不可となったサーバを検出するためにルックアップサーバ80から送信される確認要求信号を受信すると、ルックアップサーバ80に対して確認信号を送信する。
記憶部22は、HDD等からなるメモリであり、例えば、文書、音声、動画等のコンテンツデータ、自己を識別するためのサーバ識別データおよびインデックス情報が格納されている。
各コンテンツデータには、例えば、ファイル名等のようにコンテンツを識別するためのコンテンツ識別データが付与されていることとする。
インデックス情報とは、コンテンツ識別データ毎に、各コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられた情報である。本実施例では、このサーバ識別データは、例えば、IPアドレス、通信ポート等のような各コンテンツサーバとの通信に必要なデータを含むデータとする。
また、本実施例では、記憶部22には、コンテンツ識別データ「a」が付与されたコンテンツデータ「A」およびコンテンツ識別データ「b」が付与されたコンテンツデータ「B」が格納され、コンテンツ識別データ「a」及びコンテンツ識別データ「b」のそれぞれに対し、コンテンツサーバ20を示すサーバ識別データが対応づけられたインデックス情報がそれぞれ格納されていることとする。さらに、記憶部22には、後述するルックアップサーバ80との通信に必要なIPアドレス、通信ポート等のような通信先データを予め保持していることとする。
コンテンツサーバ30は、コンテンツサーバ20と同様に、クライアント端末10からの追加、削除等の指示に応じて、コンテンツデータの追加、削除等を行うと共に、インデックスサーバ50または60からの指示に応じて、自己が保持するインデックス情報を更新するサーバであり、制御部31、記憶部32、インデックス更新部33、確認信号送信部34、データ検索部35、インデックス更新指示部36、インデックス情報生成部37、削除指示部38を有している。
確認信号送信部34は、起動中であることを示す確認信号をルックアップサーバ80に送信する部であり、後述するように、通信不可となったサーバを検出するためにルックアップサーバ80から送信される確認要求信号を受信すると、ルックアップサーバ80に対して確認信号を送信する。
記憶部32は、HDD等からなるメモリであり、例えば、文書、音声、動画等のコンテンツデータ、自己を識別するためのサーバ識別データおよびインデックス情報が格納される。
各コンテンツデータには、例えば、ファイル名等のようにコンテンツを識別するためのコンテンツ識別データが付与されていることとする。
インデックス情報とは、コンテンツ識別データ毎に、各コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられた情報である。本実施例では、このサーバ識別データは、例えば、IPアドレス、通信ポート等のような各コンテンツサーバとの通信に必要なデータを含むデータとする。
また、本実施例では、記憶部32には、コンテンツ識別データ「c」が付与されたコンテンツデータ「C」が格納され、コンテンツ識別データ「c」に対し、コンテンツサーバ30を示すサーバ識別データが対応づけられたインデックス情報が格納されていることとする。さらに、本実施例では、記憶部32には、後述するルックアップサーバ80との通信に必要なIPアドレス、通信ポート等のような通信先データを予め保持していることとする。
インデックスサーバ50は、インデックスDB90が保持するインデックス情報および起動中のコンテンツサーバが保持するインデックス情報の更新管理を行うサーバであり、制御部51、記憶部52、リスト更新部53、確認信号送信部54、更新指示部55、データ更新部56を有している。
確認信号送信部54は、起動中であることを示す確認信号をルックアップサーバ80に送信する部であり、後述するように、通信不可となったサーバを検出するためにルックアップサーバ80から送信される確認要求信号を受信すると、ルックアップサーバ80に対して確認信号を送信する。
記憶部52は、HDD等からなるメモリであり、自己を識別するためのサーバ識別データ、起動中のサーバを示すサーバ識別データからなる起動サーバリスト情報がそれぞれ格納されている。本実施例では、コンテンツサーバ20、インデックスサーバ50、60を示す各サーバ識別データからなる起動サーバリスト情報が格納されていることとする。
インデックスサーバ60は、インデックスサーバ50と同様に、インデックスDB90が保持するインデックス情報および起動中のコンテンツサーバが保持するインデックス情報の更新管理を行うサーバであり、制御部61、記憶部62、リスト更新部63、確認信号送信部64、更新指示部65、データ更新部66を有している。
確認信号送信部64は、起動中であることを示す確認信号をルックアップサーバ80に送信する部であり、後述するように、通信不可となったサーバを検出するためにルックアップサーバ80から送信される確認要求信号を受信すると、ルックアップサーバ80に対して確認信号を送信する。
記憶部62は、HDD等からなるメモリであり、記憶部52と同様に、自己を識別するためのサーバ識別データ、起動中のサーバを示すサーバ識別データからなる起動サーバリスト情報がそれぞれ格納されている。本実施例では、コンテンツサーバ20、インデックスサーバ50、60を示す各サーバ識別データからなる起動サーバリスト情報が格納されていることとする。
インデックスサーバ70は、インデックスサーバ60と同様に、インデックスDB90が保持するインデックス情報および起動中のコンテンツサーバが保持するインデックス情報の更新管理を行うサーバであり、制御部71、記憶部72、リスト更新部73、確認信号送信部74、更新指示部75、データ更新部76を有している。
確認信号送信部74は、起動中であることを示す確認信号をルックアップサーバ80に送信する部であり、後述するように、通信不可となったサーバを検出するためにルックアップサーバ80から送信される確認要求信号を受信すると、ルックアップサーバ80に対して確認信号を送信する。
記憶部72は、HDD等からなるメモリであり、自己を識別するためのサーバ識別データが格納されている。
負荷分散装置40は、インデックスサーバの負荷を分散すべく、コンテンツサーバからの指示データ等の転送先を任意に選択すると共に、選択されたインデックスサーバに対し、該指示データを転送する装置である。即ち、本実施例では、コンテンツサーバ20または30からの指示データ等の転送先としてインデックスサーバ50、60のいずれかが任意に選択されると共に、選択されたいずれかのインデックスサーバ50、60に対し、該指示データ等が転送される。
インデックスDB90は、コンテンツ配信システムを構成する全てのインデックスサーバに接続されているデータベースであり、コンテンツ識別データ毎に、該コンテンツが保持されているコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報を保持している。本実施例では、コンテンツ識別データ「a」、コンテンツ識別データ「b」に対して、コンテンツサーバ20を示すサーバ識別データがそれぞれ対応づけられたインデックス情報、コンテンツ識別データ「c」に対してコンテンツサーバ30を示すサーバ識別データが対応づけられたインデックス情報が格納されていることとする。
ルックアップサーバ80は、コンテンツ配信システムを構成する各サーバ(=コンテンツサーバおよびインデックスサーバ)と図示しないネットワークを介して接続されるサーバであり、制御部81、記憶部82、確認信号要求部83、状態変化検知部84、データ更新部85、リスト更新指示部86を有している。
記憶部82は、HDD等からなるメモリであり、起動中の各サーバを示すサーバ識別データからなる起動サーバリスト情報が格納される。本実施例では、コンテンツサーバ20、インデックスサーバ50、60をそれぞれ示すサーバ識別データからなる起動サーバリスト情報が格納されていることとする。
以下、クライアント端末10、コンテンツサーバ20、コンテンツサーバ30、負荷分散装置40、インデックスサーバ50、インデックスサーバ60、インデックスサーバ70、ルックアップサーバ80、インデックスDB90の相互関連について説明を行う。
ルックアップサーバ80の制御部81は、いわゆるCPUとして、ルックアップサーバ80を制御する部であり、サーバ管理者等の操作により、起動されると、通信環境の変化を監視すべく、検知開始指示信号を状態変化検知部84に転送する。
状態変化検知部84は、サーバの追加、切断等を検知する部であり、検知開始指示信号を受けると、確認信号要求部83を制御し、記憶部82の起動サーバリスト情報に基づいた各サーバに対し、確認要求信号を送信させる。即ち、本実施例では、コンテンツサーバ20、インデックスサーバ50、60のそれぞれに対して確認要求信号が定期的に送信される。
そして、状態変化検知部84は、制御部81を介して、確認対象である各サーバから一定時間内に確認信号を受信すると、通信状態の変化がないことを検知し、引き続き、確認信号要求部83により確認要求信号を送信させ、確認信号の要求先であるサーバのいずれかから一定時間以上確認信号を受信しないと、該サーバが切断されたことを検知する。また、制御部81を介して起動信号を受信すると、新たなサーバが追加されたことを検知する。以降、状態変化検知部84による検知結果に応じて、起動中の各サーバ間のデータ整合性を維持させるべく、後述する各更新処理が実行される。
ここで、まず、クライアント端末10、コンテンツサーバ20、負荷分散装置40、インデックスサーバ50、インデックスサーバ60、インデックスDB90、ルックアップサーバ80から構成されるコンテンツ配信システムに対し、コンテンツサーバ30が追加される場合について説明を行う。
コンテンツサーバ30の制御部31は、いわゆるCPUとしてコンテンツサーバ30を制御する部であり、サーバ管理者等の操作により、起動されると、記憶部32の通信先データに基づいて、ルックアップサーバ80に対し、起動信号を送信する。
そして、ルックアップサーバ80の制御部81は、起動信号を受信すると、起動信号を状態変化検知部84に転送し、起動信号を受けつけた状態変化検知部84は、新たなサーバが追加されたことを検知する。
制御部81は、状態変化検知部84が新たなサーバが追加されたことを検知すると、コンテンツサーバ30に対し、サーバ識別データの送信を指示するデータ送信指示信号を送信する。
コンテンツサーバ30の制御部31は、データ送信指示信号を受信すると、記憶部32のサーバ識別データをルックアップサーバ80に送信する。
ルックアップサーバ80の制御部81は、サーバ識別データを受信すると、サーバ識別データをデータ更新部85に転送する。
データ更新部85は、記憶部82の各データの更新を行う部であり、サーバ識別データを受けると、記憶部82の起動サーバリスト情報にサーバ識別データを追加する。
リスト更新指示部86は、起動中の各インデックスサーバが保持する起動サーバリスト情報の更新を指示する部であり、データ更新部85がサーバ識別データを追加すると、該サーバ識別データの追加を指示する追加指示データを記憶部82の起動サーバリスト情報に基づいて、少なくとも各インデックスサーバに送信する。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60に対して追加指示データが送信される。
インデックスサーバ50の制御部51は、いわゆるCPUとして、インデックスサーバ50を制御する部であり、追加指示データを受信すると、追加指示データをリスト更新部53に転送する。
リスト更新部53は、記憶部52の起動サーバリスト情報を更新する部であり、追加指示データを受けると、追加指示データに基づいて、記憶部52の起動サーバリスト情報にサーバ識別データを追加する。即ち、記憶部52の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データが追加される。
一方、インデックスサーバ60の制御部61は、いわゆるCPUとして、インデックスサーバ60を制御する部であり、追加指示データを受信すると、追加指示データをリスト更新部63に転送する。
リスト更新部63は、記憶部62の起動サーバリスト情報を更新する部であり、追加指示データを受けると、追加指示データに基づいて、記憶部62の起動サーバリスト情報にサーバ識別データを追加する。即ち、記憶部62の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データが追加される。
このように、上記構成のコンテンツ配信システムに対し、コンテンツサーバ30が追加された場合、ルックアップサーバ80が新たなサーバ(=コンテンツサーバ30)の追加を検知すると共に、少なくとも起動中のインデックスサーバ50、60に対し、各記憶部52、62の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データを追加する指示を行い、該指示を受けたインデックスサーバ50、60が各記憶部52、62の起動サーバリスト情報にサーバ識別データを追加するようにしたので、ルックアップサーバ80、インデックスサーバ50、60間の起動サーバリスト情報の整合性を維持することができる。
次に、上記コンテンツサーバ30が追加された構成のコンテンツ配信システムに対し、インデックスサーバ70が追加される場合について説明を行う。
インデックスサーバ70の制御部71は、いわゆるCPUとしてインデックスサーバ70を制御する部であり、サーバ管理者等の操作により、起動されると、記憶部72の通信先データに基づいて、起動信号をルックアップサーバ80に送信する。
そして、制御部81は、起動信号を受信すると、起動信号を状態変化検知部84に転送し、起動信号を受けつけた状態変化検知部84は、新たなサーバ(=インデックスサーバ70)が追加されたことを検知する。
制御部81は、状態変化検知部84が新たなサーバが追加されたことを検知すると、インデックスサーバ70に対し、サーバ識別データの送信を指示するデータ送信指示信号を送信する。
インデックスサーバ70の制御部71は、データ送信指示信号を受信すると、記憶部72のサーバ識別データおよび最新の起動サーバリスト情報を取得するためのサーバリスト要求信号をルックアップサーバ80に送信する。
ルックアップサーバ80の制御部81は、サーバ識別データ及びサーバリスト要求信号を受信すると、記憶部82から起動サーバリスト情報を取得し、該取得した起動サーバリスト情報をインデックスサーバ70に送信すると共に、サーバ識別データをデータ更新部85に転送する。
インデックスサーバ70の制御部71は、起動サーバリスト情報を受信すると、起動サーバリスト情報を記憶部72に登録する。
一方、データ更新部85は、サーバ識別データを受けると、記憶部82の起動サーバリスト情報にサーバ識別データを追加する。
リスト更新指示部86は、データ更新部85がサーバ識別データを追加すると、上記と同様に、起動中の各インデックスサーバが保持する起動サーバリスト情報を更新すべく、追加されたサーバ識別データの追加を指示する追加指示データを記憶部82の起動サーバリスト情報に基づいた各サーバに対して送信する。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60、70に対して、追加指示データが送信される。
そして、インデックスサーバ50、60、70は、追加指示データをそれぞれ受信すると、各リスト更新部53、63、73により、記憶部52、62、72の起動サーバリスト情報にサーバ識別データを追加する。
このように、上記構成のコンテンツ配信システムに対し、インデックスサーバ70が追加された場合、ルックアップサーバ80がインデックスサーバ70の追加を検知すると共に、起動中のインデックスサーバ50、60、70に対し、各記憶部52、62、72の起動サーバリスト情報にインデックスサーバ70を示すサーバ識別データを追加する指示を行い、該指示を受けたインデックスサーバ50、60、70が各記憶部52、62、72の起動サーバリスト情報に該サーバ識別データを追加するようにしたので、ルックアップサーバ80、インデックスサーバ50、60、70間の起動サーバリスト情報の整合性を維持することができる。
次に、上記インデックスサーバ70が追加された構成のコンテンツ配信システムにおいて、インデックスサーバ70が障害等により切断された場合について説明を行う。
例えば、ルックアップサーバ80の状態変化検知部84は、制御部81を介して、確認対象であるインデックスサーバ70から一定時間以上確認信号を受信しないと、インデックスサーバ70が切断されたことを検知する。
ルックアップサーバ80の制御部81は、状態変化検知部84がインデックスサーバ70の切断を検知すると、切断されたインデックスサーバ70を示すサーバ識別データをデータ更新部85に転送する。
データ更新部85は、サーバ識別データを受けると、サーバ識別データを記憶部82の起動サーバリスト情報から削除する。
リスト更新指示部86は、データ更新部85がサーバ識別データを削除すると、起動中の各インデックスサーバが保持する起動サーバリスト情報を更新すべく、該サーバ識別データの削除を指示する削除指示データを記憶部82の起動サーバリスト情報に基づいた各サーバに対して送信する。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60に対して削除指示データが送信される。
インデックスサーバ50の制御部51は、削除指示データを受信すると、削除指示データをリスト更新部53に転送する。
リスト更新部53は、削除指示データを受けると、削除指示データに基づいて、記憶部52の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する。
一方、インデックスサーバ60の制御部61は、削除指示データを受信すると、削除指示データをリスト更新部63に転送する。
リスト更新部63は、削除指示データを受けると、削除指示データに基づいて、記憶部62の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する。
このように、上記構成のコンテンツ配信システムに対し、例えば、インデックスサーバ70が切断された場合、ルックアップサーバ80がインデックスサーバ70の切断を検知すると共に、少なくとも起動中のインデックスサーバ50、60に対し、各記憶部52、62の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する指示を行い、該指示を受けたインデックスサーバ50、60が各記憶部52、62の起動サーバリスト情報から該サーバ識別データを削除するようにしたので、ルックアップサーバ80、インデックスサーバ50、60間の起動サーバリスト情報の整合性を維持することができる。
最後に、上記構成のコンテンツ配信システムのコンテンツサーバ30にコンテンツデータ「B」が追加された場合について説明を行う。この追加されるコンテンツデータ「B」には、該コンテンツデータを識別するためのコンテンツ識別データ「b」が付与されていることとする。
クライアント端末10から、コンテンツサーバ30に対し、最新のコンテンツデータ「B」を追加すべく、コンテンツデータ「B」が送信されると、コンテンツサーバ30の制御部31は、コンテンツデータ「B」をインデックス更新部33に転送する。
インデックス更新部33は、コンテンツデータ「B」を受けると、記憶部32にコンテンツデータ「B」を追加する。
インデックス情報生成部37は、インデックス情報を生成する部であり、インデックス更新部33がコンテンツデータ「B」の追加を完了すると、インデックスDB90を更新すべく、コンテンツデータ「B」のコンテンツ識別データ「b」およびコンテンツサーバ30を示すサーバ識別データを対応づけたインデックス情報を生成すると共に、生成されたインデックス情報の追加を指示する追加指示データを負荷分散装置40に送信する。
負荷分散装置40は、追加指示データを受信すると、追加指示データの転送先を任意に選択すると共に、選択されたインデックスサーバに対し、該追加指示データを転送する。本実施例では、インデックスサーバ50が選択されると共に、選択されたインデックスサーバ50に対し、追加指示データが転送されることとする。
インデックスサーバ50の制御部51は、追加指示データを受けると、追加指示データをデータ更新部56に転送する。
データ更新部56は、インデックスDB90の更新を行う部であり、追加指示データを受けると、追加指示データに基づいて、インデックスDB90にインデックス情報を追加する。
更新指示部55は、起動中の各サーバに対し、インデックス情報の更新を指示する部であり、データ更新部56がインデックス情報の追加を完了すると、該インデックス情報の追加を指示する追加指示データを記憶部52の起動サーバリスト情報に基づいて、少なくとも起動中のコンテンツサーバ20および30に対して送信する。
コンテンツサーバ20の制御部21は、追加指示データを受信すると、追加指示データをインデックス更新部23に転送する。
インデックス更新部23は、追加指示データを受けると、追加指示データに基づいて、記憶部22にインデックス情報を追加する。
データ検索部25は、古いインデックス情報が登録されているか否かを検索する部であり、インデックス更新部23がインデックス情報の追加を完了すると、記憶部22を参照し、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されているか否かを検索し、登録されていないと、非最新インデックス情報が存在しないことを検知し、登録されていると、非最新インデックス情報が存在していることを検知する。
制御部21は、非最新インデックス情報が存在しないことをデータ検索部25が検知すると、更新処理を完了し、非最新インデックス情報の存在を検知すると、非最新インデックス情報が存在することを示す検知信号を削除指示部28に出力する。
削除指示部28は、インデックスDB90に保持されている非最新インデックス情報の削除を指示する部であり、検知信号を受けると、該非最新インデックス情報の削除を指示する削除指示データを負荷分散装置40に転送する。
ここで、コンテンツサーバ20の記憶部22には、追加されたインデックス情報と同一のコンテンツ識別データ「b」が対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されていることから、データ検索部25は、非最新インデックス情報の存在を検知し、削除指示部28が非最新インデックス情報の削除を指示する削除指示データを負荷分散装置40に送信する。
負荷分散装置40は、削除指示データを受信すると、削除指示データの転送先を任意に選択すると共に、選択されたインデックスサーバに対し、該削除指示データを転送する。本実施例では、インデックスサーバ60が選択されると共に、選択されたインデックスサーバ60に対し、削除指示データが転送されることとする。
インデックスサーバ60の制御部61は、削除指示データを受けると、削除指示データをデータ更新部66に転送する。
データ更新部66は、削除指示データを受けると、削除指示データに基づいて、インデックスDB90から非最新インデックス情報を削除する。
更新指示部65は、データ更新部66が非最新インデックス情報の削除を完了すると、引き続き、記憶部62の起動サーバリスト情報に基づいて、少なくとも起動中のコンテンツサーバ20、30に対して、該非最新インデックス情報の削除を指示する削除指示データを送信する。
コンテンツサーバ20の制御部21は、削除指示データを受信すると、削除指示データをインデックス更新部23に転送する。
インデックス更新部23は、削除指示データを受けると、削除指示データに基づいて、記憶部22から非最新インデックス情報の削除を行う。この際、インデックス更新部23は、削除された非最新インデックス情報のコンテンツ識別データが付与されたコンテンツデータを保持している場合、該コンテンツデータも削除する。
一方、コンテンツサーバ30の制御部31も、コンテンツサーバ20と同様に、削除指示データを受信すると、削除指示データをインデックス更新部33に転送し、削除指示データを受けたインデックス更新部33は、削除指示データに基づいて、記憶部32から非最新インデックス情報を削除する。この際、インデックス更新部33は、削除されたインデックス情報のコンテンツ識別データが付与されたコンテンツデータを保持している場合、該コンテンツデータも削除する。
一方、コンテンツサーバ30の制御部31も、上述したコンテンツサーバ20と同様に、追加指示データを受信すると、追加指示データをインデックス更新部33に転送する。
インデックス更新部33は、追加指示データを受けると、追加指示データに基づいて、記憶部32にインデックス情報を追加する。
データ検索部35は、古いインデックス情報が登録されているか否かを検索する部であり、インデックス更新部33がインデックス情報の追加を完了すると、記憶部32を参照し、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されているか否かを検索し、登録されていないと、非最新インデックス情報が存在しないことを検知し、登録されていると、非最新インデックス情報が存在していることを検知する。
制御部31は、非最新インデックス情報が存在しないことをデータ検索部35が検知すると、更新処理を完了し、非最新インデックス情報の存在を検知すると、非最新インデックス情報が存在することを示す検知信号を削除指示部38に出力する。
ここで、コンテンツサーバ30の記憶部32には、更新されたインデックス情報と同一のコンテンツ識別データ「b」が対応づけられたインデックス情報が登録されていないことから、データ検索部35は、古いインデックス情報が登録されていないことを検知し、制御部31により更新処理が完了される。
このように、上記構成のコンテンツ配信システムのコンテンツサーバ30にコンテンツデータ「B」が追加された場合、まず、インデックスDB90を更新すべく、コンテンツサーバ30がコンテンツデータ「B」のコンテンツ識別データ「b」およびコンテンツサーバ30を示すサーバ識別データを対応づけたインデックス情報を生成すると共に、生成されたインデックス情報を負荷分散装置40により任意に選択されるインデックスサーバ50、60のいずれかがインデックスDB90に追加すると共に、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられている非最新インデックス情報をコンテンツサーバ20、30の記憶部22、32から削除するようにしたので、インデックスDB90、コンテンツサーバ20、30の各記憶部22、32間のインデックス情報の整合性を維持することができる。
〈実施例の動作〉
次に、本実施例のコンテンツ配信システムの動作について説明を行う。
図2は、本実施例のコンテンツ配信システムの動作フローチャートである。
本実施例において、コンテンツ配信システムは、クライアント端末10、コンテンツサーバ20、負荷分散装置40、インデックスサーバ50、インデックスサーバ60、ルックアップサーバ80、インデックスDB90から構成されていることとする。
ルックアップサーバ80の制御部81は、サーバ管理者等の操作により、起動されると(S1)、通信環境の変化を監視すべく、検知開始指示信号を状態変化検知部84に転送する。
状態変化検知部84は、検知開始指示信号を受けると、確認信号要求部83を制御し、記憶部82の起動サーバリスト情報に基づいた各サーバに対し、確認要求信号を送信させる(S2)。即ち、本実施例では、コンテンツサーバ20、インデックスサーバ50、60のそれぞれに対して確認要求信号が定期的に送信される。
そして、状態変化検知部84は、制御部81を介して、確認対象である各サーバから一定時間内に確認信号を受信すると、通信状態の変化がないことを検知し、引き続き、確認信号要求部83により確認要求信号を送信させ、確認信号の要求先であるサーバのいずれかから一定時間以上確認信号を受信しないと、該サーバが切断されたことを検知する。また、制御部81を介して起動信号を受信すると、新たなサーバが追加されたことを検知する(S3)。以降、状態変化検知部84による検知結果に応じて、起動中の各サーバ間のデータ整合性を維持させるべく、後述する各更新処理が実行される(S4)。
ここで、まず、クライアント端末10、コンテンツサーバ20、負荷分散装置40、インデックスサーバ50、インデックスサーバ60、インデックスDB90、ルックアップサーバ80から構成されるコンテンツ配信システムに対し、コンテンツサーバ30が追加される場合について説明を行う。
図3は、コンテンツサーバ30が追加された場合の動作フローチャートである。
コンテンツサーバ30の制御部31は、サーバ管理者等の操作により、起動されると、記憶部32の通信先データに基づいて、ルックアップサーバ80に対し、起動信号を送信する(S101)。
そして、ルックアップサーバ80の制御部81は、起動信号を受信すると、起動信号を状態変化検知部84に転送し、起動信号を受けつけた状態変化検知部84は、新たなサーバが追加されたことを検知する(S102)。
制御部81は、状態変化検知部84が新たなサーバが追加されたことを検知すると、コンテンツサーバ30に対し、サーバ識別データの送信を指示するデータ送信指示信号を送信する(S103)。
コンテンツサーバ30の制御部31は、データ送信指示信号を受信すると、記憶部32のサーバ識別データをルックアップサーバ80に送信する(S104)。
ルックアップサーバ80の制御部81は、サーバ識別データを受信すると、サーバ識別データをデータ更新部85に転送する。
データ更新部85は、サーバ識別データを受けると、記憶部82の起動サーバリスト情報にサーバ識別データを追加する(S105)。
リスト更新指示部86は、データ更新部85がサーバ識別データを追加すると、該サーバ識別データの追加を指示する追加指示データを記憶部82の起動サーバリスト情報に基づいて、少なくとも各インデックスサーバに送信する。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60に対して追加指示データが送信される(S106)。
インデックスサーバ50の制御部51は、追加指示データを受信すると、追加指示データをリスト更新部53に転送する。
リスト更新部53は、追加指示データを受けると、追加指示データに基づいて、記憶部52の起動サーバリスト情報にサーバ識別データを追加する。即ち、記憶部52の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データが追加される(S107)。
一方、インデックスサーバ60の制御部61は、追加指示データを受信すると、追加指示データをリスト更新部63に転送する。
リスト更新部63は、追加指示データを受けると、追加指示データに基づいて、記憶部62の起動サーバリスト情報にサーバ識別データを追加する。即ち、記憶部62の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データが追加される(S7)。
このように、上記構成のコンテンツ配信システムに対し、コンテンツサーバ30が追加された場合、ルックアップサーバ80が新たなサーバ(=コンテンツサーバ30)の追加を検知すると共に、少なくとも起動中のインデックスサーバ50、60に対し、各記憶部52、62の起動サーバリスト情報にコンテンツサーバ30を示すサーバ識別データを追加する指示を行い、該指示を受けたインデックスサーバ50、60が各記憶部52、62の起動サーバリスト情報にサーバ識別データを追加するようにしたので、ルックアップサーバ80、インデックスサーバ50、60間の起動サーバリスト情報の整合性を維持することができる。
次に、上記コンテンツサーバ30が追加された構成のコンテンツ配信システムに対し、インデックスサーバ70が追加される場合について説明を行う。
図4は、インデックスサーバ70が追加された場合の動作フローチャートである。
インデックスサーバ70の制御部71は、サーバ管理者等の操作により、起動されると、記憶部72の通信先データに基づいて、起動信号をルックアップサーバ80に送信する(S201)。
そして、制御部81は、起動信号を受信すると、起動信号を状態変化検知部84に転送し、起動信号を受けつけた状態変化検知部84は、新たなサーバ(=インデックスサーバ70)が追加されたことを検知する(S202)。
制御部81は、状態変化検知部84が新たなサーバが追加されたことを検知すると、インデックスサーバ70に対し、サーバ識別データの送信を指示するデータ送信指示信号を送信する(S203)。
インデックスサーバ70の制御部71は、データ送信指示信号を受信すると、記憶部72のサーバ識別データおよび最新の起動サーバリスト情報を取得するためのサーバリスト要求信号をルックアップサーバ80に送信する(S204)。
ルックアップサーバ80の制御部81は、サーバ識別データ及びサーバリスト要求信号を受信すると、記憶部82から起動サーバリスト情報を取得し、該取得した起動サーバリスト情報をインデックスサーバ70に送信すると共に、サーバ識別データをデータ更新部85に転送する(S205)。
インデックスサーバ70の制御部71は、起動サーバリスト情報を受信すると、起動サーバリスト情報を記憶部72に登録する。
一方、データ更新部85は、サーバ識別データを受けると、記憶部82の起動サーバリスト情報にサーバ識別データを追加する(S206)。
リスト更新指示部86は、データ更新部85がサーバ識別データを追加すると、上記と同様に、起動中の各インデックスサーバが保持する起動サーバリスト情報を更新すべく、追加されたサーバ識別データの追加を指示する追加指示データを記憶部82の起動サーバリスト情報に基づいた各サーバに対して送信する(S207)。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60、70に対して、追加指示データが送信される。
そして、インデックスサーバ50、60、70は、追加指示データをそれぞれ受信すると、各リスト更新部53、63、73により、記憶部52、62、72の起動サーバリスト情報にサーバ識別データを追加する(S208)。
このように、上記構成のコンテンツ配信システムに対し、インデックスサーバ70が追加された場合、ルックアップサーバ80がインデックスサーバ70の追加を検知すると共に、起動中のインデックスサーバ50、60、70に対し、各記憶部52、62、72の起動サーバリスト情報にインデックスサーバ70を示すサーバ識別データを追加する指示を行い、該指示を受けたインデックスサーバ50、60、70が各記憶部52、62、72の起動サーバリスト情報に該サーバ識別データを追加するようにしたので、ルックアップサーバ80、インデックスサーバ50、60、70間の起動サーバリスト情報の整合性を維持することができる。
次に、上記インデックスサーバ70が追加された構成のコンテンツ配信システムにおいて、インデックスサーバ70が障害等により切断された場合について説明を行う。
図6は、インデックスサーバ70が切断された場合の動作フローチャートである。
例えば、ルックアップサーバ80の状態変化検知部84は、制御部81を介して、確認対象であるインデックスサーバ70から一定時間以上確認信号を受信しないと、インデックスサーバ70が切断されたことを検知する(S301)。
ルックアップサーバ80の制御部81は、状態変化検知部84がインデックスサーバ70の切断を検知すると、切断されたインデックスサーバ70を示すサーバ識別データをデータ更新部85に転送する。
データ更新部85は、サーバ識別データを受けると、サーバ識別データを記憶部82の起動サーバリスト情報から削除する(S302)。
リスト更新指示部86は、データ更新部85がサーバ識別データを削除すると、起動中の各インデックスサーバが保持する起動サーバリスト情報を更新すべく、該サーバ識別データの削除を指示する削除指示データを記憶部82の起動サーバリスト情報に基づいた各サーバに対して送信する(S303)。即ち、本実施例では、起動サーバリスト情報に基づいて、少なくとも起動中のインデックスサーバ50、60に対して削除指示データが送信される。
インデックスサーバ50の制御部51は、削除指示データを受信すると、削除指示データをリスト更新部53に転送する。
リスト更新部53は、削除指示データを受けると、削除指示データに基づいて、記憶部52の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する(S304)。
一方、インデックスサーバ60の制御部61は、削除指示データを受信すると、削除指示データをリスト更新部63に転送する。
リスト更新部63は、削除指示データを受けると、削除指示データに基づいて、記憶部62の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する。
このように、上記構成のコンテンツ配信システムに対し、例えば、インデックスサーバ70が切断された場合、ルックアップサーバ80がインデックスサーバ70の切断を検知すると共に、少なくとも起動中のインデックスサーバ50、60に対し、各記憶部52、62の起動サーバリスト情報から、インデックスサーバ70を示すサーバ識別データを削除する指示を行い、該指示を受けたインデックスサーバ50、60が各記憶部52、62の起動サーバリスト情報から該サーバ識別データを削除するようにしたので、ルックアップサーバ80、インデックスサーバ50、60間の起動サーバリスト情報の整合性を維持することができる。
最後に、上記構成のコンテンツ配信システムのコンテンツサーバ30にコンテンツデータ「B」が追加された場合について説明を行う。この追加されるコンテンツデータ「B」には、該コンテンツデータを識別するためのコンテンツ識別データ「b」が付与されていることとする。
図6は、コンテンツサーバ30にコンテンツデータが追加された場合の動作フローチャートである。
クライアント端末10から、コンテンツサーバ30に対し、最新のコンテンツデータ「B」を追加すべく、コンテンツデータ「B」が送信されると、コンテンツサーバ30の制御部31は、コンテンツデータ「B」をインデックス更新部33に転送する。
インデックス更新部33は、コンテンツデータ「B」を受けると、記憶部32にコンテンツデータ「B」を追加する(S401)。
インデックス情報生成部37は、インデックス更新部33がコンテンツデータ「B」の追加を完了すると、インデックスDB90を更新すべく、コンテンツデータ「B」のコンテンツ識別データ「b」およびコンテンツサーバ30を示すサーバ識別データを対応づけたインデックス情報を生成すると共に、生成されたインデックス情報の追加を指示する追加指示データを負荷分散装置40に送信する(S402)。
負荷分散装置40は、追加指示データを受信すると、追加指示データの転送先を任意に選択すると共に、選択されたインデックスサーバに対し、該追加指示データを転送する。本実施例では、インデックスサーバ50が選択されると共に、選択されたインデックスサーバ50に対し、追加指示データが転送されることとする。
インデックスサーバ50の制御部51は、追加指示データを受けると、追加指示データをデータ更新部56に転送する。
データ更新部56は、追加指示データを受けると、追加指示データに基づいて、インデックスDB90にインデックス情報を追加する(S403)。
更新指示部55は、データ更新部56がインデックス情報の追加を完了すると、該インデックス情報の追加を指示する追加指示データを記憶部52の起動サーバリスト情報に基づいて、少なくとも起動中のコンテンツサーバ20および30に対して送信する(S404)。
コンテンツサーバ20の制御部21は、追加指示データを受信すると、追加指示データをインデックス更新部23に転送する。
インデックス更新部23は、追加指示データを受けると、追加指示データに基づいて、記憶部22にインデックス情報を追加する(S405)。
データ検索部25は、インデックス更新部23がインデックス情報の追加を完了すると、記憶部22を参照し、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されているか否かを検索し、登録されていないと、非最新インデックス情報が存在しないことを検知し、登録されていると、非最新インデックス情報が存在していることを検知する(S406)。
制御部21は、非最新インデックス情報が存在しないことをデータ検索部25が検知すると、更新処理を完了し、非最新インデックス情報の存在を検知すると、非最新インデックス情報が存在することを示す検知信号を削除指示部28に出力する(S407)。
削除指示部28は、検知信号を受けると、該非最新インデックス情報の削除を指示する削除指示データを負荷分散装置40に転送する(S408)。
ここで、コンテンツサーバ20の記憶部22には、追加されたインデックス情報と同一のコンテンツ識別データ「b」が対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されていることから、データ検索部25は、非最新インデックス情報の存在を検知し、削除指示部28が非最新インデックス情報の削除を指示する削除指示データを負荷分散装置40に送信する。
負荷分散装置40は、削除指示データを受信すると、削除指示データの転送先を任意に選択すると共に、選択されたインデックスサーバに対し、該削除指示データを転送する。本実施例では、インデックスサーバ60が選択されると共に、選択されたインデックスサーバ60に対し、削除指示データが転送されることとする。
インデックスサーバ60の制御部61は、削除指示データを受けると、削除指示データをデータ更新部66に転送する。
データ更新部66は、削除指示データを受けると、削除指示データに基づいて、インデックスDB90から非最新インデックス情報を削除する(S409)。
更新指示部65は、データ更新部66が非最新インデックス情報の削除を完了すると、引き続き、記憶部62の起動サーバリスト情報に基づいて、少なくとも起動中のコンテンツサーバ20、30に対して、該非最新インデックス情報の削除を指示する削除指示データを送信する(S410)。
コンテンツサーバ20の制御部21は、削除指示データを受信すると、削除指示データをインデックス更新部23に転送する。
インデックス更新部23は、削除指示データを受けると、削除指示データに基づいて、記憶部22から非最新インデックス情報の削除を行う(S411)。この際、インデックス更新部23は、削除された非最新インデックス情報のコンテンツ識別データが付与されたコンテンツデータを保持している場合、該コンテンツデータも削除する。
一方、コンテンツサーバ30の制御部31も、コンテンツサーバ20と同様に、削除指示データを受信すると、削除指示データをインデックス更新部33に転送し、削除指示データを受けたインデックス更新部33は、削除指示データに基づいて、記憶部32から非最新インデックス情報を削除する。この際、インデックス更新部33は、削除されたインデックス情報のコンテンツ識別データが付与されたコンテンツデータを保持している場合、該コンテンツデータも削除する。
一方、コンテンツサーバ30の制御部31も、上述したコンテンツサーバ20と同様に、追加指示データを受信すると、追加指示データをインデックス更新部33に転送する。
インデックス更新部33は、追加指示データを受けると、追加指示データに基づいて、記憶部32にインデックス情報を追加する。
データ検索部35は、インデックス更新部33がインデックス情報の追加を完了すると、記憶部32を参照し、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報(=古いインデックス情報)が登録されているか否かを検索し、登録されていないと、非最新インデックス情報が存在しないことを検知し、登録されていると、非最新インデックス情報が存在していることを検知する。
制御部31は、非最新インデックス情報が存在しないことをデータ検索部35が検知すると、更新処理を完了し、非最新インデックス情報の存在を検知すると、非最新インデックス情報が存在することを示す検知信号を削除指示部38に出力する。
ここで、コンテンツサーバ30の記憶部32には、更新されたインデックス情報と同一のコンテンツ識別データ「b」が対応づけられたインデックス情報が登録されていないことから、データ検索部35は、古いインデックス情報が登録されていないことを検知し、制御部31により更新処理が完了される。
このように、上記構成のコンテンツ配信システムのコンテンツサーバ30にコンテンツデータ「B」が追加された場合、まず、インデックスDB90を更新すべく、コンテンツサーバ30がコンテンツデータ「B」のコンテンツ識別データ「b」およびコンテンツサーバ30を示すサーバ識別データを対応づけたインデックス情報を生成すると共に、生成されたインデックス情報を負荷分散装置40により任意に選択されるインデックスサーバ50、60のいずれかがインデックスDB90に追加すると共に、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられている非最新インデックス情報をコンテンツサーバ20、30の記憶部22、32から削除するようにしたので、インデックスDB90、コンテンツサーバ20、30の各記憶部22、32間のインデックス情報の整合性を維持することができる。
〈実施例の効果〉
本実施例のコンテンツ配信システムでは、コンテンツ識別データ毎に、コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報が格納されたインデックスDB90と複数のインデックスサーバ50、60とを設け、ルックアップサーバ80は、サーバの追加を検知すると、追加されたサーバのサーバ識別データの追加を指示する追加指示データを各インデックスサーバ50、60に送信し、サーバの切断を検知すると、切断されたサーバのサーバ識別データの削除を指示する削除指示データを各インデックスサーバ50、60に送信し、コンテンツサーバは、コンテンツデータが更新されると、インデックス情報の更新を指示すべく、更新されたコンテンツデータの追加、変更、削除のいずれかを示す更新指示データを各インデックスサーバ50、60のいずれかに送信し、各インデックスサーバ50、60は、削除指示データを受信すると、削除指示データに基づいて、起動サーバリスト情報からサーバ識別データを削除し、追加指示データを受信すると、追加指示データに基づいて、起動サーバリスト情報にサーバ識別データを追加し、更新指示データを受信すると、更新指示データに基づいて、インデックス記憶部のインデックス情報を更新するようにした。
また、コンテンツサーバ20、30にコンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバのサーバ識別データが対応づけられたインデックス情報を保持する記憶部22、32を設け、インデックスサーバ50、60のいずれかが更新指示データに基づいて、インデックスDB90にインデックス情報を追加すると、コンテンツサーバ20、30は、各記憶部22、32を参照し、追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報を検索し、非最新インデックス情報が検索されると、各インデックスサーバ50、60のいずれかに非最新インデックス情報の削除を指示する削除指示データを送信し、削除指示データを受信したインデックスサーバ50、60のいずれかが削除指示データに基づいて、インデックスDB90から非最新インデックス情報を削除すると、コンテンツサーバ20、30は、各記憶部22、32から非最新インデックス情報を削除するようにした。
これにより、コンテンツデータの更新時、インデックスサーバ50、60、コンテンツサーバ20、30間のインデックス情報の整合性を維持することができると共に、障害等によりコンテンツ配信システムの構成が変更された場合においても、各インデックスサーバ50、60間の起動サーバリスト情報の整合性を維持することができる。従って、インデックス情報または各インデックスサーバ50、60が保持する起動サーバリスト情報間に不整合が生じることがなく、配信サービスが中断するのを防止する可用性の高いコンテンツ配信システムを提供できる。
上記実施例では、コンテンツ配信システムを構成する各サーバは、予めルックアップサーバの通知先データを保持する構成であったが、これに限られることはなく、起動信号をマルチキャストにより送信することにより、ルックアップサーバ80との通信を開始する構成としてもよい。
本発明のコンテンツ配信システムを示すブロック構成図 本実施例のコンテンツ配信システムの動作フローチャート コンテンツサーバ30が追加された場合の動作フローチャート インデックスサーバ70が追加された場合の動作フローチャート インデックスサーバ70が切断された場合の動作フローチャート コンテンツサーバ30にコンテンツデータが追加された場合の動作フローチャート
符号の説明
10 クライアント端末
20 コンテンツサーバ
21 制御部
22 記憶部
23 インデックス更新部
24 確認信号送信部
25 データ検索部
26 インデックス更新指示部
27 インデックス情報生成部
28 削除指示部
30 コンテンツサーバ
31 制御部
32 記憶部
33 インデックス更新部
34 確認信号送信部
35 データ検索部
36 インデックス更新指示部
37 インデックス情報生成部
38 削除指示部
40 負荷分散装置
50 インデックスサーバ
51 制御部
52 記憶部
53 リスト更新部
54 確認信号送信部
55 更新指示部
56 データ更新部
60 インデックスサーバ
61 制御部
62 記憶部
63 リスト更新部
64 確認信号送信部
65 更新指示部
66 データ更新部
70 インデックスサーバ
71 制御部
72 記憶部
73 リスト更新部
74 確認信号送信部
75 更新指示部
76 データ更新部
80 ルックアップサーバ
81 制御部
82 記憶部
83 確認信号要求部
84 状態変化検知部
85 データ更新部
86 リスト更新指示部
90 インデックスDB

Claims (5)

  1. コンテンツデータを識別するためのコンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバを示すサーバ識別データが対応づけられたインデックス情報が格納されたインデックス記憶部と、前記インデックス記憶部のインデックス情報を更新管理すると共に、起動中のサーバを示す起動サーバリスト情報を保持するインデックスサーバと、少なくともサーバの切断を検知するルックアップサーバとを備えるコンテンツ配信システムにおいて、
    前記インデックスサーバを複数備え、
    前記ルックアップサーバは、
    サーバの切断を検知すると、切断されたサーバのサーバ識別データの削除を指示する削除指示データを前記起動サーバリスト情報に基づいて、前記各インデックスサーバに送信するリスト更新指示部を備え、
    前記コンテンツサーバは、
    コンテンツデータが更新されると、前記インデックス情報の更新を指示すべく、更新されたコンテンツデータの追加、変更、削除のいずれかを示す更新指示データを前記各インデックスサーバのいずれかに送信するインデックス更新指示部とを備え、
    前記各インデックスサーバは、
    前記削除指示データを受信すると、前記削除指示データに基づいて、前記起動サーバリスト情報からサーバ識別データを削除し、前記更新指示データを受信すると、前記更新指示データに基づいて、前記インデックス記憶部のインデックス情報を更新する更新部を備えることを特徴とするコンテンツ配信システム。
  2. 前記リスト更新指示部は、
    サーバの起動を検知すると、起動されたサーバのサーバ識別データの追加を指示する追加指示データを前記起動サーバリスト情報に基づいて、前記各インデックスサーバに送信し、
    前記更新部は、
    前記追加指示データを受信すると、前記追加指示データに基づいて、前記起動サーバリスト情報にサーバ識別データを追加することを特徴とする請求項1記載のコンテンツ配信システム。
  3. 前記リスト更新指示部は、
    前記削除指示データを前記コンテンツサーバに送信することを特徴とする請求項1記載のコンテンツ配信システム。
  4. 前記リスト更新指示部は、
    前記追加指示データを前記コンテンツサーバに送信することを特徴とする請求項2記載のコンテンツ配信システム。
  5. 前記コンテンツサーバは、
    コンテンツ識別データ毎に、該コンテンツデータを保持するコンテンツサーバのサーバ識別データが対応づけられたインデックス情報を保持する記憶部と、
    前記インデックスサーバが前記更新指示データに基づいて、前記インデックス記憶部に前記インデックス情報を追加すると、前記記憶部を参照し、前記追加されたインデックス情報と同一のコンテンツ識別データが対応づけられた非最新インデックス情報を検索するデータ検索部と、
    前記データ検索部が非最新インデックス情報を検索すると、前記各インデックスサーバのいずれかに前記非最新インデックス情報の削除を指示する削除指示データを送信する削除指示部と、
    前記削除指示データを受信したインデックスサーバが前記削除指示データに基づいて、前記インデックス記憶部から前記非最新インデックス情報を削除すると、前記記憶部から前記非最新インデックス情報を削除するインデックス更新部とを備えることを特徴とする請求項1記載のコンテンツ配信システム。
JP2005343768A 2005-11-29 2005-11-29 コンテンツ配信システム Pending JP2007148882A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005343768A JP2007148882A (ja) 2005-11-29 2005-11-29 コンテンツ配信システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005343768A JP2007148882A (ja) 2005-11-29 2005-11-29 コンテンツ配信システム

Publications (1)

Publication Number Publication Date
JP2007148882A true JP2007148882A (ja) 2007-06-14

Family

ID=38210217

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005343768A Pending JP2007148882A (ja) 2005-11-29 2005-11-29 コンテンツ配信システム

Country Status (1)

Country Link
JP (1) JP2007148882A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101571877B (zh) * 2008-04-28 2013-02-27 歌乐牌株式会社 设施检索装置、设施检索方法
CN113076125A (zh) * 2021-04-25 2021-07-06 北京金山云网络技术有限公司 直播业务升级处理方法、装置、介质和服务器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318720A (ja) * 2001-04-19 2002-10-31 Oki Electric Ind Co Ltd コンテンツ配信管理システム
JP2003271440A (ja) * 2002-03-18 2003-09-26 Oki Electric Ind Co Ltd コンテンツ配信管理システム
JP2005004615A (ja) * 2003-06-13 2005-01-06 Oki Electric Ind Co Ltd コンテンツ配信管理システム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002318720A (ja) * 2001-04-19 2002-10-31 Oki Electric Ind Co Ltd コンテンツ配信管理システム
JP2003271440A (ja) * 2002-03-18 2003-09-26 Oki Electric Ind Co Ltd コンテンツ配信管理システム
JP2005004615A (ja) * 2003-06-13 2005-01-06 Oki Electric Ind Co Ltd コンテンツ配信管理システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101571877B (zh) * 2008-04-28 2013-02-27 歌乐牌株式会社 设施检索装置、设施检索方法
CN113076125A (zh) * 2021-04-25 2021-07-06 北京金山云网络技术有限公司 直播业务升级处理方法、装置、介质和服务器
CN113076125B (zh) * 2021-04-25 2024-04-12 北京金山云网络技术有限公司 直播业务升级处理方法、装置、介质和服务器

Similar Documents

Publication Publication Date Title
JP4747733B2 (ja) ノード装置、共用情報更新処理プログラム、共用情報更新方法、及び情報共有システム
US8195764B2 (en) Information delivery system, delivery request program, transfer program, delivery program, and the like
JP5765928B2 (ja) 画像処理装置及びその制御方法、並びにプログラム
US20140282481A1 (en) Information Processing Apparatus, Relay Server, Information Relay Method, Non-Transitory Computer-Readable Medium Storing Information Relay Program, and Communication System
US20060212629A1 (en) Image forming system, image forming apparatus and terminal apparatus
JP2007066161A (ja) キャッシュシステム
JP2005011354A (ja) 通知ボンドを使用してキャッシュオブジェクトを管理するためのシステムおよび方法
JP5184078B2 (ja) ファイル管理システム
JP6700308B2 (ja) データ・コピー方法及びデバイス
JP5241473B2 (ja) 情報処理システム、中継サーバ装置、端末装置、中継サーバ処理方法、端末処理方法、およびプログラム
JP2007148882A (ja) コンテンツ配信システム
EP2802108B1 (en) Data-centric communications system and data forwarding method
JP2007025964A (ja) データ所在管理サーバ及びデータ所在管理プログラム
JP2010198102A (ja) 情報処理装置、ファイル管理システムおよびプログラム
JP4774814B2 (ja) サーバアクセス制御システム、サーバアクセス制御方法およびサーバアクセス制御プログラム
JP5860259B2 (ja) 判定プログラム及び判定装置
JP2007328736A (ja) リソース検索システム
JP6292892B2 (ja) 情報処理装置、情報処理方法及びプログラム
KR100872170B1 (ko) P2p 네트워크 다중 라우팅 방법
JP4243150B2 (ja) コンテンツ配信システムおよび利用者端末装置
JP2007264823A (ja) ファイル共有プログラム
JP2007249913A (ja) データ管理装置、データ管理プログラム、および記録媒体
JP2007316696A (ja) データ管理装置
JP2007213436A (ja) 情報処理装置、情報処理方法、端末装置、端末装置の制御方法
JP2013235483A (ja) 添付ファイル送付システム、サーバ装置、クライアント装置、添付ファイル送付方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101019

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101129

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101217

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110201