(57)【特許請求の範囲】
【請求項１】
ネットワークを介して送信されるユーザからのアクセス要求に基づいて処理を実行し、ユーザ毎のメールデータをそれぞれ管理する複数のメールデータ管理サーバと、
上記ユーザのユーザ情報を保存し、この保存されたユーザ情報の中に上記ユーザから送信されたユーザ情報が存在する時に、このユーザ情報に対応するユーザのメールデータを管理するメールデータ管理サーバの情報を取得するユーザ認証サーバと、
上記複数のメールデータ管理サーバとネットワークを介して接続され、上記ユーザから送信されたアクセス内容を取得し、この取得されたアクセス内容と上記ユーザ認証サーバで取得されたメールデータ管理サーバの情報とに基づいてアクセスするメールデータ管理サーバを特定し、この特定されたメールデータ管理サーバで実行された処理結果を上記ユーザに返信するフロントエンドサーバとを備えた電子メールシステムにおいて、
上記フロントエンドサーバは、上記複数のメールデータ管理サーバの稼動中に新たなメールデータ管理サーバをネットワークに接続し、この新たなメールデータ管理サーバに稼動中の上記複数のメールデータ管理サーバ中のユーザのメールデータをコピーし、自らが保持する管理テーブルに新たなメールデータ管理サーバが接続された情報を追加し、さらに上記ユーザ情報に新たなメールデータ管理サーバに稼動中の上記複数のメールデータ管理サーバ中のユーザのメールデータをコピーした情報を追加するメールサーバアクセス管理部を備えたことを特徴とする電子メールシステム。
【請求項２】
上記メールサーバアクセス管理部は、上記ユーザのメールデータの全てがコピーされた時には、ユーザに保管されているメールデータ管理サーバの情報をコピー前の通常の状態に戻し、上記ユーザ情報中のメールデータ管理サーバの情報を新たなメールデータ管理サーバの情報に変更することを特徴とする請求項１記載の電子メールシステム。
【請求項３】
上記メールサーバアクセス管理部は、上記ユーザ認証サーバで取得されたメールデータ管理サーバの情報が1つであるか否かを判断し、メールデータ管理サーバの情報が複数存在した時には、この複数のメールデータ管理サーバにアクセスし、上記複数のメールデータ管理サーバで実行された処理結果をアクセス要求に従って合成し、アクセス内容の履歴をとって上記ユーザに返信することを特徴とする請求項１記載の電子メールシステム。
【請求項４】
上記メールサーバアクセス管理部は、上記特定のメールデータ管理サーバで実行された処理結果に基づいてユーザのメールデータに対応するフォルダ名とこのフォルダ内のユニークなＩＤ情報とデータとにより構成される第１の対応表を各メールデータ管理サーバ毎に作成し、この作成した複数の第１の対応表の中から同一フォルダ名と同一ＩＤ情報のデータを検索し、この検索された同一データと同一フォルダ名と同一ＩＤ情報とが重なることがなく、かつそれぞれの情報が矛盾することのないフォルダ名とＩＤ情報とデータとにより構成される第２の対応表を作成することにより上記処理結果を合成することを特徴とする請求項３記載の電子メールシステム。
【請求項５】
上記メールサーバアクセス管理部は、ユーザからのアクセス要求のプロトコルを判断し、このプロトコルに基づいてメールデータ管理サーバを特定することを特徴とする請求項1記載の電子メールシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、インターネット上で運用される電子メールサーバ装置に関するものである。
【０００２】
【従来の技術】
最近のインターネット接続サービスでは様々な電子メールのサービスがある。
この中には携帯電話を含んだ様々なクライアントコンピュータから同じメールデータにアクセスするサービスがある。この代表的なサービスとしてＩＭＡＰ４というプロトコルを利用したサービスとWebブラウジング機能を利用したメールサービスがある。しかしながら、急激なユーザ数の増加や、多くのユーザから特定のメールデータへのアクセスの偏りにより、このメールデータを管理するサーバのハードウエアに障害等が発生する場合があり、しばしば夜間などにこのメールデータを管理するサーバのサービスを停止してサーバを保守する場合がある。
【０００３】
例えば、特開平９−３３１３５４号公報に記載の電子メールシステムでは、メールデータを移動する際には、同時に多数のメール財産を移動する必要があり、このために一定時間内に処理しようとしてもメール財産に比例したコピーと削除が発生するため移動を終了するには相当な時間がかかるという課題がある。そこで、この解決するために、移動元と移動先で同じメール財産を保持する期間を設け、利用者は決まった日時までは移動元のみアクセスし、決まった日時以降は移動先のサーバにアクセスするというアクセス権の切り替え方式で解決を図っている。
【０００４】
【発明が解決しようとする課題】
しかしながら、従来の電子メールシステムでは、メールサーバ上でメールを管理する場合、電子メールをサーバから読むだけではなく、複数の状態を示すフラグを書き換えたり、管理するフォルダと呼ばれる論理的構造を変更するという操作がなされるため、コピー中に移動元とアクセスしておき、コピー後に移動先とアクセスするという手法のみではその間のメールサーバへの操作を正しく反映できない場合があった。
【０００５】
例えば、コピーを開始してから、コピーを終えたあとのメールデータの状態を示すフラグを変更したり、フォルダを移動したりした場合は、移動先のメールデータにその状態が反映されないため、決まった時刻以降に移動先にアクセスした場合に、以前の操作が無効になっているというような問題があり、このような時には一旦サービスを停止せざるをえないという問題があった。
【０００６】
この発明は、上記のような課題を解決するためになされたものであり、サーバ上でメールを管理する方式において、複数のメールデータ管理サーバに同一のユーザのメールがだぶって存在する場合を想定し、一次的に複数サーバを利用してあたかも１つのサーバであるかのように見せることにより、サーバの移行時、即ち、サーバ構成の変更を行ったり、所属するユーザの移動を行ったり、サーバのハードウエアをリプレースしたりするような場合にもサービスを停止させる必要のない電子メールシステムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
第１の発明は、ネットワークを介して送信されるユーザからのアクセス要求に基づいて処理を実行し、ユーザ毎のメールデータをそれぞれ管理する複数のメールデータ管理サーバと、
上記ユーザのユーザ情報を保存し、この保存されたユーザ情報の中に上記ユーザから送信されたユーザ情報が存在する時に、このユーザ情報に対応するユーザのメールデータを管理するメールデータ管理サーバの情報を取得するユーザ認証サーバと、
上記複数のメールデータ管理サーバとネットワークを介して接続され、上記ユーザから送信されたアクセス内容を取得し、この取得されたアクセス内容と上記ユーザ認証サーバで取得されたメールデータ管理サーバの情報とに基づいてアクセスするメールデータ管理サーバを特定し、この特定されたメールデータ管理サーバで実行された処理結果を上記ユーザに返信するフロントエンドサーバとを備えた電子メールシステムにおいて、
上記フロントエンドサーバは、上記複数のメールデータ管理サーバの稼動中に新たなメールデータ管理サーバをネットワークに接続し、この新たなメールデータ管理サーバに稼動中の上記複数のメールデータ管理サーバ中のユーザのメールデータをコピーし、自らが保持する管理テーブルに新たなメールデータ管理サーバが接続された情報を追加し、さらに上記ユーザ情報に新たなメールデータ管理サーバに稼動中の上記複数のメールデータ管理サーバ中のユーザのメールデータをコピーした情報を追加するメールサーバアクセス管理部を備えたものである。
【０００８】
第２の発明は、上記新たなメールデータ管理サーバにユーザのメールデータをコピー中に、ユーザによるアクセスがあった時には、コピー中のアクセス内容のプロトコルに基づいて新たなメールデータ管理サーバに上記ユーザのメールデータをコピーするメールサーバアクセス管理部を備えたものである。
【０００９】
第３の発明は、上記ユーザのメールデータの全てがコピーされた時には、ユーザに保管されているメールデータ管理サーバの情報をコピー前の通常の状態に戻し、上記ユーザ情報中のメールデータ管理サーバの情報を新たなメールデータ管理サーバの情報に変更するメールサーバアクセス管理部を備えたものである。
【００１０】
第４の発明は、上記ユーザ認証サーバで取得されたメールデータ管理サーバの情報が1つであるか否かを判断し、メールデータ管理サーバの情報が複数存在した時には、この複数のメールデータ管理サーバにアクセスし、上記複数のメールデータ管理サーバで実行された処理結果をアクセス要求に従って合成し、アクセス内容の履歴をとって上記ユーザに返信するメールサーバアクセス管理部を備えたものである。
【００１１】
第５の発明は、上記特定のメールデータ管理サーバで実行された処理結果に基づいてユーザのメールデータに対応するフォルダ名とこのフォルダ内のユニークなＩＤ情報とデータとにより構成される第１の対応表を各メールデータ管理サーバ毎に作成し、この作成した複数の第１の対応表の中から同一フォルダ名と同一ＩＤ情報のデータを検索し、この検索された同一データと同一フォルダ名と同一ＩＤ情報とが重なることがなく、かつそれぞれの情報が矛盾することのないフォルダ名とＩＤ情報とデータとにより構成される第２の対応表を作成することにより上記処理結果を合成するメールサーバアクセス管理部を備えたものである。
【００１２】
第６の発明は、ユーザからのアクセス要求のプロトコルを判断し、このプロトコルに基づいてメールデータ管理サーバを特定するメールサーバアクセス管理部を備えたものである。
【００１３】
【発明の実施の形態】
実施の形態１．
以下、この発明の実施の形態１を図を参照して説明する。
図１は、実施の形態１の電子メールシステムの構成図である。図１において、１はユーザや他のメールシステムと本システムとを接続するためのネットワークとしてのインターネットやイントラネット、２はユーザからのアクセス要求を監視し、アクセス要求が来たら順に決められた作業を行い、必要に応じて処理を振り分け、結果を合成するフロントエンドサーバ、３はアクセス要求をしたユーザが正しいユーザであることを認証するユーザ認証サーバ、４はユーザ認証サーバ３により使用されるユーザ情報が保存されたユーザデータベース（ユーザＤＢ）、５は振り分けられた処理を実行する１台以上の複数台からなるメールデータ管理サーバ、６はこれらのサーバを接続するネットワークである。
ここで、これら構成要素である各サーバの物理的機能は、１台のコンピュータ上で実現してもかまわない。
【００１４】
次に、上記電子メールシステムの各構成要素を動作するためのソフトウエア構成について説明する。
図１において、１１はユーザや他のメールシステムと本システムとが接続されたインターネットやイントラネット１からアクセス要求がされるフロントエンドサーバ２上にあって、ユーザや他のメールシステムからのアクセス要求を監視するアクセス監視部、１２はユーザ認証サーバ３上にあって、インターネットやイントラネットからアクセスがあり、該メールシステム宛のメールが送られた場合にユーザを認証するユーザ認証部、１３はユーザ認証サーバ３上にあって、ユーザ認証に利用するユーザＤＢ４を管理するユーザデータベース管理部（ユーザＤＢ管理部）、１４はフロンエンドサーバ２上にあって、ユーザからのアクセスの内容を解析するコマンド解析部、１５はフロントエンドサーバ２上にあって、コマンド解析の結果に基づいてメールデータにアクセスするとき、当該メールデータ管理サーバ５を特定し、振り分けたり、複数のメールデータ管理サーバ５に要求を出して結果をまとめたりするメールサーバアクセス管理部、１６はメールデータ管理サーバ５上にあって、実際にメールデータをユーザごとに管理する複数のメールデータ管理部である。
【００１５】
図２は実施の形態１の電子メールシステムの動作手順を示すフローチャート、図３は図３のフローチャートで説明するサーバ振り分け時の動作手順を示すフローチャート、図４は図３のフローチャートで説明する複数のメールデータ管理サーバ５への要求動作手順を示すフローチャート、図５は図３のフローチャートで説明する複数のメールデータ管理サーバ５の応答結果を合成する動作手順を示すフローチャート、図６はメールデータ管理サーバ５のデータコピーの動作手順を示すフローチャート、図７はメールデータ管理サーバ５のデータコピーの終了処理の動作手順を示すフローチャートである。
【００１６】
図２〜図７のフローチャートに従って動作について説明する。
まず、図２のフローチャートにおいて、アクセス監視部１１はユーザや他のメールサーバからのアクセス要求を監視する、即ちアクセス監視部１１はインターネットやイントラネット１１からのアクセス要求をアクセスポートごとに監視し、アクセスがあれば直ちに応答を相手に返して、ユーザ情報の取得を行う（ステップＳ１）。
【００１７】
次に、ユーザ認証部１２はアクセス監視部１１で取得されたユーザ情報に基づき、このユーザ情報に該当するユーザのユーザ情報がユーザＤＢ４に存在するか否かの判断をし、必要に応じて、ユーザのパスワードが正しいかどうかを判断し、問題がなければユーザのメールを管理する複数のメールデータ管理サーバ５の中で該当ユーザのメールを保持するメールデータ管理サーバ５の情報をユーザ認証サーバ３より獲得する（ステップＳ２）。
一方、ステップＳ２で正しいユーザでないと判断された場合は、その旨を相手側に通知し（ステップＳ６）、接続を切り終了する。
【００１８】
このメールデータ管理サーバ５に関する情報は、通常は１台のメールデータ管理サーバ５であり、ユーザごとには変わるものではないが、ユーザ数が多く１台のメールデータ管理サーバ５で管理しきれない場合は複数のメールデータ管理サーバ５にユーザを分散し、その場合にそれぞれのユーザごとに異なる情報となる。
また、メールデータ管理サーバ５に関する情報は、本来あるべきユーザのメールデータ管理サーバ５の情報と、新しくサーバを入れかえるために移行中であることを示すフラグ情報をつける場合がある。
【００１９】
次に、コマンド解析部１４がユーザからのアクセス内容を解析する（ステップＳ３）。解析の方法は、アクセス要求をしてきたポート番号により、対応するプロトコルを限定し、そのプロトコルでわからない内容の場合はエラーとして処理する。
プロトコルとしては、例えばＩＭＡＰ４プロトコルがコンピュータのネットワークのポート番号１４３に対応し、ＳＭＴＰというプロトコルがポート番号２５に対応したものがあり、それそれぞれインターネットの標準として利用されている。これらのプロトコルは一例であって、ポート番号、プロトコルとも限定するものではない。
ステップＳ３ではプロトコルごとに認識可能なコマンドがあり、入力されたデータに従って解析し、実際にどのようなコマンドであるかを判断する。
【００２０】
次に、メールサーバアクセス管理部１５は、ステップ３で解析されたアクセス内容とステップ２で取得されたメールデータ管理サーバ５の情報を基に、メールデータ管理サーバ５を特定して、アクセスし、要求に従った処理を行う（ステップＳ４、ステップＳ５）。
なお、ステップＳ５では、プロトコルの指定する内容をメールデータ管理サーバ５上のメールデータ管理部１６が実行するが、例えば本サーバはＳＭＴＰサーバであっても良いし、ＩＭＡＰ４サーバであってもよい。
また、ステップＳ３の解析とは、具体的には、送られてくる文字列を行の最初から読みスペースが来るまでの文字列をコマンドとして存在するかどうかを判断し、スペースのあとの文字列を引数と考える方法で行う。
【００２１】
次に、フロントエンドサーバ２上で動作するステップＳ４のサーバ振り分け処理の詳細な処理動作を図３を用いて説明する。
まず、メールサーバアクセス管理部１５はユーザや他のメールサーバからアクセス要求コマンドを受けると、ユーザ認証時に獲得したそのユーザに関するメールデータ管理サーバ５の情報を取り出す（ステップＳ１１）。
続いて、メールサーバアクセス管理部１５はこのメールデータ管理サーバ５の情報が１つのサーバであるかどうかを判断する（ステップＳ１２）。
【００２２】
ここで、通常の運用では、一人のユーザのメールデータを管理しているメールデータ管理サーバ５は１台であると考えられ、ステップＳ１５に進み、要求された内容をそのまま該当するメールデータ管理サーバ５に送り、メールデータ管理サーバ５で該当するＩＭＡＰ４コマンドやＳＭＴＰコマンドにしたがって処理が行われる。
その後、メールデータ管理サーバ５で得られた処理結果をそのまま何もせずにアクセス要求をしてきた経路に従って要求元であるユーザや他のメールサーバに返す（ステップＳ１６）。
【００２３】
ステップＳ１２でメールデータ管理サーバ５が複数存在した場合は、当該ユーザのデータを移行中であり、データが複数のメールデータ管理サーバ５にあることをしめしている。このような場合には、メールサーバアクセス管理部１５は複数のメールデータ管理サーバ５にアクセス要求を出し（ステップＳ１３）、複数のメールデータ管理サーバ５で処理がされ、得られた処理結果をアクセス要求に応じた処理結果に合成すると共に、どのようなアクセスをしたのかの履歴をとってユーザに返信する（ステップＳ１４）。
【００２４】
次に、ステップ１３の複数のメールデータ管理サーバ５に要求を出す処理の詳細な処理動作を図４を用いて説明する。
まず、利用しているプロトコルは何かを判断する（ステップＳ２１）。例えばＳＭＴＰであれば、外部のメールクライアントやサーバがメールの転送プロトコルに従ってメールを送りつけようとしている、即ち、新しいメールが送られてきているのであるから、複数のメールデータ管理サーバ５においては、古い方のメールデータ管理サーバ５から新しい方のメールデータ管理サーバ５にコピーしている場合において、新しい方のメールデータ管理サーバ５にのみアクセスし、新しい方のメールデータ管理サーバ５に要求を送信する（ステップＳ２４）。これにより、コピーを終えた後にメールが到着してメールを消失してしまうということを防ぐことができる
【００２５】
次に、メールデータ管理サーバ５からの応答はそのまま要求元に返信する（ステップＳ２５）。
また、ＩＭＡＰ４や、ＰＯＰ３といった保存してあるメールデータにアクセスするためのプロトコルである場合には古いメールデータ管理サーバ５にしかないメールデータと新しいメールデータ管理サーバ５にあるメールデータにアクセスする必要があるため新旧両方のメールデータ管理サーバ５にアクセス要求を出す（ステップＳ２２）。
これはコピー中にはコピーが完了するまでは両方のメールデータ管理サーバ５上にメールが存在し、新着メールは新しいサーバにのみ存在することになるからであり、コピーを完了していない限りは新しいサーバにもすべてのメールが存在することを保証できないからである。
【００２６】
続いて、各メールデータ管理サーバ５がそれぞれの要求に応じて処理を行い、この処理結果を返信する（ステップＳ２３）。例えば、この要求がＩＭＡＰ４のプロトコルで、標準の受信箱であるｉｎｂｏｘというフォルダの中身の一覧を要求するものであれば、それぞれのメールデータ管理サーバ５において標準の受信箱であるｉｎｂｏｘというフォルダの中身の一覧を行うという処理を行う。
【００２７】
次に、複数のメールデータ管理サーバ５から返される図３のステップＳ１４で得られた結果を、フロントエンドサーバ２上のメールサーバアクセス管理部１５で合成するための処理動作を図５を用いて説明する。
まず、各メールデータ管理サーバ５からの応答を集める（ステップＳ３１）。この応答は、例えば要求が成功したか、失敗したかの情報とともに、メールデータを示すフォルダ内でユニークなＩＤであるＵＩＤ情報やメールデータそのものである。ここで、メールデータを示すＵＩＤ情報は、例えば、メールデータ管理サーバ５の一例であるＩＭＡＰ４サーバにおいてはメールを管理するためのフォルダによって一意に決まる数字であり、複数のサーバから送られる同じＵＩＤコード、同じフォルダ情報を持つメールデータは同一のメールデータであればこれは同一のメールデータがコピーされているだけであることを意味する
【００２８】
次に、ひとつのメールデータ管理サーバ５からの応答に対して、フォルダ名とＵＩＤと実際のデータとの対応表を作成することを繰り返し、各メールデータ管理サーバ５ごとにこの対応表を作成する（ステップＳ３２）。
続いて、ステップＳ３２で作成した複数の表を比較し、同じフォルダ名、同じＵＩＤの情報を持つデータを見つける（ステップＳ３３）。
【００２９】
次に、同一のメールデータであるにもかかわらず、フラグ情報などが異なる場合が想定されるが、この場合はコピーする前の古いメールデータ管理サーバ５の内容を優先する（ステップＳ３４）。この理由は、後述の図６で説明するように、メールデータ管理サーバ５のデータコピーの動作において、メールデータ管理サーバ５の情報に矛盾する点がある場合は、コピーする前の古いメールデータ管理サーバ５にのみ操作がなされ、新しいメールデータ管理サーバ５には操作がなされていない場合に限られるからである。
次に、同一のメールデータの重複を省き、かつそれぞれに矛盾を生じない即ち違いの無いフォルダ名とＵＩＤと実際のデータの対応表を作成する（ステップＳ３５）。
さらに、この対応表を基に応答を返すことにより合成した結果を返す（ステップＳ３６）。
【００３０】
次に、メールデータ管理サーバ５のメールデータのコピー処理動作を図６を用いて説明する。
このコピーは、例えば、ユーザのディスク容量が満杯に近い状態になったとか、性能の向上のためにマシンをリプレースする場合や、新しいマシンにユーザの情報を移動させる場合に、サービスを停止せずにユーザの情報をコピーするために行うものである。
まず、新たなメールデータ管理サーバを稼動中の系に物理的に接続し、ネットワーク接続する。これにより、新たなメールデータ管理サーバの接続の追加を行うことができる（ステップＳ４１）。
【００３１】
次に、メールサーバアクセス管理部１５の設定変更を行う（ステップＳ４２）。例えばTCP/IPの接続ならIPアドレスを付与し、LANケーブルで接続の上で、メールサーバアクセス管理部１５のテーブルに、新たなメールデータ管理サーバ５を付加したという情報とそのアドレスを書きこむことによりメールデータ管理サーバ５の付加を行うことができる。この時点では、各ユーザに関しては移動状態になっていないため、すべてのアクセス要求は古いメールデータ管理サーバ５に対して処理がされている。
【００３２】
次に、ユーザの選択、コピー状態の設定を行う（ステップＳ４３）。
ここでは、例えば、ユーザＤＢ４より順番に一人ずつユーザの一人を選択する。ＩＭＡＰ４でログイン中でないユーザから選択する方が、以下のステップで説明する不整合を生じてループする可能性が少ない。
【００３３】
続いて、ステップＳ４３で選択されたユーザのユーザ情報に以下のような情報を入れる。即ち、選択されたユーザのユーザ情報に、これまで稼動していたメールデータ管理サーバ５のメールデータを新たに接続したメールデータ管理サーバにコピーを開始したことの情報と、どのメールデータ管理サーバ（これまで使用していた稼動中のメールデータ管理サーバ）からどのメールデータ管理サーバ（新たなメールデータ管理サーバ）にメールデータのコピーをしているか等の情報を入れる。この動作は、全てのユーザのユーザ情報に関して行われる。
なお、この情報は、図３のステップＳ１２でサーバは１台かどうかを確認しているが、この確認に利用する。
【００３４】
次に、該当ユーザのフォルダ構造を見た上で、フォルダ単位で新しいメールデータ管理サーバ５にフォルダの情報をコピーする（ステップＳ４４）。
続いて、フォルダのコピー中に、そのフォルダにユーザがアクセスしたかどうかを調べる（ステップＳ４５）。
これは、図２のステップＳ１４でアクセス要求に応じて処理した場合に履歴をとっているが、この履歴から判断することができる。
【００３５】
ステップＳ４５で何も変更していなければ、そのフォルダに関しては終了し、後で説明する図７の処理に移る。
一方、ステップＳ４５で、フォルダコピー中に、そのフォルダにユーザがアクセスした場合には、コピー中のアクセス内容が、例えば、ＩＭＡＰ４のプロトコルであったかどうかを判断する（ステップＳ４６）。ここで、ＩＭＡＰ４のプロトコルでなければ不整合は生じないため、後述する図７の処理に移る。なお、ここでは、ＩＭＡＰ４のプロトコルでの例について説明したが、これは、メールデータ管理サーバ５上の状態を変更（例えば、メールデータの削除やフラグの変更などの状態の変更）をするプロトコルであったか否かを判断するものであり、必ずしもここでの例で示すＩＭＡＰ４のプロトコルに限るものではない。
【００３６】
また、ステップＳ４６でＩＭＡＰ４のプロトコルであったと判断された場合は、実行履歴を解析し、変更を加えた対象のフォルダおよびメールデータをピックアップし、テーブルを作成する（ステップＳ４７）。
【００３７】
このテーブルに従って、フォルダに関しては、新旧サーバで、存在するかどうかを確認し、不整合があったかどうかの情報をテーブルに設定する。例えば、このフォルダ上にＩＭＡＰ４のプロトコルにおける購読情報などを持っているならば、この情報の相違も新旧サーバで確認し、不整合があったかどうかの情報をテーブルに設定する。
このテーブルに従って、メールデータに関しては存在するかどうか、フラグなどのステータス情報に変更があるかどうかを調べ、不整合があったかどうかの情報をテーブルに設定する。
【００３８】
次に、このテーブルを見て、不整合がひとつもなければ、後述する図７の処理に移る（ステップＳ４８）。
また、不整合があった場合は、不整合のあった情報を旧メールデータ管理サーバから新メールデータ管理サーバにコピーし、不整合をなくし、再びそのコピーの調査の間にユーザがアクセスしてないかどうかを調べるためステップＳ４５に移動し、同一の処理を繰り返す（ステップＳ４９）。
なお、ここで、常にユーザがＩＭＡＰ４でログインし、状態の変更をしつづけるとこのループを抜けない場合が理論的にはありえるが、実質上、永久に使い続けることはありえないと考えて良い。
【００３９】
次に、メールデータ管理サーバ５のデータコピーの終了処理動作を図７を用いて説明する。
まず、図６で説明したコピー処理が全フォルダに関して完了したかどうかを調べる（ステップＳ５１）。ここで、全フォルダに関して完了していなければ、ステップＳ５５で残りのフォルダに関しても、図６におけるステップＳ４４以降の処理を実行する。
一方、全フォルダに関して完了していれば、ユーザに保管されているメールデータ管理サーバ５の情報を元に戻し、即ちコピーし終わった通常の状態に戻し、メールデータ管理サーバ５の情報だけを新しいメールデータ管理サーバ５に変更する、即ちユーザ情報の中にあるメールデータ管理サーバ５の情報を元の旧メールデータ管理サーバから新しいメールデータ管理サーバに変更する（ステップＳ５２）。
【００４０】
次に、全ユーザに関して実行が完了したかどうかを調査し（ステップＳ５３）、完了していなければ、ステップＳ５６で残りのユーザに関しても図６におけるステップＳ４３以降の処理を実行する。また、全ユーザに関して実行が終了していれば該当メールサーバのコピーは完了しているので、旧メールデータ管理サーバ５を切り離して（ステップＳ５４）、処理を完了する。
なお、この処理は、例えば、１台のメールサーバでメールシステムを運用していたが、処理容量の増大で二台のサーバに分散したい場合にも同様の方法で実行できる。
また、ユーザ情報にはアクセスするべきサーバ名情報があるので、サーバの分散が可能である。
【００４１】
このように、図６におけるコピーの際の全ユーザに関して行う部分を、指定したユーザの全員に対して行うという処理にするだけで、一部ユーザのみを新メールデータ管理サーバにコピーし、分散運用に移行することができる。
【００４２】
以上のように本実施例によれば、メールシステムとして運用中のシステムでメールサーバ部分のバージョンアップやハードウエアの入れ替え、容量不足による複数サーバへの切り替えなどをサービスを停止することなく実行できるという効果がある。
また、サービスを停止しないことにより、サービス停止中に処理が多くたまり、サービス再開直後にメールデータへのアクセスが集中することによる障害の発生も避けることができるという効果がある。
【００４３】
【効果】
この発明は、以上説明したように構成されているので、以下に示すような効果を奏する。
【００４４】
この発明は、複数のメールデータ管理サーバの稼動中に新たなメールデータ管理サーバをネットワークに接続し、この新たなメールデータ管理サーバに稼動中の複数のメールデータ管理サーバ中のユーザのメールデータをフォルダ単位でコピーし、このコピーした情報をフロントエンドサーバ、ユーザ認証サーバが持つことにより、メールシステムとして運用中のシステムでメールサーバ部分（メールデータ管理サーバ）のバージョンアップやハードウエアの入れ替え、容量不足による複数のメールサーバへの切り替えなどをサービスを停止することなく実行できるという効果がある。
また、サービスを停止しないことにより、サービス停止中に処理が多くたまり、サービス再開直後にメールデータへのアクセスが集中することによる障害の発生も避けることができるという効果がある。
【図面の簡単な説明】
【図１】  実施の形態１の電子メールシステムの構成図。
【図２】  実施の形態１における電子メールシステムの動作手順を示すフローチャート。
【図３】  実施の形態１におけるサーバ振り分け時の動作手順を示すフローチャート。
【図４】  実施の形態１における複数のメールデータ管理サーバ５への要求動作手順を示すフローチャート。
【図５】  実施の形態１における複数のメールデータ管理サーバ５の応答結果を合成する動作手順を示すフローチャート。
【図６】  実施の形態１におけるメールデータ管理サーバ５のデータコピーの動作手順を示すフローチャート。
【図７】  実施の形態１におけるメールデータ管理サーバ５のデータコピーの終了処理の動作手順を示すフローチャート。
【符号の説明】
１  インターネットやイントラネット、２  フロントエンドサーバ、３  ユーザ認証サーバ、４  ユーザデータベース、５  メールデータ管理サーバ、６  ネットワーク、１１  アクセス監視部、１２  ユーザ認証部、１３  ユーザＤＢ管理部、１４  コマンド解析部、１５  メールサーバアクセス管理部、１６  複数のメールデータ管理部。
【図１】
0003807240.tif 000002
【図２】
0003807240.tif 000003
【図３】
0003807240.tif 000004
【図４】
0003807240.tif 000005
【図５】
0003807240.tif 000006
【図６】
0003807240.tif 000007
【図７】
0003807240.tif 000008