Nothing Special   »   [go: up one dir, main page]

JP5193977B2 - Event notification function providing system - Google Patents

Event notification function providing system Download PDF

Info

Publication number
JP5193977B2
JP5193977B2 JP2009213278A JP2009213278A JP5193977B2 JP 5193977 B2 JP5193977 B2 JP 5193977B2 JP 2009213278 A JP2009213278 A JP 2009213278A JP 2009213278 A JP2009213278 A JP 2009213278A JP 5193977 B2 JP5193977 B2 JP 5193977B2
Authority
JP
Japan
Prior art keywords
event
server
user
occurrence
identifier
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.)
Expired - Fee Related
Application number
JP2009213278A
Other languages
Japanese (ja)
Other versions
JP2011065245A (en
Inventor
庸市 川▲崎▼
啓介 ▲高▼橋
将志 豊田
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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2009213278A priority Critical patent/JP5193977B2/en
Publication of JP2011065245A publication Critical patent/JP2011065245A/en
Application granted granted Critical
Publication of JP5193977B2 publication Critical patent/JP5193977B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Description

本発明は、ウェブ上のアプリケーション間でイベントの発生を通知する技術に関する。   The present invention relates to a technique for notifying the occurrence of an event between applications on the web.

近年、インターネットにおいては、例えばソーシャル・ネットワーキング・サービス(以下、SNS)などのように、ユーザ個人が記事や写真や動画といったコンテンツを投稿し、他ユーザに公開することができる場を構築するアプリケーションをウェブ上で提供するサービスが普及している。   In recent years, in the Internet, for example, social networking services (hereinafter referred to as SNS), an application that builds a place where users can post content such as articles, photos, and videos and make them available to other users. Services provided on the web are widespread.

これらのサービスは、一般にCGM(Consumer Generated Media)とも呼ばれ、コンテンツを作成したユーザから他ユーザへの情報発信のツールとしてだけでなく、ユーザ間のコミュニケーションのツールとしても利用されている。たとえば、或るユーザが投稿した日記に対して、その日記を閲覧した他ユーザが個々にコメントを付記することで、その日記を媒介としてユーザ間で意見交換が行われる、というものである。   These services are generally called CGM (Consumer Generated Media), and are used not only as a tool for transmitting information from a user who created content to other users, but also as a tool for communication between users. For example, for a diary posted by a certain user, another user who has browsed the diary adds comments individually so that opinions can be exchanged between the users via the diary.

そして、最近、上記のようなサービスでは、或るコンテンツに対してユーザによりコメントが付記された場合に、そのコンテンツを投稿したユーザに対して、新着のコメントがあった旨を通知するようにしたものが提案されている(例えば、特許文献1を参照。)。このような通知は、そのときサービスの利用中であればクライアントのブラウザにより表示されているウェブページに差し込むことで行われる。   And recently, in the service as described above, when a comment is added to a certain content by a user, the user who posted the content is notified that there is a new comment. The thing is proposed (for example, refer patent document 1). Such notification is made by inserting the web page displayed by the browser of the client if the service is being used at that time.

上記のような従来のサービスでは、扱われるコンテンツの数は膨大であり、それに伴い、発生するイベントは大量となる。そのため、上記のようなサービスを提供するサーバは、大量に発生するイベントを処理するべく、そのような負荷に耐えうる仕組みを構築することが求められている。   In the conventional service as described above, the number of contents to be handled is enormous, and accordingly, a large number of events occur. For this reason, a server that provides a service as described above is required to construct a mechanism that can withstand such a load in order to process a large number of events.

このような大量のイベントの発生を処理する手法に、例えば、同じ機能を持つサーバを複数台設け、特定のサーバが過負荷にならないように、負荷の低いものから処理を振り分けるようにしたものが提案されている(例えば、特許文献2を参照。)。   A method for handling such a large number of event occurrences, for example, is to provide multiple servers with the same function, and to distribute processing from those with low load so that a specific server is not overloaded. It has been proposed (see, for example, Patent Document 2).

特開2007−328537号公報JP 2007-328537 A 特開2001−101134号公報JP 2001-101134 A

しかし、上記従来の方法では、負荷が軽いサーバから順に処理が振り分けられることから、或るコンテンツについて連続的に発生した複数のイベントがそれぞれ別のサーバに振り分けられる可能性もある。このような場合に、仮に、振り分けられた複数のサーバの1つに障害が発生すると、時系列的に前に位置するイベントの発生を後に位置するイベントの発生が追い越してしまうという具合に、イベントの発生が順序通りに蓄積されないおそれがあった。つまり、蓄積されるイベントの発生順序が保証できず、ユーザに対してもイベントの発生順序が正しく通知されないため、イベントを通知する機能としての信頼性に欠けるという問題があった。   However, in the above-described conventional method, processing is distributed in order from the server with the lightest load, so there is a possibility that a plurality of events that occur continuously for a certain content are distributed to different servers. In such a case, if a failure occurs in one of a plurality of assigned servers, the occurrence of an event positioned after the event that is positioned in front of the event is overtaken by the event in time sequence. There was a possibility that the occurrence of the occurrence was not accumulated in order. In other words, the order of occurrence of the accumulated events cannot be guaranteed, and the order of event occurrence is not correctly notified to the user, so that there is a problem that reliability as a function for notifying the event is lacking.

そこで、本発明は、イベントの発生順序を確保することができるイベント通知機能提供システムを提供することを目的とする。   Therefore, an object of the present invention is to provide an event notification function providing system capable of ensuring the order of occurrence of events.

上記の課題を解決するため、本発明は以下のような態様を要旨とする。   In order to solve the above problems, the present invention has the following aspects.

(1) ウェブ上のアプリケーションで任意に定義されたイベントの発生順序を確保するためのサーバ構成を有し、1のユーザに対してサービスを提供する各アプリケーション間でイベントの発生を通知するイベント通知機能提供システムであって、
前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する第1サーバと、
前記第1サーバからの依頼に応じ、前記イベントの発生を前記ユーザ識別子に関連付けて記憶手段に登録する登録処理を行複数の第2サーバと、を備え、
前記第1サーバは、
前記ユーザ識別子に応じて、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定し、当該依頼先の第2サーバが登録処理を実行できない場合に、前記複数の第2サーバ間で互いに組となる第2サーバが予め定められているテーブルを参照して、当該組に含まれる他の第2サーバに対して、ユーザ単位での前記イベントの発生の登録処理を依頼することを特徴とするイベント通知機能提供システム。
(1) An event notification that has a server configuration for ensuring the occurrence order of events arbitrarily defined by applications on the web, and notifies the occurrence of an event between applications that provide services to one user A function providing system,
A first server that receives an occurrence of an event transmitted from a service providing server that manages each application together with a user identifier;
The response to the request from the first server, and a plurality of second server cormorants line registration process for registering in the storage means in association with the user identifier the occurrence of the event,
The first server is
In response to the user identifier, the second server is a request destination of the registration process of occurrence of the event, uniquely determined per user, if the second server of the request destination is unable to perform the registration processing, the plurality the second refers to the table to which the second server to which the set to one another is predetermined between servers, to the other second server included in the group, the registration process of occurrence of the event on the user units An event notification function providing system characterized by requesting.

(1)によれば、イベントの発生の登録処理を分担して行う複数のサーバの中から、登録処理を依頼するサーバをユーザ識別子に応じて一意に決定することで、同じユーザに関するイベントの発生の登録処理を同一のサーバにより実行させることができる。加えて、複数のサーバのそれぞれに組となるサーバを予め割り当てておき、上記一意に決定したサーバに障害などが発生したときには、組となる他方のサーバに登録処理の依頼先を切り替えるようにした。これにより、同じユーザに関するイベントの発生順序を確保することができるようになる。   According to (1), an event related to the same user can be generated by uniquely determining a server that requests the registration process from a plurality of servers that share the registration process for generating the event according to the user identifier. The registration process can be executed by the same server. In addition, a group server is assigned to each of a plurality of servers in advance, and when a failure occurs in the uniquely determined server, the registration processing request destination is switched to the other server in the group. . Thereby, it becomes possible to secure the order of occurrence of events related to the same user.

(2) 前記複数の第2サーバのそれぞれには識別子としての数値が予め割り当てられるものであり、
前記第1サーバは、
前記ユーザ識別子を数値化情報に変換し、その数値化情報に対して所定の演算処理を行った結果得られた数値から、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定することを特徴とする(1)のイベント通知機能提供システム。
(2) A numerical value as an identifier is assigned in advance to each of the plurality of second servers,
The first server is
Wherein a user identifier is converted into digitized information, from the value obtained as a result of performing the predetermined operation processing on the digitized information, the second server is a request destination of the registration process of occurrence of the event, the user The event notification function providing system according to (1), wherein the event notification function is uniquely determined for each unit .

(2)によれば、ユーザ識別子と登録処理を行うサーバとを予め対応付けたテーブルなどを準備して参照する必要がないため、処理の迅速化を図りつつ、サーバの増設などにも柔軟に対応できる。   According to (2), since it is not necessary to prepare and refer to a table in which user identifiers and servers that perform registration processing are associated in advance, it is possible to increase the number of servers while speeding up the processing. Yes.

(3) ウェブ上のアプリケーションで任意に定義されたイベントの発生順序を確保し1のユーザに対してサービスを提供する各アプリケーション間でイベントの発生を通知するイベント通知機能提供システムの動作方法であって、
第1サーバが、前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する工程と、
複数の第2サーバが、前記第1サーバからの依頼に応じ、前記イベントの発生を前記ユーザ識別子に関連付けて記憶手段に登録する登録処理を行う工程と、
前記第1サーバが、前記ユーザ識別子に応じて、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定し、当該依頼先の第2サーバが登録処理を実行できない場合に、前記複数の第2サーバ間で互いに組となる第2サーバが予め定められているテーブルを参照して、当該組に含まれる他の第2サーバに対して、ユーザ単位での前記イベントの発生の登録処理を依頼する工程と、を含むことを特徴とするイベント通知機能提供システムの動作方法。
(3) Hoshi sure the order of occurrence of arbitrarily defined event in the application on the web, the operation method of the event notification function provides a system for notifying the occurrence of an event among the applications that provide services for one user Because
First server, the occurrence of an event sent from the service providing server that manages the respective application, comprising: receiving with the user identifier,
A plurality of second servers, and the response to the request from the first server, cormorants line registration processing to register the occurrence of the event in the storage means in association with the user identifier step,
The first server in response to the user identifier, the second server is a request destination of the registration process of occurrence of the event, uniquely determined per user, the second server of the request destination executes the registration process In the case where it is not possible, referring to a table in which the second servers that are paired with each other among the plurality of second servers are determined in advance, the other servers included in the pair are compared with each other on the user basis. And a requesting process for registering the occurrence of an event. An operation method of an event notification function providing system, comprising:

(3)によれば、(1)と同様の効果を奏する。   According to (3), the same effect as in (1) is obtained.

本発明によれば、各アプリケーション間で任意に定義されたイベントの発生を通知するイベント通知機能提供システムにおいて、イベントの発生順序を確保することができる。   According to the present invention, in the event notification function providing system that notifies the occurrence of an event arbitrarily defined between applications, the order of event occurrence can be ensured.

実施形態にかかるシステム全体の構成例を示す図である。It is a figure which shows the structural example of the whole system concerning embodiment. 実施形態にかかるイベント通知機能提供システムの構成例を示す図である。It is a figure which shows the structural example of the event notification function provision system concerning embodiment. イベントテーブルのデータ構造例を示す図である。It is a figure which shows the example of a data structure of an event table. コンテンツテーブルのデータ構造例を示す図である。It is a figure which shows the example of a data structure of a content table. キャッシュテーブルのデータ構造例を示す図である。It is a figure which shows the data structure example of a cache table. イベント定義データ共有リストのデータ構造例を示す図である。It is a figure which shows the example of a data structure of an event definition data sharing list. 実施形態の処理例を示すシーケンス図(イベント登録)である。It is a sequence diagram (event registration) showing a processing example of an embodiment. 実施形態の処理例を示すシーケンス図(イベント参照:サマリー)である。It is a sequence diagram (event reference: summary) showing a processing example of an embodiment. イベントの通知に関する画面例(サマリー)を示す図である。It is a figure which shows the example of a screen (summary) regarding the notification of an event. 実施形態の処理例を示すシーケンス図(イベント参照:イベント一覧)である。It is a sequence diagram (event reference: event list) showing a processing example of an embodiment. イベントの通知に関する画面例(イベント一覧)を示す図である。It is a figure which shows the example of a screen (event list) regarding the notification of an event. 実施形態の処理例を示すシーケンス図(イベント消去)である。It is a sequence diagram (event deletion) showing a processing example of an embodiment. イベント通知機能提供システムの第2サーバの詳細な構成例を示す図である。It is a figure which shows the detailed structural example of the 2nd server of an event notification function provision system. farmID対応付けテーブルのデータ構造例を示す図である。It is a figure which shows the example of a data structure of a farmID matching table. 実施形態の処理例を示すシーケンス図(イベント登録)である。It is a sequence diagram (event registration) showing a processing example of an embodiment. 実施形態の処理例を示すフローチャート図(依頼先サーバ決定処理)である。It is a flowchart figure (request destination server determination process) which shows the process example of embodiment.

以下、図面を参照して、本発明を実施するための形態(以下、実施形態)について説明する。   DESCRIPTION OF EMBODIMENTS Hereinafter, modes for carrying out the present invention (hereinafter referred to as embodiments) will be described with reference to the drawings.

<構成>
図1を参照して、本実施形態に係るイベント通知機能提供システム(ノーティスプラットフォーム)3を含むシステム全体の構成について説明する。
<Configuration>
With reference to FIG. 1, the structure of the whole system containing the event notification function provision system (notice platform) 3 which concerns on this embodiment is demonstrated.

イベント通知機能提供システム3は、複数のサービス提供サーバ5(5a、…、5x)とネットワークNを介して接続されている。また、サービス提供サーバ5は、複数のユーザ端末7(7a、…、7x)とネットワークを介して接続されている。   The event notification function providing system 3 is connected to a plurality of service providing servers 5 (5a,..., 5x) via a network N. The service providing server 5 is connected to a plurality of user terminals 7 (7a,..., 7x) via a network.

イベント通知機能提供システム3、サービス提供サーバ5及びユーザ端末7は、CPU等の制御装置、メモリやHDD等の記憶装置、通信I/F等の通信装置といったハードウェア資源を有するコンピュータ(単一或いは複数)により構成される。ユーザ端末7は、ユーザが利用するPC(Personal Computer)や携帯電話端末等であり、上記のようなハードウェア資源に加え、キーボタンやタッチパネル等の入力装置、液晶ディスプレイ等の出力装置を備える。   The event notification function providing system 3, the service providing server 5, and the user terminal 7 are a computer having a hardware resource such as a control device such as a CPU, a storage device such as a memory or HDD, or a communication device such as a communication I / F (single or A plurality). The user terminal 7 is a PC (Personal Computer), a mobile phone terminal, or the like used by the user, and includes an input device such as a key button or a touch panel and an output device such as a liquid crystal display in addition to the hardware resources described above.

(ユーザ端末7)
ユーザ端末7は、一般的なブラウザを備えている。ブラウザは、インターネットの標準プロトコルであるHTTP(Hyper Text Transfer Protocol)等に従い、HTML(Hyper Text Markup Language)等の言語で記述されたページデータの要求、取得及び表示、フォームデータの送信等を行う機能を有している。ユーザは、ユーザ端末7のブラウザを通じて、サービス提供サーバ5により提供されるアプリケーションを利用する。
(User terminal 7)
The user terminal 7 includes a general browser. The browser is a function for requesting, acquiring and displaying page data described in a language such as HTML (Hyper Text Markup Language), transmitting form data, etc., in accordance with HTTP (Hyper Text Transfer Protocol), which is a standard protocol of the Internet. have. The user uses an application provided by the service providing server 5 through the browser of the user terminal 7.

(サービス提供サーバ5)
複数のサービス提供サーバ5は、それぞれ個別のアプリケーション(以下、AP)をユーザ端末7に対して提供し、ウェブ上のサービスを実現する。ウェブ上のサービスの例は、ユーザが記事や写真や動画等といったコンテンツを閲覧したり、ユーザ白身がコンテンツを投稿して他のユーザに公開したり、商取引を行う場を提供するサービスであり、ニュースサービス、SNS(ソーシャルネットワーキングサービス)、オークションサービス、地図情報サービス等が該当する。APは、ユーザ端末7に対して、コンテンツの投稿やコンテンツに対する何らかのアクションの入力や、コンテンツの検索、閲覧等をユーザが行うための各種機能を提供する。
(Service providing server 5)
The plurality of service providing servers 5 provide individual applications (hereinafter referred to as APs) to the user terminal 7 to realize services on the web. Examples of services on the web are services that provide a place for users to browse content such as articles, photos, videos, etc., or for white users to post content and publish it to other users, or to conduct business transactions. News services, SNS (social networking services), auction services, map information services, and the like are applicable. The AP provides the user terminal 7 with various functions for the user to perform content posting, input of some action on the content, content search, browsing, and the like.

本実施形態では、各APにおいて任意に定義されるものであって、ユーザに関わりのあるコンテンツをターゲットとした何らかのアクションを示す情報を「イベント」という。   In this embodiment, information that is arbitrarily defined in each AP and that indicates some action targeting content related to the user is referred to as an “event”.

例えば、オークションサービスであれば、一のユーザ(ユーザAとする)が出品したアイテムに対して他のユーザ(ユーザBやユーザCとする)により入札が行われた場合、ユーザAから見たユーザBやユーザCの入札行為を「イベント」と定義することができる。   For example, in the case of an auction service, a user viewed from user A when an item submitted by one user (user A) is placed by another user (user B or user C). The bid action of B or user C can be defined as an “event”.

また、別の例では、オークションサービスにおいて、一のユーザ(ユーザBとする)が或るアイテムに対して入札を行い、その入札を行ったアイテムに対してさらに他のユーザ(ユーザCとする)により入札が行われた場合、ユーザBから見たユーザCの入札行為を「イベント」と定義することができる。   In another example, in an auction service, one user (referred to as user B) bids on an item, and another user (referred to as user C) for the item on which the bid is placed. When bidding is performed by the user B, the bidding action of the user C viewed from the user B can be defined as an “event”.

また、別の例では、SNSにおいて、一のユーザ(ユーザXとする)を他のユーザ(ユーザYとする)が友だちに登録した場合、ユーザXから見たユーザYの登録行為を「イベント」と定義することができる。   In another example, in SNS, when one user (referred to as user X) is registered as a friend by another user (referred to as user Y), the registration act of user Y viewed from user X is “event”. Can be defined as

さらに、別の例では、オークションサービスにおいて、一のユーザ(ユーザZとする)の出品物が誰にも落札されないで終了した場合、ユーザZから見た、その終了したという結果を「イベント」と定義することができる。この例でいうアクションは、ユーザが直接的に生じさせたものではないが、このようにAPの動作上で自動的に発生した出来事もアクションに含めることができる。   In another example, in an auction service, when an exhibit of one user (referred to as user Z) ends without being awarded to anyone, the result of the end as viewed from the user Z is referred to as “event”. Can be defined. The actions in this example are not directly generated by the user, but events that have automatically occurred in the operation of the AP as described above can be included in the actions.

なお、本実施形態では、一のサービス提供サーバ5が一のAPを管理する構成について説明するが、本発明はこれに限らず、一のサービス提供サーバ5が複数のAPを管理する構成や、一のAPを複数のサービス提供サーバ5が管理する構成を採用することができる。   In this embodiment, a configuration in which one service providing server 5 manages one AP is described. However, the present invention is not limited to this, and a configuration in which one service providing server 5 manages a plurality of APs, A configuration in which a plurality of service providing servers 5 manage one AP can be employed.

サービス提供サーバ5は、一のAPにつき、入力受付手段51と、入力情報処理手段52と、イベント送信手段53と、イベント参照手段54と、イベント受信手段55と、ページデータ提供手段56と、を備えている。   The service providing server 5 includes, for each AP, an input receiving unit 51, an input information processing unit 52, an event transmitting unit 53, an event referring unit 54, an event receiving unit 55, and a page data providing unit 56. I have.

入力受付手段51は、ユーザ端末7のブラウザから、マウスクリック、キーボード入力に基づいたユーザの各種リクエスト及び入力情報を受信する機能を有する。   The input receiving unit 51 has a function of receiving various requests and input information of the user based on mouse clicks and keyboard inputs from the browser of the user terminal 7.

入力情報処理手段52は、入力受付手段51が受信したユーザのリクエスト及び入力情報の内容に応じて、投稿されたコンテンツやコンテンツに対するアクションのデータベースヘの登録、検索、参照等の各種処理を行う機能を有する。また、入力情報処理手段52は、コンテンツに対するアクションを登録する際に、イベントの定義付けをする。例えば、オークションサービスにおいて、ユーザの入力情報の内容が「出品物1への1つ目の入札」であった場合、出品物1の識別子(item_0001)に、1つ目の入札を示す識別子(event_0001)を割り当てる。   The input information processing unit 52 has a function of performing various processes such as registration, search, and reference of posted content and actions to the database in accordance with the user request received by the input receiving unit 51 and the content of the input information. Have The input information processing means 52 defines an event when registering an action for the content. For example, in the auction service, when the content of the user input information is “first bid for the exhibit 1”, the identifier (event_0001) indicating the first bid is displayed as the identifier (item_0001) of the exhibit 1 ).

イベント送信手段53は、入力情報処理手段52がコンテンツに対するアクションをイベントとして定義した場合に、イベントの発生メッセージをイベント通知機能提供システム3に対して送信する機能を有する。   The event transmission unit 53 has a function of transmitting an event occurrence message to the event notification function providing system 3 when the input information processing unit 52 defines an action for content as an event.

イベント参照手段54は、入力受付手段51が受信したユーザのリクエストに応じて、イベント通知機能提供システム3に対してイベントの参照リクエストを送信する機能を有する。   The event reference unit 54 has a function of transmitting an event reference request to the event notification function providing system 3 in response to a user request received by the input receiving unit 51.

イベント受信手段55は、イベント通知機能提供システム3から送信された、各APにおけるイベントの発生状況を受信する機能を有する。   The event receiving means 55 has a function of receiving an event occurrence state in each AP transmitted from the event notification function providing system 3.

ページデータ提供手段56は、ページデータを作成し、ユーザ端末7のブラウザに対して送信する機能を有する。例えば、イベント受信手段55が受信した、各APにおけるイベントの発生状況に基づいてページデータを作成し、ユーザ端末7のブラウザに対して送信し、ユーザに対してイベントの発生を通知する。   The page data providing unit 56 has a function of creating page data and transmitting it to the browser of the user terminal 7. For example, page data is created based on the event occurrence status in each AP received by the event receiving means 55, transmitted to the browser of the user terminal 7, and the occurrence of the event is notified to the user.

イベント送信手段53、イベント参照手段54及びイベント受信手段55は、イベント通知機能提供システム3の管理者側から提供されたAPI(Application Program Interface)をAPに組み込むことで実現される機能である。各サービス提供サーバ5が管理するAPとイベント通知機能提供システム3との間の通信は任意の形式とすることができる。   The event transmission unit 53, the event reference unit 54, and the event reception unit 55 are functions realized by incorporating an API (Application Program Interface) provided from the administrator side of the event notification function providing system 3 into the AP. Communication between the AP managed by each service providing server 5 and the event notification function providing system 3 can be in any form.

(イベント通知機能提供システム3)
一方、イベント通知機能提供システム3は、複数のAPのそれぞれにおいて任意に定義されているイベントの発生を収集し、一括管理し、各APに対して通知する機能を有する。イベント通知機能提供システム3は、イベント受信手段31と、イベント登録手段32と、イベント読出手段33と、イベント通知手段34と、イベント消去手段35と、イベント記憶手段36と、を備えている。
(Event notification function providing system 3)
On the other hand, the event notification function providing system 3 has a function of collecting occurrences of events arbitrarily defined in each of a plurality of APs, collectively managing them, and notifying each AP. The event notification function providing system 3 includes an event receiving unit 31, an event registration unit 32, an event reading unit 33, an event notification unit 34, an event erasing unit 35, and an event storage unit 36.

イベント受信手段31は、各AP(より詳しくはイベント送信手段53)からそれぞれ送信されたイベントの発生メッセージを受信する。イベント登録手段32は、イベント受信手段31が受信した各APにおけるイベントの発生メッセージに基づいて、イベント記憶手段36に対するイベントの登録処理を行う。   The event receiving unit 31 receives an event occurrence message transmitted from each AP (more specifically, the event transmitting unit 53). The event registration unit 32 performs an event registration process on the event storage unit 36 based on the event occurrence message in each AP received by the event reception unit 31.

イベント記憶手段36は、各ユーザに関するイベントの発生状況を記憶している。ユーザに関するイベントの発生状況とは、各APで発生したイベントをユーザ単位で分類し、時系列に従って蓄積したデータである。詳しいデータ構成は後述するが、イベント記憶手段36は、イベントが発生したコンテンツ及びAPと、イベントの発生の通知対象となるユーザとを特定可能なデータを少なくとも記憶している。   The event storage means 36 stores the event occurrence status for each user. The occurrence state of an event related to a user is data accumulated in time series in which events generated in each AP are classified in units of users. Although the detailed data structure will be described later, the event storage means 36 stores at least data capable of specifying the content and AP in which the event has occurred and the user to be notified of the occurrence of the event.

イベント読出手段33は、各AP(より詳しくはイベント参照手段54)から送信されたイベントの参照リクエストに応じて、イベント記憶手段36からイベントの発生状況を読み出す。なお、本実施形態でのイベントの読み出しは、いわゆるプル型の通知を行う場合のものであるが、プッシュ型の通知を行う場合など任意のタイミングを採用することができる。   The event reading unit 33 reads the event occurrence status from the event storage unit 36 in response to an event reference request transmitted from each AP (more specifically, the event reference unit 54). Note that the event reading in this embodiment is performed when so-called pull-type notification is performed, but any timing such as when performing push-type notification can be employed.

イベント通知手段34は、イベント読出手段33が読み出したイベントの発生状況を、各AP(より詳しくはイベント受信手段55)に対して送信する。イベント消去手段35は、イベント通知手段34が各APに対して送信したイベントの発生状況のうち、ユーザにより通知の確認が行われたイベントに関するレコードを、イベント記憶手段36から消去する。   The event notification unit 34 transmits the event occurrence status read by the event reading unit 33 to each AP (more specifically, the event receiving unit 55). The event erasure unit 35 erases, from the event storage unit 36, the record related to the event for which the user has confirmed the notification among the event occurrence states transmitted by the event notification unit 34 to each AP.

(イベント通知機能提供システム3のサーバ構成)
図1ではイベント通知機能提供システム3の機能的な構成について説明したが、以下では、図2を参照してハードウェア的な構成について説明する。図2は、本実施形態にかかるイベント通知機能提供システム3のサーバ構成を示す図である。
(Server configuration of event notification function providing system 3)
Although the functional configuration of the event notification function providing system 3 has been described with reference to FIG. 1, the hardware configuration will be described with reference to FIG. FIG. 2 is a diagram showing a server configuration of the event notification function providing system 3 according to the present embodiment.

イベント通知機能提供システム3は、第1サーバ11と、第2サーバ12と、データベースサーバ(以下、DBサーバ)13と、キャッシュサーバ14と、を備え、これらの各サーバ11〜14が相互に通信可能に接続されて構成されている。各サーバ11〜14間の通信は、任意の形式とすることができる。各サーバ11〜14は、CPU等の制御装置、メモリやHDD等の記憶装置、通信I/F等の通信装置といったハードウェア資源を有するコンピュータにより構成される。   The event notification function providing system 3 includes a first server 11, a second server 12, a database server (hereinafter referred to as a DB server) 13, and a cache server 14, and these servers 11 to 14 communicate with each other. It is connected and configured. Communication between the servers 11 to 14 can be in any format. Each of the servers 11 to 14 is configured by a computer having hardware resources such as a control device such as a CPU, a storage device such as a memory and an HDD, and a communication device such as a communication I / F.

第1サーバ11は、複数のサービス提供サーバ5のそれぞれにより管理されているAPとの窓口となる。つまり、第1サーバ11は、各サービス提供サーバ5からのリクエストを受け付け、処理結果をレスポンスとして返送するフロントエンド部としての機能を有する。第2サーバ12は、第1サーバ11の依頼を受けてイベントの登録処理を行う機能を有する。DBサーバ13及びキャッシュサーバ14は、各APにおいて発生したイベントを管理する。   The first server 11 serves as a window with the AP managed by each of the plurality of service providing servers 5. That is, the first server 11 has a function as a front end unit that receives a request from each service providing server 5 and returns a processing result as a response. The second server 12 has a function of receiving an event registration process in response to a request from the first server 11. The DB server 13 and the cache server 14 manage events that occur in each AP.

ここで、図1との関係において、第1サーバ11は、前述したイベント受信手段31、イベント読出手段33及びイベント通知手段34として機能する。また、第2サーバ12は、イベント登録手段32及びイベント消去手段35として機能する。さらに、DBサーバ13及びキャッシュサーバ14は、イベント登録手段32、イベント消去手段35及びイベント記憶手段36として機能する。   Here, in relation to FIG. 1, the first server 11 functions as the event receiving unit 31, the event reading unit 33, and the event notification unit 34 described above. The second server 12 functions as an event registration unit 32 and an event deletion unit 35. Further, the DB server 13 and the cache server 14 function as an event registration unit 32, an event deletion unit 35, and an event storage unit 36.

(イベントの登録処理)
ここで、本実施形態のイベント通知機能提供システム3は、各APにおいて発生する大量のイベントを処理するため、イベントの登録処理に関して以下のような処理を行うようにしている。
(Event registration process)
Here, the event notification function providing system 3 according to the present embodiment performs the following processing regarding event registration processing in order to process a large number of events that occur in each AP.

第1サーバ11は、まず、サービス提供サーバ5からイベントの発生メッセージを受信すると、受信したイベントの登録処理を第2サーバ12に対して依頼する。このとき、第1サーバ11は、第2サーバ12からの処理完了の通知を受け取ることなく、イベントの発生メッセージを受信した直後、イベントの登録処理を行った旨のレスポンスを受信元のサービス提供サーバ5に対して送信する。   First, when receiving an event occurrence message from the service providing server 5, the first server 11 requests the second server 12 to register the received event. At this time, the first server 11 receives the response indicating that the event registration processing has been performed immediately after receiving the event occurrence message without receiving the processing completion notification from the second server 12, and receives the response indicating that the event has been registered. 5 is transmitted.

一方で、第1サーバ11から依頼を受けた第2サーバ12は、イベントの登録処理をDBサーバ13及びキャッシュサーバ14に対して行う。   On the other hand, the second server 12 that has received a request from the first server 11 performs event registration processing on the DB server 13 and the cache server 14.

このようにして、イベントの登録処理を、各サービス提供サーバ5からのリクエストを直接受け付ける第1サーバ11ではなく、第2サーバ12がバックグラウンドで行うようにしたので、第1サーバ11はイベントの発生メッセージを受信するとそのままサービス提供サーバ5に対してレスポンスを送信できるようになり、各APにおいて発生する大量のイベントを滞りなく処理することができるようになる。また、第1サーバ11は、イベントの登録処理及び読出処理の両方を行うことによる処理負担から解放されるので、イベントの登録処理及び読出処理の双方に関するパフォーマンスを向上させることができる。   In this way, the event registration process is performed not by the first server 11 that directly receives a request from each service providing server 5 but by the second server 12 in the background. When the generated message is received, a response can be transmitted to the service providing server 5 as it is, and a large number of events generated in each AP can be processed without delay. Further, the first server 11 is freed from the processing burden caused by performing both the event registration process and the read process, so that the performance related to both the event registration process and the read process can be improved.

(DBサーバ13のデータ構成)
次に、図3及び図4を参照して、DBサーバ13が備えるデータ構造例について説明する。DBサーバ13は、イベントテーブル(図3)とコンテンツテーブル(図4)と、を備えている。
(Data structure of DB server 13)
Next, a data structure example provided in the DB server 13 will be described with reference to FIGS. 3 and 4. The DB server 13 includes an event table (FIG. 3) and a content table (FIG. 4).

(イベントを個々に管理するイベントテーブル)
イベントテーブル(図3)は、各APにおいて発生したイベントに関する情報(以下、イベント情報)を記憶している。イベント情報は、「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント識別子」、「イベント内容」及び「日時」の各データ項目を含んでいる。これらの各データ項目は、サービス提供サーバ5のAPにより任意に定義され、イベントの発生メッセージに含まれて送信されてくるものである。
(Event table for managing events individually)
The event table (FIG. 3) stores information related to events that have occurred in each AP (hereinafter referred to as event information). The event information includes data items of “user identifier”, “service identifier”, “content identifier”, “event identifier”, “event content”, and “date and time”. Each of these data items is arbitrarily defined by the AP of the service providing server 5, and is included in the event occurrence message and transmitted.

「ユーザ識別子」は、イベントの発生を通知する対象ユーザを特定するためのデータである。例えば、オークションサービスであれば、入札がつけられた出品物の出品者が有するユーザIDである。   “User identifier” is data for specifying a target user to be notified of the occurrence of an event. For example, in the case of an auction service, the user ID of the exhibitor of the exhibit for which a bid is placed.

「サービス識別子」は、イベントが発生したAPを特定するデータである。例えば、識別子「auc」であればオークションサービス、識別子「board」であれば掲示板サービス、という具合に特定される。   The “service identifier” is data that identifies an AP in which an event has occurred. For example, the identifier “auc” specifies the auction service, and the identifier “board” specifies the bulletin board service.

「コンテンツ識別子」は、イベントが発生したコンテンツを特定するデータである。例えば、オークションサービスを例にすると、識別子「item」であれば「出品物」であり、識別子「item_0001」であれば「出品物A」という具合に特定される。   The “content identifier” is data specifying the content in which the event has occurred. For example, in the case of an auction service, an identifier “item” is specified as “exhibit”, and an identifier “item_0001” is specified as “exhibit A”.

「イベント識別子」は、発生したイベントを特定するデータである。例えば、オークションサービスの出品物を例にすると、識別子「event」であれば「入札」であり、識別子「event_0001」であれば1つ目の「入札1」、という具合に特定される。   The “event identifier” is data that identifies the event that has occurred. For example, in the case of an auction service item, the identifier “event” is specified as “bid”, and the identifier “event_0001” is specified as “first bid 1”.

「イベント内容」は、発生したイベントについての付加情報を示すテキストデータである。例えば、イベントを発生させたユーザにより入力された情報の内容であり、オークションサービスであれば、「入札額」や「入札者のユーザID」などが記述されている。   The “event content” is text data indicating additional information about the event that has occurred. For example, it is the content of information input by the user who generated the event, and in the case of an auction service, “bid amount”, “bidder user ID”, and the like are described.

「日時」は、イベントが発生した日時を特定するデータである。例えば、オークションサービスを例にすると、「入札が行われた日時」となる。   “Date and time” is data specifying the date and time when the event occurred. For example, when an auction service is taken as an example, it is “date and time when a bid is made”.

(イベントをコンテンツ単位で管理するコンテンツテーブル)
コンテンツテーブル(図4)は、発生したイベントをコンテンツ単位で集約した情報(以下、コンテンツ情報)を記憶している。コンテンツ情報は、「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント数」、「イベント識別子」、「URL」及び「日時」の各データ項目を含んでいる。
(Content table for managing events in units of content)
The content table (FIG. 4) stores information (hereinafter referred to as content information) in which generated events are aggregated in units of content. The content information includes data items of “user identifier”, “service identifier”, “content identifier”, “number of events”, “event identifier”, “URL”, and “date / time”.

「イベント数」は、コンテンツに対して発生したイベントの数を特定するデータである。前述のイベントテーブルに記憶されている各イベント情報を、「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」の組をキーとして取りまとめ、その数をカウントしたものが記憶されている。「URL」は、各APで管理されているコンテンツのアドレスを特定するデータである。例えば、オークションサービスを例にすると、1個の出品物に対して新たに入札がついた件数となる。   “Number of events” is data specifying the number of events that have occurred for the content. Each event information stored in the event table described above is stored as a set of “user identifier”, “service identifier”, and “content identifier” as a key, and the number is counted. “URL” is data specifying the address of the content managed by each AP. For example, when an auction service is taken as an example, it is the number of new bids for one exhibit.

このように、各APでのイベントの発生状況を、通知を行う対象となるユーザ識別子をキーとして管理するので、ユーザ識別子ごとにデータベースを分割管理することができ、これによってユーザごとにデータアクセスの高速化も期待できる。また、イベントの参照時には、通知を行う対象となるユーザ識別子を超えてイベント情報が読み出されることもなく、システムの堅牢性も確保することができる。   In this way, since the event occurrence status at each AP is managed using the user identifier to be notified as a key, the database can be divided and managed for each user identifier, thereby enabling data access for each user. High speed can be expected. Further, when referring to an event, event information is not read beyond the user identifier to be notified, and the robustness of the system can be ensured.

また、本実施形態では、DBサーバ13は、イベント情報とコンテンツ情報をそれぞれ分けて管理していることから、それぞれを別のサーバファームとして構築するような場合に、それぞれのデータ量に応じて拡張が可能になり、スケーラビリティを確保することができる。   In the present embodiment, since the DB server 13 manages event information and content information separately, when each is constructed as a separate server farm, the DB server 13 is expanded according to the amount of data. Can be achieved and scalability can be ensured.

(イベントをAP単位で管理するキャッシュテーブル)
次に、図5を参照して、キャッシュサーバ14が備えるデータ構造例について説明する。キャッシュサーバ14は、キャッシュテーブル(図5)を備えている。
(Cache table that manages events in AP units)
Next, an example of a data structure provided in the cache server 14 will be described with reference to FIG. The cache server 14 includes a cache table (FIG. 5).

キャッシュテーブル(図5)は、イベントが発生したコンテンツをAP単位で集約した情報(以下、サマリー情報)を記憶している。サマリー情報は、「ユーザ識別子」、「サービス識別子」、「コンテンツ数」、「コンテンツ識別子」、「イベント識別子」、「URL」及び「日時」の各データ項目を含んでいる。   The cache table (FIG. 5) stores information (hereinafter referred to as summary information) in which contents in which events have occurred are aggregated in AP units. The summary information includes data items of “user identifier”, “service identifier”, “number of contents”, “content identifier”, “event identifier”, “URL”, and “date / time”.

「コンテンツ数」は、イベントが発生したコンテンツの数を特定するデータである。前述のDBサーバ13のコンテンツテーブルに記憶されているコンテンツ情報を、「ユーザ識別子」及び「サービス識別子」の組をキーとして取りまとめ、その数をカウントしたものが記憶されている。例えば、オークションサービスを例にすると、10個の出品物を出品しているような場合に、そのうち新たに入札がついた出品物の個数となる。   “Number of contents” is data specifying the number of contents in which an event has occurred. The contents information stored in the contents table of the DB server 13 is stored as a set of “user identifier” and “service identifier” as a key, and the number is counted. For example, when an auction service is taken as an example, when 10 items are listed, the number of items for which a new bid has been placed is obtained.

また、サマリー情報には、コンテンツ数に含まれる個々のコンテンツに関するコンテンツ情報が関連付けて記憶されている。これにより、個々のコンテンツのURLや発生したイベントの数なども特定可能となる。   The summary information is associated with content information related to individual contents included in the number of contents. This makes it possible to specify the URL of each content, the number of events that have occurred, and the like.

(各APにおける発生イベントの表示の共有)
次に、図6を参照して、イベント定義データ共有リストについて説明する。
(Sharing the display of events that occur at each AP)
Next, the event definition data sharing list will be described with reference to FIG.

イベント定義データ共有リストは、各APにおいて、他のAPで定義されているイベントを把握するために用いられるデータであり、各APに共通して提供される。また、ユーザ端末7のブラウザにより、他のAPにおけるサービス名、コンテンツ名及びイベント名を表示させる際に用いられる。   The event definition data sharing list is data used in each AP to grasp events defined in other APs, and is provided in common to each AP. Further, it is used when displaying the service name, content name, and event name in another AP by the browser of the user terminal 7.

イベント定義データ共有リストは、各APにおいて任意に定義されている「サービス識別子」、「コンテンツ識別子」及び「イベント識別子」の一覧に応じて、それぞれを表示する名称が関連付けられている。例えば、サービス識別子「auc」に対して「オークション」サービス、コンテンツ識別子「item」に対して「出品物」が関連付けられている。   The event definition data sharing list is associated with a name for displaying each according to a list of “service identifier”, “content identifier”, and “event identifier” arbitrarily defined in each AP. For example, an “auction” service is associated with the service identifier “auc”, and an “exhibit” is associated with the content identifier “item”.

イベント通知機能提供システム3は、各APに対して、他のAPに関するイベントの発生を通知するとき、前述のサマリー情報等とともに、イベント定義データ共有リストを提供する。これにより、各APでは、他のAPにおいて定義されているコンテンツやイベントを共有することができ、また、イベントの通知を行う際に各APで共通の表示を行うことができる。   The event notification function providing system 3 provides an event definition data sharing list together with the above-described summary information when notifying each AP of the occurrence of an event related to another AP. As a result, each AP can share contents and events defined in other APs, and can perform a common display in each AP when notifying an event.

ここで、「サービス識別子」、「コンテンツ識別子」及び「イベント識別子」は、サービス提供サーバ5の運営者により各APで任意に定義された識別子が設定される。   Here, as the “service identifier”, “content identifier”, and “event identifier”, identifiers arbitrarily defined in each AP by the operator of the service providing server 5 are set.

識別子の設定を行うに際して、イベント通知機能提供システム3は、サービス提供サーバ5に接続された運営者端末(図示せず)のブラウザに設定用ページデータを送信する。サービス提供サーバ5の運営者は、ブラウザに表示された設定用ページを介して、AP内で任意に定義する識別子を登録し、イベント通知機能提供システム3に対して送信する。   When setting the identifier, the event notification function providing system 3 transmits the setting page data to a browser of an operator terminal (not shown) connected to the service providing server 5. The operator of the service providing server 5 registers an identifier arbitrarily defined in the AP via the setting page displayed on the browser, and transmits it to the event notification function providing system 3.

例えば、APにより提供されるウェブ上のサービスがオークションサービスである場合、運営者は、サービス識別子として「auc」を、表示名のテキストとして「オークション」を登録する。また、コンテンツ識別子として「item」を、表示名のテキストとして「出品物」を登録する。さらに、イベント識別子として「event」を、表示名のテキストとして「入札」を登録する。   For example, when the service on the web provided by the AP is an auction service, the operator registers “auc” as the service identifier and “auction” as the text of the display name. In addition, “item” is registered as the content identifier, and “exhibit” is registered as the display name text. Furthermore, “event” is registered as the event identifier, and “bid” is registered as the display name text.

なお、上記設定用ページでは、各APで任意に定義する識別子の登録のほか、イベントの発生通知を行うページのレイアウト(後述の図9及び図11を参照)のカスタマイズや、イベントの発生の通知のパターン(後述のAP単位、コンテンツ単位、イベント一覧など)、通知の確認が終了したイベントの消去のタイミングなどを任意に設定できるようにしてもよい。この場合、イベント通知機能提供システム3は、イベントの発生の通知のパターンや消去のタイミングなどの設定情報を、サービス識別子に関連付けて管理し、各APに応じた処理を行う。   In the setting page, in addition to registering an identifier that is arbitrarily defined in each AP, customization of the layout of a page that performs event occurrence notification (see FIGS. 9 and 11 described later), and notification of event occurrence These patterns (AP unit, content unit, event list, etc., which will be described later), the timing of erasing an event whose notification has been confirmed, and the like may be arbitrarily set. In this case, the event notification function providing system 3 manages the setting information such as the event occurrence notification pattern and the erasure timing in association with the service identifier, and performs processing corresponding to each AP.

<動作>
次に、本実施形態のイベント通知機能提供システム3の動作について説明する。
<Operation>
Next, the operation of the event notification function providing system 3 of this embodiment will be described.

(イベントの登録)
図7は、本実施形態の処理例を示すシーケンス図であり、サービス提供サーバ5のAPから送信されたイベントの発生を、DBサーバ13及びキャッシュサーバ14に格納するまでの処理例である。
(Event registration)
FIG. 7 is a sequence diagram showing a processing example of this embodiment, and is a processing example until the occurrence of an event transmitted from the AP of the service providing server 5 is stored in the DB server 13 and the cache server 14.

ユーザ端末7のユーザが、ブラウザからサービス提供サーバ5のAPにより提供されるサービスのページを閲覧したい場合、ブラウザからサービス提供サーバ5のAPに対してページリクエストを送信する(ステップS11)。例えば、オークションサービスを例にすると、出品物を閲覧するためのページのリクエストである。このリクエストは、ブラウザにおいて、対象コンテンツのURLを入力するか、他のページに張られたリンクを指定すること等により行われる。   When the user of the user terminal 7 wants to browse the page of the service provided by the AP of the service providing server 5 from the browser, a page request is transmitted from the browser to the AP of the service providing server 5 (step S11). For example, when an auction service is taken as an example, it is a request for a page for browsing exhibits. This request is made in the browser by inputting the URL of the target content or designating a link attached to another page.

なお、ログイン済みであるかどうかの確認は、例えばセッションID等を示すクッキーを読み込むことで行う。未だログインされていないものとすると、サービス提供サーバ5は、ユーザ端末7のブラウザにログインページを送信し、ユーザIDとパスワードの入力を受け付け、ユーザデータベースに登録されているか否かの照合を行い、ログイン処理を行う。   Whether the user has logged in is confirmed by reading a cookie indicating a session ID, for example. Assuming that the user has not logged in yet, the service providing server 5 transmits a login page to the browser of the user terminal 7, accepts input of a user ID and password, and checks whether or not the user is registered in the user database. Perform login process.

サービス提供サーバ5は、予め保持されたページデータを取得するか、動的にページデータを作成するかにより、ブラウザに提供するページデータを作成する(ステップS12)。この際、APが提供するコンテンツと、コンテンツに対して何らかのアクションを入力するための画面領域をページデータに含める。   The service providing server 5 creates page data to be provided to the browser depending on whether to acquire previously stored page data or to dynamically create page data (step S12). At this time, content provided by the AP and a screen area for inputting some action on the content are included in the page data.

続いて、サービス提供サーバ5は、作成したページデータをユーザ端末7に対して送信する(ステップS13)。ページデータはHTTPのレスポンス等に従ってブラウザに送信される。ユーザ端末7は、受信したページデータに基づいてブラウザにページ画面を表示する(ステップS14)。例えば、オークションサービスを例にすると、出品物とともに「入札」及び「入札額」を指定する画面領域が表示されており、その領域に対して入力を行うことで入札を行うことができるようになる。   Subsequently, the service providing server 5 transmits the created page data to the user terminal 7 (step S13). The page data is transmitted to the browser according to an HTTP response or the like. The user terminal 7 displays a page screen on the browser based on the received page data (step S14). For example, when an auction service is taken as an example, a screen area for specifying “bid” and “bid amount” is displayed together with an exhibit, and a bid can be made by inputting to the area. .

続いて、ユーザ端末7のユーザが、ページ画面のコンテンツに対するアクションとして所望の内容を入力すると、ブラウザからサービス提供サーバ5のAPに対して、入力されたアクションの内容が送信される(ステップS101)。   Subsequently, when the user of the user terminal 7 inputs desired content as an action for the content of the page screen, the content of the input action is transmitted from the browser to the AP of the service providing server 5 (step S101). .

サービス提供サーバ5は、受信したアクションの内容をデータベースに登録し、その際、イベントの定義付けを行う(ステップS102)。すなわち、新たに発行した「イベント識別子(例えば、入札1)」やユーザによる入力情報の内容を示す「イベント内容(例えば入札額)」を、「コンテンツ識別子(例えば出品物A)」、イベントの通知対象となる「ユーザ識別子(例えば、入札がついた出品物Aの出品者)」、「URL」等とともにデータベースに登録する。   The service providing server 5 registers the content of the received action in the database, and at that time, defines an event (step S102). That is, a newly issued “event identifier (for example, bid 1)” or “event content (for example, bid amount)” indicating the content of input information by the user, “content identifier (for example, exhibit A)”, and event notification It is registered in the database together with the target “user identifier (for example, exhibitor of exhibit A with bid)”, “URL”, and the like.

続いて、サービス提供サーバ5は、イベントの発生メッセージをイベント通知機能提供システム3の第1サーバ11に対して送信する(ステップS103)。イベントの発生メッセージには、イベントの通知対象となる「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント識別子」、コンテンツの「URL」、「イベント内容」及び「日時」が含まれている。   Subsequently, the service providing server 5 transmits an event occurrence message to the first server 11 of the event notification function providing system 3 (step S103). The event occurrence message includes “user identifier”, “service identifier”, “content identifier”, “event identifier”, content “URL”, “event content”, and “date / time” that are subject to event notification. ing.

第1サーバ11は、サービス提供サーバ5からイベントの発生メッセージを受信すると、その登録処理を第2サーバ12に依頼するリクエストと共に、第2サーバ12に送信する(ステップS104)。続いて、第1サーバ11は、受信したイベントの発生メッセージについて処理完了のレスポンスを受信元のサービス提供サーバ5に対して送信する(ステップS105)。なお、第1サーバ11は、第2サーバ12への依頼を行う前にサービス提供サーバ5に対するレスポンスを行うようにしても良い。   When receiving the event occurrence message from the service providing server 5, the first server 11 transmits the registration process to the second server 12 together with a request for requesting the second server 12 (step S104). Subsequently, the first server 11 transmits a process completion response to the received service providing server 5 with respect to the received event occurrence message (step S105). The first server 11 may make a response to the service providing server 5 before making a request to the second server 12.

つまり、第1サーバ11は、第2サーバ12による登録処理の完了を待たず、イベントの発生メッセージを受信した後、直ちに、処理完了のレスポンスを返送することになる。   That is, the first server 11 does not wait for the completion of the registration process by the second server 12, and immediately returns a process completion response after receiving the event occurrence message.

一方、第1サーバ11から登録処理を依頼された第2サーバ12は、まず、DBサーバ13に対してイベント登録リクエストを送信する(ステップS106)。これを受けたDBサーバ13は、まず、発生メッセージからイベント情報を抽出し、イベントテーブル(図3)に登録する。続いて、DBサーバ13は、イベントテーブルからコンテンツ情報を生成し、コンテンツテーブル(図4)に登録する(ステップS107)。各テーブルの参照や更新には、SQL(Structured Query Language)等のコマンドが用いられる。   On the other hand, the second server 12 requested to register from the first server 11 first transmits an event registration request to the DB server 13 (step S106). Upon receiving this, the DB server 13 first extracts event information from the generated message and registers it in the event table (FIG. 3). Subsequently, the DB server 13 generates content information from the event table and registers it in the content table (FIG. 4) (step S107). Commands such as SQL (Structured Query Language) are used to refer to and update each table.

より具体的には、DBサーバ13は、第1サーバ11が受信したイベントの発生メッセージから、イベントの通知対象となる「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント識別子」、「イベント内容」及び「日時」の組を抽出し、イベント情報として、イベントテーブルの新たなレコードに設定する。   More specifically, the DB server 13 determines, from the event occurrence message received by the first server 11, the “user identifier”, “service identifier”, “content identifier”, “event identifier”, A set of “event content” and “date and time” is extracted and set as new event record information in the event table.

また、DBサーバ13は、イベント情報の登録が完了すると、イベントテーブルに記憶されている各イベント情報を、「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」の組をキーとして取りまとめ、そのレコード数を「イベント数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント数」、「イベント識別子」、「URL」及び「日時」の組を抽出し、コンテンツ情報として、コンテンツテーブルの新たなレコードに設定する。   Further, when the registration of the event information is completed, the DB server 13 collects each event information stored in the event table using a set of “user identifier”, “service identifier”, and “content identifier” as a key, The number is counted as “number of events”. Then, a set of “user identifier”, “service identifier”, “content identifier”, “number of events”, “event identifier”, “URL” and “date / time” is extracted, and a new record in the content table is obtained as content information Set to.

DBサーバ13は、イベントテーブル(図3)及びコンテンツテーブル(図4)への登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS108)。   When the DB server 13 completes registration in the event table (FIG. 3) and the content table (FIG. 4), it sends a notification to that effect to the second server 12 (step S108).

次に、第2サーバ12は、DBサーバ13に対してサマリー作成リクエストを送信する(ステップS109)。これを受けたDBサーバ13は、サマリー情報を作成し(ステップS110)、第2サーバ12に対して送信する(ステップS111)。   Next, the second server 12 transmits a summary creation request to the DB server 13 (step S109). Receiving this, the DB server 13 creates summary information (step S110) and transmits it to the second server 12 (step S111).

より具体的には、DBサーバ13は、コンテンツテーブル(図4)において新たなレコードとして登録されたコンテンツ情報を、「ユーザ識別子」及び「サービス識別子」の組をキーとして取りまとめ、そのレコード数を「コンテンツ数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ数」、「コンテンツ識別子」、「イベント識別子」、取りまとめたコンテンツのうち最新のイベントが発生したコンテンツの「URL」、最新のイベントの「イベント内容」及び「日時」からなる項目の組合せをサマリー情報とし、これに個々のコンテンツ情報を紐づける。   More specifically, the DB server 13 collects the content information registered as a new record in the content table (FIG. 4) using a set of “user identifier” and “service identifier” as a key, and sets the number of records as “ Count as "number of contents". Then, “user identifier”, “service identifier”, “number of contents”, “content identifier”, “event identifier”, “URL” of the content in which the latest event occurred among the collected contents, “event” of the latest event A combination of items including “content” and “date and time” is used as summary information, and individual content information is associated with this.

第2サーバ12は、DBサーバ13からサマリー情報を受信すると、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS112)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS113)。なお、サマリー登録リクエストは、DBサーバ13からキャッシュサーバ14に対して行われるようにしても良い。   When receiving the summary information from the DB server 13, the second server 12 transmits a summary registration request to the cache server 14 (step S112). Receiving this, the cache server 14 sets the summary information in a new record of the cache table (FIG. 5) and performs registration (step S113). The summary registration request may be sent from the DB server 13 to the cache server 14.

キャッシュサーバ14は、サマリー情報の登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS114)。第2サーバ12は、イベントの登録完了の通知を第1サーバ11に対して送信する(ステップS115)。   When the registration of the summary information is completed, the cache server 14 transmits a notification to that effect to the second server 12 (step S114). The second server 12 transmits an event registration completion notification to the first server 11 (step S115).

これを受けた第1サーバ11は、更新通知を要求するAPが予め設定されている場合には、その対象となるAPに対して更新通知を送信する(ステップS116)。   The first server 11 that has received the notification transmits an update notification to the target AP when an AP that requests the update notification is set in advance (step S116).

(イベントの参照)
図8及び図10は、本実施形態の処理例を示すシーケンス図であり、サービス提供サーバ5のAPがイベントの参照リクエストを送信してから、そのAPに対してイベントが通知されるまでの処理例である。
(Event reference)
8 and 10 are sequence diagrams showing an example of processing according to the present embodiment. Processing from when the AP of the service providing server 5 transmits an event reference request until the event is notified to the AP. It is an example.

(イベントの参照:サマリー一覧)
まず、図8を参照して、サマリー一覧を指定したイベントの参照リクエストを行った場合の処理例について説明する。
(Event reference: summary list)
First, with reference to FIG. 8, a processing example when an event reference request specifying a summary list is performed will be described.

図8において、ユーザ端末7のユーザがブラウザからサービス提供サーバ5のAPにより提供されるサービスのページを閲覧したい場合、ブラウザからサービス提供サーバ5のAPに対してページリクエストを送信する(ステップS201)。例えば、ショッピングサービスを例にすると、商品を検索・閲覧するためのページのリクエストである。このリクエストは、ブラウザにおいて、対象コンテンツのURLを入力するか、他のページに張られたリンクを指定すること等により行われる。   In FIG. 8, when the user of the user terminal 7 wants to browse the page of the service provided by the AP of the service providing server 5 from the browser, a page request is transmitted from the browser to the AP of the service providing server 5 (step S201). . For example, taking a shopping service as an example, it is a request for a page for searching and browsing for a product. This request is made in the browser by inputting the URL of the target content or designating a link attached to another page.

サービス提供サーバ5は、ユーザ端末7のブラウザからAPに対するページリクエストを受信すると、第1サーバ11に対して、イベント参照リクエスト「サマリー一覧」を送信する(ステップS202)。イベント参照リクエストには、当該リクエストを行ったユーザのユーザ識別子が含まれている。   When receiving the page request for the AP from the browser of the user terminal 7, the service providing server 5 transmits an event reference request “summary list” to the first server 11 (step S202). The event reference request includes the user identifier of the user who made the request.

イベント参照リクエストを受信した第1サーバ11は、イベント参照リクエスト「サマリー一覧」をキャッシュサーバ14に対して送信する(ステップS203)。   The first server 11 that has received the event reference request transmits an event reference request “summary list” to the cache server 14 (step S203).

イベント参照リクエストを受信したキャッシュサーバ14は、リクエストを行った「ユーザ識別子」をキーとしてキャッシュテーブル(図5)を参照し、対象となるサマリー情報を検索する(ステップS204)。   The cache server 14 that has received the event reference request searches the target summary information with reference to the cache table (FIG. 5) using the “user identifier” that made the request as a key (step S204).

(キャッシュヒットありの場合)
ステップS204での検索の結果、サマリー情報がヒットした場合、キャッシュサーバ14は、サマリー情報を取得し、第1サーバ11に対して送信する(ステップS205)。
(When there is a cache hit)
If the summary information hits as a result of the search in step S204, the cache server 14 acquires the summary information and transmits it to the first server 11 (step S205).

サマリー情報を受信した第1サーバ11は、サマリー情報をサービス提供サーバ5に対して送信する(ステップS206)。   The first server 11 that has received the summary information transmits the summary information to the service providing server 5 (step S206).

サマリー情報を受信したサービス提供サーバ5は、サマリー情報に基づいてページデータを作成し(ステップS207)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステップS208)。   The service providing server 5 that has received the summary information creates page data based on the summary information (step S207), and transmits the page data to the browser of the user terminal 7 that has made the page request (step S208).

ページデータを受信したユーザ端末7のブラウザはページ画面を表示する(ステップS209)。図9は、ブラウザのページ画面70の例を示している。ページ画面70には、イベント通知領域71が表示されており、その領域内において、サマリー情報に基づいて作成されたAP単位通知領域72及びコンテンツ単位通知領域73が表示されている。   The browser of the user terminal 7 that has received the page data displays a page screen (step S209). FIG. 9 shows an example of a browser page screen 70. An event notification area 71 is displayed on the page screen 70, and an AP unit notification area 72 and a content unit notification area 73 created based on the summary information are displayed in the area.

AP単位通知領域72には、ユーザに閲するイベントの発生をAP単位で通知するメッセージが表示される。例えば、「オークションにおいて2つの出品物に入札があります」、「掲示板において1件のトピックに対して新着コメントがあります」といったメッセージが表示され、イベントが発生したAP名とそのAPにおいてイベントが発生したコンテンツの数がユーザに通知される。   In the AP unit notification area 72, a message for notifying the user of the occurrence of an event to be viewed in AP units is displayed. For example, a message such as “There is a bid for two items in the auction” or “There is a new comment for one topic on the bulletin board” is displayed, and the name of the AP where the event occurred and the event occurred in that AP The number of contents is notified to the user.

一方、コンテンツ単位通知領域73には、ユーザに関するイベントの発生をコンテンツ単位で通知するメッセージが表示される。例えば、「オークションの出品物Aに2件の入札があります」、「オークションの出品物Bに1件の入札があります」というように、イベントが発生したAP名及びコンテンツ名とそのコンテンツに対して発生したイベントの数をユーザに通知するメッセージが表示される。   On the other hand, in the content unit notification area 73, a message for notifying the occurrence of an event related to the user in units of content is displayed. For example, “There are two bids for Auction Exhibit A” and “There is one bid for Auction Exhibit B”. A message is displayed informing the user of the number of events that have occurred.

また、AP単位通知領域72には、AP毎に、最新のイベントが発生したコンテンツへのリンク先URLが埋め込まれる。一方、コンテンツ単位通知領域73には、コンテンツ毎に、そのコンテンツへのリンク先URLが埋め込まれる。   Further, in the AP unit notification area 72, a link destination URL to the content in which the latest event has occurred is embedded for each AP. On the other hand, in the content unit notification area 73, a link destination URL to the content is embedded for each content.

リンク先URLは、URLの文字列を表示するか、或いは、通知メッセージの表示に紐付けるなどし、それらの表示をクリッカブルとすることにより、リンク先URLが示すウェブページへの遷移をユーザに指定させる。   For the link destination URL, the character string of the URL is displayed or linked to the display of the notification message. By making these displays clickable, the transition to the web page indicated by the link destination URL is designated to the user. Let

これにより、イベントの発生通知を受けたユーザは、上記リンク先URLを介して、イベントが発生したコンテンツのウェブページをブラウザに表示させ、発生したイベントを実際に確認することができる。   Thus, the user who has received the event occurrence notification can display the web page of the content in which the event has occurred on the browser via the link destination URL, and can actually confirm the event that has occurred.

(キャッシュヒットなしの場合) ところで、本実施形態では、イベントの登録処理とイベントの読出処理との間は非同期で行われるため、イベント参照時にサマリー情報が末作成である場合も起こりうる。以下の処理は、この場合における処理例である。   By the way, in this embodiment, since the event registration process and the event read process are performed asynchronously, there is a possibility that the summary information is created at the end of the event reference. The following processing is a processing example in this case.

ステップS204での検索の結果、サマリー情報がヒットしなかった場合、キャッシュサーバ14は、サマリー情報の取得に失敗した旨の通知を、第1サーバ11に対して送信する(ステップS210)。   If the summary information does not hit as a result of the search in step S204, the cache server 14 transmits a notification that the summary information acquisition has failed to the first server 11 (step S210).

通知を受信した第1サーバ11は、イベント参照リクエスト「サマリー一覧」をDBサーバ13に対して送信する(ステップS211)。   The first server 11 that has received the notification transmits an event reference request “summary list” to the DB server 13 (step S211).

イベント参照リクエストを受信したDBサーバ13は、リクエストを行った「ユーザ識別子」をキーとしてコンテンツテーブル(図4)を参照し、サマリー情報を作成して(ステップS212)、第1サーバ11に対して送信する(ステップS213)。   The DB server 13 that has received the event reference request refers to the content table (FIG. 4) using the “user identifier” that made the request as a key, creates summary information (step S212), and sends the summary information to the first server 11. Transmit (step S213).

より具体的には、DBサーバ13は、コンテンツテーブル(図4)において新たなレコードとして登録されたコンテンツ情報を、リクエストを行った「ユーザ識別子」をキーに抽出する。そして、これらを「サービス識別子」をキーとして「サービス識別子」単位で取りまとめ、そのレコード数を「コンテンツ数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ数」、「コンテンツ識別子」、「イベント識別子」、取りまとめたコンテンツのうち最新のイベントが発生したコンテンツの「URL」、最新のイベントの「テキスト」及び「日時」からなる組をサマリー情報とし、これに個々のコンテンツ情報を紐づける。   More specifically, the DB server 13 extracts content information registered as a new record in the content table (FIG. 4) using the “user identifier” that made the request as a key. These are collected in units of “service identifier” using “service identifier” as a key, and the number of records is counted as “content number”. Then, “user identifier”, “service identifier”, “number of contents”, “content identifier”, “event identifier”, “URL” of the content in which the latest event occurred among the collected contents, “text” of the latest event ”And“ date and time ”are set as summary information, and individual content information is linked to this.

サマリー情報を受信した第1サーバ11は、サマリー情報をサービス提供サーバ5に対して送信する(ステップS214)。   The first server 11 that has received the summary information transmits the summary information to the service providing server 5 (step S214).

サマリー情報を受信したサービス提供サーバ5は、サマリー情報に基づいてページデータを作成し(ステップS215)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステップS216)。ベージデータを受信したユーザ端末7のブラウザはページ画面(図9参照)を表示する(ステップS217)。   The service providing server 5 that has received the summary information creates page data based on the summary information (step S215), and transmits the page data to the browser of the user terminal 7 that has made the page request (step S216). The browser of the user terminal 7 that has received the page data displays a page screen (see FIG. 9) (step S217).

また、第1サーバ11は、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS218)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS219)。これにより次回以降の参照時にはキャッシュサーバ14にアクセスすればよい。   The first server 11 transmits a summary registration request to the cache server 14 (step S218). Receiving this, the cache server 14 sets the summary information in a new record of the cache table (FIG. 5) and performs registration (step S219). As a result, the cache server 14 may be accessed at the next and subsequent references.

(イベントの参照:イベント一覧)
次に、図10を参照して、イベント一覧を指定したイベントの参照リクエストを行った場合の処理例について説明する。
(Event reference: Event list)
Next, a processing example when an event reference request specifying an event list is performed will be described with reference to FIG.

図10において、ユーザ端末7のユーザがブラウザからサービス提供サーバ5のAPにより提供されるサービスのページを閲覧したい場合、ブラウザからサービス提供サーバ5のAPに対してページリクエストを送信する(ステップS301)。例えば、ニュースサービスを例にすると、ニュース記事を閲覧するためのページのリクエストである。   In FIG. 10, when the user of the user terminal 7 wants to browse the page of the service provided by the AP of the service providing server 5 from the browser, a page request is transmitted from the browser to the AP of the service providing server 5 (step S301). . For example, taking a news service as an example, it is a page request for browsing a news article.

サービス提供サーバ5は、ユーザ端末7のブラウザからAPに対するページリクエストを受信すると、第1サーバ11に対して、イベントの参照リクエスト「イベント一覧」を送信する(ステップS302)。イベントの参照リクエストには、送信元のサービス識別子や、当該リクエストを行ったユーザのユーザ識別子(例えばユーザID)が含まれている。   When receiving the page request for the AP from the browser of the user terminal 7, the service providing server 5 transmits an event reference request “event list” to the first server 11 (step S302). The event reference request includes the service identifier of the transmission source and the user identifier (for example, user ID) of the user who made the request.

イベントの参照リクエストを受信した第1サーバ11は、イベントの参照リクエストをDBサーバ13に対して送信する(ステップS303)。イベントの参照リクエストを受信したDBサーバ13は、リクエストを行った「ユーザ識別子」をキーとしてイベントテーブル(図3)を参照し、対象となるイベント情報をサービス識別子ごとに取りまとめ、一覧として取得する(ステップS304)。DBサーバ13は、取得したイベント情報の一覧を第1サーバ11に対して送信する(ステップS305)。   The first server 11 that has received the event reference request transmits the event reference request to the DB server 13 (step S303). The DB server 13 that has received the event reference request refers to the event table (FIG. 3) using the “user identifier” that made the request as a key, collects the target event information for each service identifier, and acquires it as a list ( Step S304). The DB server 13 transmits a list of acquired event information to the first server 11 (step S305).

イベント情報の一覧を受信した第1サーバ11は、イベント情報の一覧をサービス提供サーバ5に対して送信する(ステップS306)。イベント情報の一覧を受信したサービス提供サーバ5は、イベント情報の一覧に基づいてページデータを作成し(ステップS307)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステッブS308)。   The first server 11 that has received the list of event information transmits the list of event information to the service providing server 5 (step S306). The service providing server 5 that has received the list of event information creates page data based on the list of event information (step S307), and transmits it to the browser of the user terminal 7 that has made the page request (step S308).

ページデータを受信したユーザ端末7のブラウザはページ画面を表示する(ステップS309)。図11は、ブラウザのページ画面70の例を示している。ページ画面70には、イベント通知領域71が表示されており、その領域内において、イベント情報の一覧に基づいて作成されたイベント一覧通知領域74が表示されている。   The browser of the user terminal 7 that has received the page data displays a page screen (step S309). FIG. 11 shows an example of a browser page screen 70. An event notification area 71 is displayed on the page screen 70, and an event list notification area 74 created based on a list of event information is displayed in the area.

イベント一覧通知領域74には、リクエストを行ったユーザに対するイベントの発生をイベント単位で(つまり、個々のイベントを詳細に)通知するメッセージが表示される。例えば、「オークションの出品物Aに対する入札は以下です」とし、「入札1:詳細(時間/入札者/入札額)」、「入札2:詳細(時間/入札者/入札額)」といったメッセージが表示され、発生したイベントが個別に通知される。   In the event list notification area 74, a message for notifying the occurrence of an event to the user who made the request in units of events (that is, individual events in detail) is displayed. For example, a message such as “Bid for Auction Exhibit A is as follows” and “Bid 1: Details (Time / Bidder / Bid Amount)” and “Bid 2: Details (Time / Bidder / Bid Amount)” are displayed. It is displayed and the event that occurred is notified individually.

(イベントの消去)
図12は、本実施形態の処理例を示すシーケンス図であり、サービス提供サーバ5のAPがイベントの消去リクエストを送信してから、DBサーバ13及びキャッシュサーバ14により対象のイベントが消去されるまでの処理例である。
(Delete event)
FIG. 12 is a sequence diagram illustrating a processing example of the present embodiment, from when the AP of the service providing server 5 transmits an event deletion request to when the target event is deleted by the DB server 13 and the cache server 14. It is an example of processing.

図12において、サービス提供サーバ5は、前述したように、ユーザ端末7に対してページデータを送信し(ステップS21)、ブラウザに表示させる(ステップS22)ことで、イベントの通知を行う(図8及び図10)。その後、ユーザ端末7において、イベントが発生したコンテンツのリンク先URLがユーザにより指定(クリック)されると(ステップS23)、リンク先URLが示すウェブページのページリクエストがサービス提供サーバ5に対して送信される(ステップS24)。   In FIG. 12, the service providing server 5 notifies the event by transmitting the page data to the user terminal 7 (step S21) and displaying it on the browser (step S22) as described above (FIG. 8). And FIG. 10). Thereafter, when the user specifies (clicks) the link destination URL of the content in which the event has occurred (step S23), a page request for the web page indicated by the link destination URL is transmitted to the service providing server 5. (Step S24).

これを受けたサービス提供サーバ5は、そのページリクエストを処理する(ステップS25)。例えば、他のサービス提供サーバ5で管理されるAP内のコンテンツであれば、そのページリクエストを他のサービス提供サーバ5に受け渡す。   Receiving this, the service providing server 5 processes the page request (step S25). For example, if the content is in the AP managed by the other service providing server 5, the page request is transferred to the other service providing server 5.

続いて、サービス提供サーバ5は、発生したイベントをユーザが確認したものとし、イベント通知機能提供システム3の第1サーバ11に対して、イベントの消去メッセージを送信する(ステップS401)。イベントの消去メッセージには、消去を行う対象の「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」が含まれている。   Subsequently, the service providing server 5 assumes that the user has confirmed the event that has occurred, and transmits an event deletion message to the first server 11 of the event notification function providing system 3 (step S401). The event deletion message includes “user identifier”, “service identifier”, and “content identifier” to be deleted.

第1サーバ11は、サービス提供サーバ5からイベントの消去メッセージを受信すると、その消去処理を第2サーバ12に依頼するリクエストと共に、第2サーバ12に送信する(ステップS402)。続いて、第1サーバ11は、消去メッセージについて処理完了のレスポンスを受信元のサービス提供サーバ5に対して送信する(ステップS403)。   When receiving the event deletion message from the service providing server 5, the first server 11 transmits to the second server 12 a request for requesting the deletion processing to the second server 12 (step S402). Subsequently, the first server 11 transmits a process completion response for the deletion message to the service providing server 5 that is the reception source (step S403).

一方、第1サーバ11から消去処理を依頼された第2サーバ12は、まず、DBサーバ13に対してイベント消去リクエストを送信する(ステップS404)。これを受けたDBサーバ13は、まず、イベントテーブル(図3)から、消去対象の「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」をキーとしてイベント情報を消去する(ステップS405)。   On the other hand, the second server 12 requested to delete from the first server 11 first transmits an event deletion request to the DB server 13 (step S404). Upon receiving this, the DB server 13 first deletes the event information from the event table (FIG. 3) using the “user identifier”, “service identifier”, and “content identifier” to be deleted as keys (step S405).

また、DBサーバ13は、該当するイベント情報を消去した後のイベントテーブルからコンテンツ情報を抽出し、コンテンツテーブル(図4)に登録する。これは、消去後のイベント情報をコンテンツ情報に反映するためである。   Further, the DB server 13 extracts content information from the event table after deleting the corresponding event information, and registers it in the content table (FIG. 4). This is because the event information after erasure is reflected in the content information.

DBサーバ13は、消去を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS406)。次に、第2サーバ12は、DBサーバ13に対してサマリー作成リクエストを送信する(ステップS407)。これは、消去後のイベント情報をサマリー情報に反映するためである。これを受けたDBサーバ13は、サマリー情報を作成し(ステップS408)、第2サーバ12に対して送信する(ステップS409)。   When the DB server 13 completes the deletion, the DB server 13 transmits a notification to that effect to the second server 12 (step S406). Next, the second server 12 transmits a summary creation request to the DB server 13 (step S407). This is because the event information after erasure is reflected in the summary information. Receiving this, the DB server 13 creates summary information (step S408) and transmits it to the second server 12 (step S409).

第2サーバ12は、DBサーバ13からサマリー情報を受信すると、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS410)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS411)。   When receiving the summary information from the DB server 13, the second server 12 transmits a summary registration request to the cache server 14 (step S410). Receiving this, the cache server 14 sets the summary information in a new record of the cache table (FIG. 5) and performs registration (step S411).

キャッシュサーバ14は、サマリー情報の登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS412)。第2サーバ12は、完了の通知を第1サーバ11に対して送信する(ステップS413)。   When the registration of the summary information is completed, the cache server 14 transmits a notification to that effect to the second server 12 (step S412). The second server 12 transmits a completion notification to the first server 11 (step S413).

これを受けた第1サーバ11は、更新通知を要求するAPが予め設定されている場合には、そのAPに対して更新通知を送信する(ステップS414)。   Receiving this, when the AP that requests the update notification is set in advance, the first server 11 transmits the update notification to the AP (step S414).

なお、前述の処理例では、ユーザによりリンク先URLが指定されたことをトリガーとして、イベントの消去を行うようにしたが、これに限られるものではなく、例えば、サマリー情報やイベント情報に基づいて作成したページデータをユーザ端末7に対して送信したことをトリガーとして、イベントの消去を行うようにすることもできる。   In the above-described processing example, the event is deleted when the link destination URL is designated by the user as a trigger. However, the present invention is not limited to this. For example, based on summary information or event information. It is also possible to delete the event by using the created page data transmitted to the user terminal 7 as a trigger.

(第2サーバ12の詳細な構成)
以下では、図13〜図16を参照し、前述した第2サーバ12の詳細な構成及び動作について説明する。
(Detailed configuration of the second server 12)
Hereinafter, the detailed configuration and operation of the second server 12 described above will be described with reference to FIGS.

図13は、第2サーバ12の詳細構成を示す。第2サーバ12は、複数のサーバ12(12a、…、12x)を組み合わせたサーバファームとして構築されている。すなわち、第2サーバ12は、第1サーバ11からの依頼に応じたイベントの更新系処理(登録処理及び消去処理)を、負荷分散により行うべく集積された複数のサーバ群である。   FIG. 13 shows a detailed configuration of the second server 12. The second server 12 is constructed as a server farm in which a plurality of servers 12 (12a,..., 12x) are combined. That is, the second server 12 is a group of servers integrated to perform event update processing (registration processing and deletion processing) in response to a request from the first server 11 by load distribution.

第2サーバ12は、2台のサーバを組み合わせたグループ(以下、小ファーム)を複数設けることで構成される。サーバファーム全体を構成する個々のサーバには、それぞれを特定するための識別子(以下、farmID)が割り当てられる。例えば、サーバファーム全体で2N台のサーバが設けられる場合、farmIDとして、「0」から「(N−1)+N」までの数値を識別子として各サーバに割り当てることができる(図13参照)。   The second server 12 is configured by providing a plurality of groups (hereinafter, small farms) in which two servers are combined. Each server constituting the entire server farm is assigned an identifier (hereinafter referred to as farmID) for identifying each server. For example, when 2N servers are provided in the entire server farm, a numerical value from “0” to “(N−1) + N” can be assigned to each server as an identifier (see FIG. 13).

第1サーバ11は、イベントの登録依頼を、上記farmIDを指定することにより行う。第1サーバ11により指定されたサーバは、DBサーバ13及びキャッシュサーバ14に対してイベントの登録処理を行う。   The first server 11 makes an event registration request by designating the farmID. The server designated by the first server 11 performs event registration processing for the DB server 13 and the cache server 14.

なお、本実施形態のDBサーバ13及びキャッシュサーバ14についても、複数のサーバを組み合わせたサーバファームとして構築するようにしても良い。そして、この場合は、各ユーザに固有の識別子(ユーザ識別子)とサーバ固有の識別子とを予め紐づけたテーブルなどを用意しておき、そのユーザに関するイベントの管理を担当するサーバを一意に決定するようにすることができる。これにより、あるユーザに関するイベントの発生状況固有のサーバにより管理することができ、データが分散管理されることがない。   Note that the DB server 13 and the cache server 14 of this embodiment may also be constructed as a server farm in which a plurality of servers are combined. In this case, a table in which identifiers unique to each user (user identifiers) and server-specific identifiers are linked in advance is prepared, and a server in charge of managing events related to the users is uniquely determined. Can be. As a result, it is possible to manage by a server specific to the occurrence status of an event related to a certain user, and data is not distributedly managed.

図14は、farmID対応付けテーブルを示す。farmID対応付けテーブルは、複数のサーバ間で互いに対となって小ファームを構成する2台のサーバの組合せが予め定められているテーブルである。小ファームを構成する2台のサーバは、サーバの障害発生時に相互に補い合う関係にある。   FIG. 14 shows a farmID association table. The farmID association table is a table in which a combination of two servers constituting a small farm paired with each other among a plurality of servers is determined in advance. The two servers that make up the small farm are in a mutually complementary relationship when a server failure occurs.

つまり、一方のサーバがダウンすると、そのサーバに対して割り振られていたイベント登録依頼が、同じ小ファーム内の(正常に稼働中の)他方のサーバに対して割り振られる。   That is, when one server goes down, the event registration request assigned to that server is assigned to the other server (operating normally) in the same small farm.

farmID対応付けテーブルは、第1サーバ11の記憶部(メモリなど)に記憶されている。つまり、第1サーバ11は、farmIDを指定してイベント登録依頼を行う予定のサーバがダウンしているとき、farmID対応付けテーブルを参照する。そして、そのfarmID(例えば、図示の「farm_0」)に対応づけられた他方のfarmID(例えば、図示の「farm_(N−1)+1」)を読み出し、読み出したfarmIDを指定して他方のサーバに対してイベント登録依頼を行う。   The farmID association table is stored in the storage unit (memory or the like) of the first server 11. In other words, the first server 11 refers to the farmID association table when the server that is scheduled to perform the event registration request by specifying the farmID is down. Then, the other farmID (for example, “farm_ (N−1) +1” in the figure) associated with the farmID (for example, “farm_0” in the figure) is read out, and the read out farmID is designated to the other server. Request event registration for

図15は、本実施形態の処理例を示すシーケンス図であり、サービス提供サーバ5のAPから送信されたイベントの発生を、DBサーバ13及びキャッシュサーバ14に格納するまでの処理例である。基本的には、図7に示すシーケンス図と同様であるため、同様の内容(図7と同一の符号で示された処理など)については説明を省略する。   FIG. 15 is a sequence diagram illustrating a processing example of the present embodiment, and is a processing example until the occurrence of an event transmitted from the AP of the service providing server 5 is stored in the DB server 13 and the cache server 14. Since it is basically the same as the sequence diagram shown in FIG. 7, the description of the same contents (such as processing indicated by the same reference numerals as in FIG. 7) is omitted.

図15において、第1サーバ11は、ステップS103においてサービス提供サーバ5から送信されたイベントの発生メッセージを受信すると、依頼先サーバ決定処理を行う(ステップS501)。依頼先サーバ決定処理では、前述の第2サーバ12のサーバファームのうち、イベントの登録処理を依頼するサーバ(以下、依頼先サーバ)を決定する処理を行う。本処理については、後で図16を参照して説明する。   In FIG. 15, when the first server 11 receives the event occurrence message transmitted from the service providing server 5 in step S103, the first server 11 performs a request destination server determination process (step S501). In the request destination server determination process, a process of determining a server (hereinafter referred to as a request destination server) that requests an event registration process from the server farm of the second server 12 is performed. This process will be described later with reference to FIG.

第1サーバ11は、依頼先サーバ決定処理により決定した依頼先サーバに対して、イベントの登録処理を依頼するリクエストと共に、サービス提供サーバ5から受信したイベントの発生メッセージを送信する(ステップS104)。これを受けた依頼先サーバは、DBサーバ13に対してイベント登録リクエストを送信する(ステップS106)。   The first server 11 transmits an event occurrence message received from the service providing server 5 to the request destination server determined by the request destination server determination processing together with a request for requesting event registration processing (step S104). Receiving this, the request destination server transmits an event registration request to the DB server 13 (step S106).

図16は、前述の依頼先サーバ決定処理の処理例を示すフローチャート図である。   FIG. 16 is a flowchart showing an example of the request destination server determination process described above.

まず、第1サーバ11は、イベントの発生メッセージに含まれる「ユーザ識別子」を取得し、その取得した「ユーザ識別子」を数値化情報(=k)に変換する(ステップS511)。   First, the first server 11 acquires the “user identifier” included in the event occurrence message, and converts the acquired “user identifier” into numerical information (= k) (step S511).

「ユーザ識別子」が、英数字の組合せで構成されるユーザIDである場合、第1サーバ11は、ユーザIDに含まれる文字(英字や記号)部分を数値に変換することで、ユーザID全体を数値化することができる。文字の数値化には、英字(A〜Z)や記号(−、/)などの文字に一意の数字が予め対応づけられたデータ(例えば、ASCII文字コード)を用いて行うことができる。例えば、ASCIIコードでは、英字「A〜Z」が数値「65〜90」に対応付けられており、ユーザIDが「AZ1111」だとすると、数値化情報として「65901111」を得ることができる。また、得られた数字列をいくつかに分け、それらを加えたものを数値化情報とすることもできる(例えば、65+90+11+11=177)。   When the “user identifier” is a user ID composed of a combination of alphanumeric characters, the first server 11 converts the character (alphabet or symbol) part included in the user ID into a numerical value, thereby converting the entire user ID. Can be quantified. The digitization of characters can be performed using data (for example, ASCII character codes) in which unique numbers are previously associated with characters such as letters (A to Z) and symbols (−, /). For example, in the ASCII code, if the letters “AZ” are associated with the numerical values “65-90” and the user ID is “AZ1111”, “6590111” can be obtained as the digitized information. Moreover, it is also possible to divide the obtained number string into several parts and add them to make the digitized information (for example, 65 + 90 + 11 + 11 = 177).

次に、第1サーバ11は、第2サーバ12のサーバファームを構成する全てのサーバ数(=n)を取得する(ステップS512)。続いて、第1サーバ11は、演算式「Result=k mod n」を実行する(ステップS513)。つまり、第1サーバ11は、「ユーザ識別子」の数値化情報(=k)を、サーバファームの全サーバ数(=n)で除算し、その余りを演算結果として出力する。たとえば、「ユーザ識別子」の数値化情報(=k)が「177」であり、全サーバ数(=n)が「6」とすると、「177」が「6」で除算されて剰余値「3」が算出される。   Next, the first server 11 acquires the number of all servers (= n) constituting the server farm of the second server 12 (step S512). Subsequently, the first server 11 executes an arithmetic expression “Result = k mod n” (step S513). That is, the first server 11 divides the digitized information (= k) of the “user identifier” by the total number of servers in the server farm (= n), and outputs the remainder as a calculation result. For example, when the digitized information (= k) of “user identifier” is “177” and the total number of servers (= n) is “6”, “177” is divided by “6” to obtain a remainder value “3”. Is calculated.

次に、第1サーバ11は、演算結果をfarmIDとして取得する(ステップS514)。続いて、第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働しているかどうかを判別する(ステップS515)。   Next, the first server 11 acquires the calculation result as farmID (step S514). Subsequently, the first server 11 determines whether or not the server corresponding to the acquired farmID is operating normally (step S515).

第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働していると判別した場合、取得したfarmIDに該当するサーバを依頼先サーバとして決定する(ステップS517)。   If the first server 11 determines that the server corresponding to the acquired farmID is operating normally, the first server 11 determines the server corresponding to the acquired farmID as a request destination server (step S517).

一方、第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働していない(サーバダウンである)と判別した場合、farmID対応付けテーブル(図14)を参照し、そのfarmIDに対応づけられた他方のfarmIDを取得する(ステップS516)。そして、取得したfarmIDに該当するサーバを依頼先サーバとして決定する(ステップS517)。   On the other hand, if the first server 11 determines that the server corresponding to the acquired farmID is not operating normally (the server is down), the first server 11 refers to the farmID association table (FIG. 14) and associates it with the farmID. The other farmID obtained is acquired (step S516). Then, a server corresponding to the acquired farmID is determined as a request destination server (step S517).

<総括>
以上説明したように、本実施形態のイベント通知機能提供システム3では、それぞれで異なるAPにおいて任意に定義されたイベントの発生を横断的に管理することができ、一のAPにおいて任意に定義されたイベントの発生を他のAPに通知する仕組みを提供することができる。これにより、ユーザからすれば、利用しているAP間の隔たりを意識することなく、各APでのイベントの発生を知ることができるようになる。
<Summary>
As described above, in the event notification function providing system 3 according to the present embodiment, occurrence of events arbitrarily defined in different APs can be managed across the APs, and arbitrarily defined in one AP. It is possible to provide a mechanism for notifying other APs of the occurrence of an event. Thus, the user can know the occurrence of an event at each AP without being aware of the gap between the APs being used.

また、本実施形態のイベント通知機能提供システム3では、1人のユーザに関するイベントの発生の処理は1つの固有のサーバにより行われ、かつ、その固有のサーバには障害時に切り替えられるサーバが割り当てられているので、1人のユーザに関するイベントの発生の処理が複数のサーバに跨って振り分けられることはなく、個々のユーザに関するイベントの発生順序を確保することができる。   In the event notification function providing system 3 according to the present embodiment, an event generation process related to one user is performed by one unique server, and a server that can be switched in the event of a failure is assigned to the unique server. Therefore, the event generation process related to one user is not distributed across a plurality of servers, and the generation order of events related to individual users can be ensured.

また、個々のユーザに関するイベントの発生を処理するサーバを、ユーザ識別子から一意に、かつ動的に決定することができるようにしたので、スケールアウトの際にも容易に対処できるようになり、スケーラビリティの確保につながる。   In addition, since the server that handles the occurrence of events related to individual users can be determined uniquely and dynamically from the user identifier, it is possible to easily cope with scale-out and scalability. It leads to securing of.

なお、前述の依頼先サーバの決定処理は一例であるから、その具体的な内容は、「各ユーザに固有の識別子を用いてそのユーザに関するイベントの登録処理を担当するサーバを一意に決定する」という目的を逸脱しない範囲で任意に変更可能である。例えば、端末IDなど、ユーザIDとは異なるユーザ識別子を用いる場合や、所定の関数を用いるなど、前述の数値化手法とは異なる手法を採用することができる。   In addition, since the determination process of the above-mentioned request destination server is an example, the specific content is “uniquely determine the server in charge of the event registration process for the user using an identifier unique to each user”. It can be arbitrarily changed without departing from the purpose. For example, a method different from the above-described numerical method such as a case where a user identifier different from the user ID such as a terminal ID is used or a predetermined function is used can be adopted.

また、farmID対応付けテーブル(図14)を参照して、小ファーム内の他方のサーバを決定するようにしたが、これに限らず、テーブルを設けずとも、小ファーム内の他方のサーバを、以下のようにして動的に決定することも可能である。   In addition, the other server in the small farm is determined with reference to the farm ID association table (FIG. 14). However, the present invention is not limited to this. It is also possible to determine dynamically as follows.

サーバファーム全体で2N台のサーバが設けられる場合に、「0」から「(N−1)+N」までの数値を識別子として各サーバに割り当てたとき、一方のサーバの識別子を「x」であるとすると、他方のサーバの識別子を演算式「y=x+N」により決定することができる。例えば、サーバファーム全体で「2N=10」台のサーバが設けられている場合に、一方のサーバが「x=3」であるとき、他方のサーバを「y=8」と決定することができる。このようにすると、2台の組合せを予め定めたテーブルを用意する必要がなくなり、拡張性を持たせるのに好適となる。   When 2N servers are provided in the entire server farm, when the numerical value from “0” to “(N−1) + N” is assigned to each server as an identifier, the identifier of one server is “x”. Then, the identifier of the other server can be determined by the arithmetic expression “y = x + N”. For example, when “2N = 10” servers are provided in the entire server farm, when one server is “x = 3”, the other server can be determined as “y = 8”. . In this way, it is not necessary to prepare a table in which the combination of the two units is determined in advance, which is suitable for providing expandability.

以上、本発明の好適な実施形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。   The present invention has been described above by the preferred embodiments of the present invention. While the invention has been described with reference to specific embodiments, various modifications and changes may be made to the embodiments without departing from the broad spirit and scope of the invention as defined in the claims. Obviously you can. In other words, the present invention should not be construed as being limited by the details of the specific examples and the accompanying drawings.

本実施形態のイベント通知機能提供システム3は、複数のサービスを統合してユーザに提供する一のサービス提供企業が利用可能なことはもちろんであるが、異なるサービス提供企業間でも利用可能である。さらに、ウェブ上のサービスをユーザに提供するサービス提供企業に限らず、社員に業務アプリケーションを使用させて情報の共有を行っているような一般企業においても利用可能である。   The event notification function providing system 3 of this embodiment can be used by a single service providing company that integrates and provides a plurality of services to users, but can also be used by different service providing companies. Furthermore, the present invention is not limited to service providing companies that provide users with services on the Web, but can also be used in general companies that share information by using employees' business applications.

なお、本発明は、一のAPでのイベントの発生を他のAPに対して通知することを要旨とするものであり、そこから先のAP側での処理は、各APにゆだねることができる。本実施形態では、各APは、イベントの発生をユーザに対して通知することにより、他のAPでのイベントの発生をユーザが知ることができるようにしているが、例えばユーザの行動を分析するためのAPであれば、イベントの発生そのものを通知するというよりは、イベントの発生状況を分析した結果を提供することも考えられる。あるAPにおけるコンテンツに対してコメントが付きやすい時間帯を集計する、という具合である。また、イベントの発生状況の分析をイベント通知機能提供システム3側で行い、その結果を各APに対して提供するようにしても良い。   Note that the gist of the present invention is to notify other APs of the occurrence of an event at one AP, and the processing on the AP side ahead can be left to each AP. . In this embodiment, each AP notifies the user of the occurrence of an event so that the user can know the occurrence of an event at another AP. For example, the user's behavior is analyzed. For example, it may be possible to provide an analysis result of an event occurrence state rather than notifying the occurrence of the event itself. For example, a time zone in which comments are easily attached to content in a certain AP is counted. Alternatively, the event occurrence status may be analyzed on the event notification function providing system 3 side, and the result may be provided to each AP.

1 システム
3 イベント通知機能提供システム
5 サービス提供サーバ
7 ユーザ端末
11 第1サーバ
12 第2サーバ
13 DBサーバ
14 キャッシュサーバ
15 イベント消去手段
16 イベント記憶手段
31 イベント受信手段
32 イベント登録手段
33 イベント読出手段
34 イベント通知手段
35 イベント消去手段
36 イベント記憶手段
51 入力受付手段
52 入力情報処理手段
53 イベント送信手段
54 イベント参照手段
55 イベント受信手段
56 イベントデータ提供手段
70 ページ画面
71 イベント通知領域
72 AP単位通知領域
73 コンテンツ単位通知領域
74 イベント一覧通知領域
DESCRIPTION OF SYMBOLS 1 System 3 Event notification function provision system 5 Service provision server 7 User terminal 11 1st server 12 2nd server 13 DB server 14 Cache server 15 Event deletion means 16 Event storage means 31 Event reception means 32 Event registration means 33 Event reading means 34 Event notification means 35 Event deletion means 36 Event storage means 51 Input reception means 52 Input information processing means 53 Event transmission means 54 Event reference means 55 Event reception means 56 Event data provision means 70 Page screen 71 Event notification area 72 AP unit notification area 73 Content unit notification area 74 Event list notification area

Claims (3)

ウェブ上のアプリケーションで任意に定義されたイベントの発生順序を確保するためのサーバ構成を有し、1のユーザに対してサービスを提供する各アプリケーション間でイベントの発生を通知するイベント通知機能提供システムであって、
前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する第1サーバと、
前記第1サーバからの依頼に応じ、前記イベントの発生を前記ユーザ識別子に関連付けて記憶手段に登録する登録処理を行複数の第2サーバと、を備え、
前記第1サーバは、
前記ユーザ識別子に応じて、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定し、当該依頼先の第2サーバが登録処理を実行できない場合に、前記複数の第2サーバ間で互いに組となる第2サーバが予め定められているテーブルを参照して、当該組に含まれる他の第2サーバに対して、ユーザ単位での前記イベントの発生の登録処理を依頼することを特徴とするイベント通知機能提供システム。
A system for providing an event notification function having a server configuration for securing an event occurrence order arbitrarily defined in an application on the web, and notifying the occurrence of an event between each application providing a service to one user Because
A first server that receives an occurrence of an event transmitted from a service providing server that manages each application together with a user identifier;
The response to the request from the first server, and a plurality of second server cormorants line registration process for registering in the storage means in association with the user identifier the occurrence of the event,
The first server is
In response to the user identifier, the second server is a request destination of the registration process of occurrence of the event, uniquely determined per user, if the second server of the request destination is unable to perform the registration processing, the plurality the second refers to the table to which the second server to which the set to one another is predetermined between servers, to the other second server included in the group, the registration process of occurrence of the event on the user units An event notification function providing system characterized by requesting.
前記複数の第2サーバのそれぞれには識別子としての数値が予め割り当てられるものであり、
前記第1サーバは、
前記ユーザ識別子を数値化情報に変換し、その数値化情報に対して所定の演算処理を行った結果得られた数値から、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定することを特徴とする請求項1に記載のイベント通知機能提供システム。
A numerical value as an identifier is assigned in advance to each of the plurality of second servers,
The first server is
Wherein a user identifier is converted into digitized information, from the value obtained as a result of performing the predetermined operation processing on the digitized information, the second server is a request destination of the registration process of occurrence of the event, the user The event notification function providing system according to claim 1, wherein the event notification function providing system is determined uniquely for each unit .
ウェブ上のアプリケーションで任意に定義されたイベントの発生順序を確保し1のユーザに対してサービスを提供する各アプリケーション間でイベントの発生を通知するイベント通知機能提供システムの動作方法であって、
第1サーバが、前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する工程と、
複数の第2サーバが、前記第1サーバからの依頼に応じ、前記イベントの発生を前記ユーザ識別子に関連付けて記憶手段に登録する登録処理を行う工程と、
前記第1サーバが、前記ユーザ識別子に応じて、前記イベントの発生の登録処理の依頼先である第2サーバを、ユーザ単位に一意に決定し、当該依頼先の第2サーバが登録処理を実行できない場合に、前記複数の第2サーバ間で互いに組となる第2サーバが予め定められているテーブルを参照して、当該組に含まれる他の第2サーバに対して、ユーザ単位での前記イベントの発生の登録処理を依頼する工程と、を含むことを特徴とするイベント通知機能提供システムの動作方法。
Hoshino sure the order of occurrence of arbitrarily defined event in the application on the web, a method of operating an event notification function provides a system for notifying the occurrence of an event among the applications that provide services for one user ,
First server, the occurrence of an event sent from the service providing server that manages the respective application, comprising: receiving with the user identifier,
A plurality of second servers, and the response to the request from the first server, cormorants line registration processing to register the occurrence of the event in the storage means in association with the user identifier step,
The first server in response to the user identifier, the second server is a request destination of the registration process of occurrence of the event, uniquely determined per user, the second server of the request destination executes the registration process In the case where it is not possible, referring to a table in which the second servers that are paired with each other among the plurality of second servers are determined in advance, the other servers included in the pair are compared with each other on the user basis. And a requesting process for registering the occurrence of an event, and an operation method of an event notification function providing system.
JP2009213278A 2009-09-15 2009-09-15 Event notification function providing system Expired - Fee Related JP5193977B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009213278A JP5193977B2 (en) 2009-09-15 2009-09-15 Event notification function providing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009213278A JP5193977B2 (en) 2009-09-15 2009-09-15 Event notification function providing system

Publications (2)

Publication Number Publication Date
JP2011065245A JP2011065245A (en) 2011-03-31
JP5193977B2 true JP5193977B2 (en) 2013-05-08

Family

ID=43951454

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009213278A Expired - Fee Related JP5193977B2 (en) 2009-09-15 2009-09-15 Event notification function providing system

Country Status (1)

Country Link
JP (1) JP5193977B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105450593B (en) * 2014-08-07 2018-09-25 青岛海尔智能家电科技有限公司 A kind of method and apparatus for registration
JP6888266B2 (en) 2016-10-06 2021-06-16 富士通株式会社 Display control method, display control device and display control program

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4460693B2 (en) * 1999-10-26 2010-05-12 富士通株式会社 Network system with information retrieval function
JP2003264575A (en) * 2002-12-09 2003-09-19 Sony Corp Transmitter
JP4611922B2 (en) * 2006-03-28 2011-01-12 富士通株式会社 Control program, control method, and control apparatus
JP2008015660A (en) * 2006-07-04 2008-01-24 Fuji Electric Holdings Co Ltd Service system and settlement terminal device

Also Published As

Publication number Publication date
JP2011065245A (en) 2011-03-31

Similar Documents

Publication Publication Date Title
JP5069730B2 (en) Event notification function providing device, event notification function providing method, and event notification function providing program
US10972585B2 (en) Establishing a trust association
JP4870011B2 (en) Information search system, information search device, history sharing method, and history sharing processing program
JP2004206517A (en) Hot keyword presentation method and hot site presentation method
JP4833305B2 (en) Hot site presentation system
JP2003091633A (en) Information collecting and managing system and device, terminal device for system, recording medium recording collected information, method of browsing collected information, program and recording medium storing program
JP2007172174A (en) Advertisement presentation method, device and program, and computer-readable recording medium
US20160239533A1 (en) Identity workflow that utilizes multiple storage engines to support various lifecycles
JP2006309380A (en) Web site browsing support system and method, and program
JP5193977B2 (en) Event notification function providing system
JP5211180B2 (en) Database management apparatus, database management program, database management method, database management system
KR101646026B1 (en) Method and system for notifying of online posting
JP5231368B2 (en) Event notification function providing system
JP2013114393A (en) Information retrieval device and program
JP5222882B2 (en) Information providing server, client terminal, and computer program
JP6327613B2 (en) Information sharing system
JP2013137823A (en) Information providing server, client terminal, and computer program
JP4934154B2 (en) Content providing device
JP2000222329A (en) Information communication system and information providing device and user attribute information collecting method and record medium
JP5656254B2 (en) Communication event log creation system, communication event log creation method and program
JP5955610B2 (en) Web page providing device
JP6688018B2 (en) Information sharing server and program
JP2018169770A (en) Information management system, information management method and information management program
JP7098122B1 (en) Article monitoring system, article monitoring method with attention information, computer program
US9497251B2 (en) Serving of web pages according to web site launch times

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120221

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20120321

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120423

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130108

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130204

R150 Certificate of patent or registration of utility model

Ref document number: 5193977

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160208

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees