JP5193977B2 - Event notification function providing system - Google Patents
Event notification function providing system Download PDFInfo
- 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
Links
- 238000000034 method Methods 0.000 claims description 57
- 230000008569 process Effects 0.000 claims description 49
- 238000012545 processing Methods 0.000 claims description 46
- 230000004044 response Effects 0.000 claims description 21
- 241000287463 Phalacrocorax Species 0.000 claims description 4
- 230000006870 function Effects 0.000 description 56
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 230000009471 action Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 230000010365 information processing Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 239000000284 extract Substances 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 235000014510 cooky Nutrition 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
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).
しかし、上記従来の方法では、負荷が軽いサーバから順に処理が振り分けられることから、或るコンテンツについて連続的に発生した複数のイベントがそれぞれ別のサーバに振り分けられる可能性もある。このような場合に、仮に、振り分けられた複数のサーバの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.
以下、図面を参照して、本発明を実施するための形態(以下、実施形態)について説明する。 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
イベント通知機能提供システム3、サービス提供サーバ5及びユーザ端末7は、CPU等の制御装置、メモリやHDD等の記憶装置、通信I/F等の通信装置といったハードウェア資源を有するコンピュータ(単一或いは複数)により構成される。ユーザ端末7は、ユーザが利用するPC(Personal Computer)や携帯電話端末等であり、上記のようなハードウェア資源に加え、キーボタンやタッチパネル等の入力装置、液晶ディスプレイ等の出力装置を備える。
The event notification
(ユーザ端末7)
ユーザ端末7は、一般的なブラウザを備えている。ブラウザは、インターネットの標準プロトコルであるHTTP(Hyper Text Transfer Protocol)等に従い、HTML(Hyper Text Markup Language)等の言語で記述されたページデータの要求、取得及び表示、フォームデータの送信等を行う機能を有している。ユーザは、ユーザ端末7のブラウザを通じて、サービス提供サーバ5により提供されるアプリケーションを利用する。
(User terminal 7)
The
(サービス提供サーバ5)
複数のサービス提供サーバ5は、それぞれ個別のアプリケーション(以下、AP)をユーザ端末7に対して提供し、ウェブ上のサービスを実現する。ウェブ上のサービスの例は、ユーザが記事や写真や動画等といったコンテンツを閲覧したり、ユーザ白身がコンテンツを投稿して他のユーザに公開したり、商取引を行う場を提供するサービスであり、ニュースサービス、SNS(ソーシャルネットワーキングサービス)、オークションサービス、地図情報サービス等が該当する。APは、ユーザ端末7に対して、コンテンツの投稿やコンテンツに対する何らかのアクションの入力や、コンテンツの検索、閲覧等をユーザが行うための各種機能を提供する。
(Service providing server 5)
The plurality of
本実施形態では、各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
サービス提供サーバ5は、一のAPにつき、入力受付手段51と、入力情報処理手段52と、イベント送信手段53と、イベント参照手段54と、イベント受信手段55と、ページデータ提供手段56と、を備えている。
The
入力受付手段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
入力情報処理手段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
イベント送信手段53は、入力情報処理手段52がコンテンツに対するアクションをイベントとして定義した場合に、イベントの発生メッセージをイベント通知機能提供システム3に対して送信する機能を有する。
The
イベント参照手段54は、入力受付手段51が受信したユーザのリクエストに応じて、イベント通知機能提供システム3に対してイベントの参照リクエストを送信する機能を有する。
The event reference unit 54 has a function of transmitting an event reference request to the event notification
イベント受信手段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
ページデータ提供手段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
イベント送信手段53、イベント参照手段54及びイベント受信手段55は、イベント通知機能提供システム3の管理者側から提供されたAPI(Application Program Interface)をAPに組み込むことで実現される機能である。各サービス提供サーバ5が管理するAPとイベント通知機能提供システム3との間の通信は任意の形式とすることができる。
The
(イベント通知機能提供システム3)
一方、イベント通知機能提供システム3は、複数のAPのそれぞれにおいて任意に定義されているイベントの発生を収集し、一括管理し、各APに対して通知する機能を有する。イベント通知機能提供システム3は、イベント受信手段31と、イベント登録手段32と、イベント読出手段33と、イベント通知手段34と、イベント消去手段35と、イベント記憶手段36と、を備えている。
(Event notification function providing system 3)
On the other hand, the event notification
イベント受信手段31は、各AP(より詳しくはイベント送信手段53)からそれぞれ送信されたイベントの発生メッセージを受信する。イベント登録手段32は、イベント受信手段31が受信した各APにおけるイベントの発生メッセージに基づいて、イベント記憶手段36に対するイベントの登録処理を行う。
The
イベント記憶手段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
イベント通知手段34は、イベント読出手段33が読み出したイベントの発生状況を、各AP(より詳しくはイベント受信手段55)に対して送信する。イベント消去手段35は、イベント通知手段34が各APに対して送信したイベントの発生状況のうち、ユーザにより通知の確認が行われたイベントに関するレコードを、イベント記憶手段36から消去する。
The
(イベント通知機能提供システム3のサーバ構成)
図1ではイベント通知機能提供システム3の機能的な構成について説明したが、以下では、図2を参照してハードウェア的な構成について説明する。図2は、本実施形態にかかるイベント通知機能提供システム3のサーバ構成を示す図である。
(Server configuration of event notification function providing system 3)
Although the functional configuration of the event notification
イベント通知機能提供システム3は、第1サーバ11と、第2サーバ12と、データベースサーバ(以下、DBサーバ)13と、キャッシュサーバ14と、を備え、これらの各サーバ11〜14が相互に通信可能に接続されて構成されている。各サーバ11〜14間の通信は、任意の形式とすることができる。各サーバ11〜14は、CPU等の制御装置、メモリやHDD等の記憶装置、通信I/F等の通信装置といったハードウェア資源を有するコンピュータにより構成される。
The event notification
第1サーバ11は、複数のサービス提供サーバ5のそれぞれにより管理されているAPとの窓口となる。つまり、第1サーバ11は、各サービス提供サーバ5からのリクエストを受け付け、処理結果をレスポンスとして返送するフロントエンド部としての機能を有する。第2サーバ12は、第1サーバ11の依頼を受けてイベントの登録処理を行う機能を有する。DBサーバ13及びキャッシュサーバ14は、各APにおいて発生したイベントを管理する。
The
ここで、図1との関係において、第1サーバ11は、前述したイベント受信手段31、イベント読出手段33及びイベント通知手段34として機能する。また、第2サーバ12は、イベント登録手段32及びイベント消去手段35として機能する。さらに、DBサーバ13及びキャッシュサーバ14は、イベント登録手段32、イベント消去手段35及びイベント記憶手段36として機能する。
Here, in relation to FIG. 1, the
(イベントの登録処理)
ここで、本実施形態のイベント通知機能提供システム3は、各APにおいて発生する大量のイベントを処理するため、イベントの登録処理に関して以下のような処理を行うようにしている。
(Event registration process)
Here, the event notification
第1サーバ11は、まず、サービス提供サーバ5からイベントの発生メッセージを受信すると、受信したイベントの登録処理を第2サーバ12に対して依頼する。このとき、第1サーバ11は、第2サーバ12からの処理完了の通知を受け取ることなく、イベントの発生メッセージを受信した直後、イベントの登録処理を行った旨のレスポンスを受信元のサービス提供サーバ5に対して送信する。
First, when receiving an event occurrence message from the
一方で、第1サーバ11から依頼を受けた第2サーバ12は、イベントの登録処理をDBサーバ13及びキャッシュサーバ14に対して行う。
On the other hand, the
このようにして、イベントの登録処理を、各サービス提供サーバ5からのリクエストを直接受け付ける第1サーバ11ではなく、第2サーバ12がバックグラウンドで行うようにしたので、第1サーバ11はイベントの発生メッセージを受信するとそのままサービス提供サーバ5に対してレスポンスを送信できるようになり、各APにおいて発生する大量のイベントを滞りなく処理することができるようになる。また、第1サーバ11は、イベントの登録処理及び読出処理の両方を行うことによる処理負担から解放されるので、イベントの登録処理及び読出処理の双方に関するパフォーマンスを向上させることができる。
In this way, the event registration process is performed not by the
(DBサーバ13のデータ構成)
次に、図3及び図4を参照して、DBサーバ13が備えるデータ構造例について説明する。DBサーバ13は、イベントテーブル(図3)とコンテンツテーブル(図4)と、を備えている。
(Data structure of DB server 13)
Next, a data structure example provided in the
(イベントを個々に管理するイベントテーブル)
イベントテーブル(図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
「ユーザ識別子」は、イベントの発生を通知する対象ユーザを特定するためのデータである。例えば、オークションサービスであれば、入札がつけられた出品物の出品者が有するユーザ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 “
「イベント内容」は、発生したイベントについての付加情報を示すテキストデータである。例えば、イベントを発生させたユーザにより入力された情報の内容であり、オークションサービスであれば、「入札額」や「入札者のユーザ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
(イベントをAP単位で管理するキャッシュテーブル)
次に、図5を参照して、キャッシュサーバ14が備えるデータ構造例について説明する。キャッシュサーバ14は、キャッシュテーブル(図5)を備えている。
(Cache table that manages events in AP units)
Next, an example of a data structure provided in the
キャッシュテーブル(図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
また、サマリー情報には、コンテンツ数に含まれる個々のコンテンツに関するコンテンツ情報が関連付けて記憶されている。これにより、個々のコンテンツの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
イベント定義データ共有リストは、各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
ここで、「サービス識別子」、「コンテンツ識別子」及び「イベント識別子」は、サービス提供サーバ5の運営者により各APで任意に定義された識別子が設定される。
Here, as the “service identifier”, “content identifier”, and “event identifier”, identifiers arbitrarily defined in each AP by the operator of the
識別子の設定を行うに際して、イベント通知機能提供システム3は、サービス提供サーバ5に接続された運営者端末(図示せず)のブラウザに設定用ページデータを送信する。サービス提供サーバ5の運営者は、ブラウザに表示された設定用ページを介して、AP内で任意に定義する識別子を登録し、イベント通知機能提供システム3に対して送信する。
When setting the identifier, the event notification
例えば、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
<動作>
次に、本実施形態のイベント通知機能提供システム3の動作について説明する。
<Operation>
Next, the operation of the event notification
(イベントの登録)
図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
ユーザ端末7のユーザが、ブラウザからサービス提供サーバ5のAPにより提供されるサービスのページを閲覧したい場合、ブラウザからサービス提供サーバ5のAPに対してページリクエストを送信する(ステップS11)。例えば、オークションサービスを例にすると、出品物を閲覧するためのページのリクエストである。このリクエストは、ブラウザにおいて、対象コンテンツのURLを入力するか、他のページに張られたリンクを指定すること等により行われる。
When the user of the
なお、ログイン済みであるかどうかの確認は、例えばセッション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
サービス提供サーバ5は、予め保持されたページデータを取得するか、動的にページデータを作成するかにより、ブラウザに提供するページデータを作成する(ステップS12)。この際、APが提供するコンテンツと、コンテンツに対して何らかのアクションを入力するための画面領域をページデータに含める。
The
続いて、サービス提供サーバ5は、作成したページデータをユーザ端末7に対して送信する(ステップS13)。ページデータはHTTPのレスポンス等に従ってブラウザに送信される。ユーザ端末7は、受信したページデータに基づいてブラウザにページ画面を表示する(ステップS14)。例えば、オークションサービスを例にすると、出品物とともに「入札」及び「入札額」を指定する画面領域が表示されており、その領域に対して入力を行うことで入札を行うことができるようになる。
Subsequently, the
続いて、ユーザ端末7のユーザが、ページ画面のコンテンツに対するアクションとして所望の内容を入力すると、ブラウザからサービス提供サーバ5のAPに対して、入力されたアクションの内容が送信される(ステップS101)。
Subsequently, when the user of the
サービス提供サーバ5は、受信したアクションの内容をデータベースに登録し、その際、イベントの定義付けを行う(ステップS102)。すなわち、新たに発行した「イベント識別子(例えば、入札1)」やユーザによる入力情報の内容を示す「イベント内容(例えば入札額)」を、「コンテンツ識別子(例えば出品物A)」、イベントの通知対象となる「ユーザ識別子(例えば、入札がついた出品物Aの出品者)」、「URL」等とともにデータベースに登録する。
The
続いて、サービス提供サーバ5は、イベントの発生メッセージをイベント通知機能提供システム3の第1サーバ11に対して送信する(ステップS103)。イベントの発生メッセージには、イベントの通知対象となる「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント識別子」、コンテンツの「URL」、「イベント内容」及び「日時」が含まれている。
Subsequently, the
第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
つまり、第1サーバ11は、第2サーバ12による登録処理の完了を待たず、イベントの発生メッセージを受信した後、直ちに、処理完了のレスポンスを返送することになる。
That is, the
一方、第1サーバ11から登録処理を依頼された第2サーバ12は、まず、DBサーバ13に対してイベント登録リクエストを送信する(ステップS106)。これを受けたDBサーバ13は、まず、発生メッセージからイベント情報を抽出し、イベントテーブル(図3)に登録する。続いて、DBサーバ13は、イベントテーブルからコンテンツ情報を生成し、コンテンツテーブル(図4)に登録する(ステップS107)。各テーブルの参照や更新には、SQL(Structured Query Language)等のコマンドが用いられる。
On the other hand, the
より具体的には、DBサーバ13は、第1サーバ11が受信したイベントの発生メッセージから、イベントの通知対象となる「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント識別子」、「イベント内容」及び「日時」の組を抽出し、イベント情報として、イベントテーブルの新たなレコードに設定する。
More specifically, the
また、DBサーバ13は、イベント情報の登録が完了すると、イベントテーブルに記憶されている各イベント情報を、「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」の組をキーとして取りまとめ、そのレコード数を「イベント数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ識別子」、「イベント数」、「イベント識別子」、「URL」及び「日時」の組を抽出し、コンテンツ情報として、コンテンツテーブルの新たなレコードに設定する。
Further, when the registration of the event information is completed, the
DBサーバ13は、イベントテーブル(図3)及びコンテンツテーブル(図4)への登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS108)。
When the
次に、第2サーバ12は、DBサーバ13に対してサマリー作成リクエストを送信する(ステップS109)。これを受けたDBサーバ13は、サマリー情報を作成し(ステップS110)、第2サーバ12に対して送信する(ステップS111)。
Next, the
より具体的には、DBサーバ13は、コンテンツテーブル(図4)において新たなレコードとして登録されたコンテンツ情報を、「ユーザ識別子」及び「サービス識別子」の組をキーとして取りまとめ、そのレコード数を「コンテンツ数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ数」、「コンテンツ識別子」、「イベント識別子」、取りまとめたコンテンツのうち最新のイベントが発生したコンテンツの「URL」、最新のイベントの「イベント内容」及び「日時」からなる項目の組合せをサマリー情報とし、これに個々のコンテンツ情報を紐づける。
More specifically, the
第2サーバ12は、DBサーバ13からサマリー情報を受信すると、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS112)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS113)。なお、サマリー登録リクエストは、DBサーバ13からキャッシュサーバ14に対して行われるようにしても良い。
When receiving the summary information from the
キャッシュサーバ14は、サマリー情報の登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS114)。第2サーバ12は、イベントの登録完了の通知を第1サーバ11に対して送信する(ステップS115)。
When the registration of the summary information is completed, the
これを受けた第1サーバ11は、更新通知を要求するAPが予め設定されている場合には、その対象となるAPに対して更新通知を送信する(ステップS116)。
The
(イベントの参照)
図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
(イベントの参照:サマリー一覧)
まず、図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
サービス提供サーバ5は、ユーザ端末7のブラウザからAPに対するページリクエストを受信すると、第1サーバ11に対して、イベント参照リクエスト「サマリー一覧」を送信する(ステップS202)。イベント参照リクエストには、当該リクエストを行ったユーザのユーザ識別子が含まれている。
When receiving the page request for the AP from the browser of the
イベント参照リクエストを受信した第1サーバ11は、イベント参照リクエスト「サマリー一覧」をキャッシュサーバ14に対して送信する(ステップS203)。
The
イベント参照リクエストを受信したキャッシュサーバ14は、リクエストを行った「ユーザ識別子」をキーとしてキャッシュテーブル(図5)を参照し、対象となるサマリー情報を検索する(ステップS204)。
The
(キャッシュヒットありの場合)
ステップ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
サマリー情報を受信した第1サーバ11は、サマリー情報をサービス提供サーバ5に対して送信する(ステップS206)。
The
サマリー情報を受信したサービス提供サーバ5は、サマリー情報に基づいてページデータを作成し(ステップS207)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステップS208)。
The
ページデータを受信したユーザ端末7のブラウザはページ画面を表示する(ステップS209)。図9は、ブラウザのページ画面70の例を示している。ページ画面70には、イベント通知領域71が表示されており、その領域内において、サマリー情報に基づいて作成されたAP単位通知領域72及びコンテンツ単位通知領域73が表示されている。
The browser of the
AP単位通知領域72には、ユーザに閲するイベントの発生をAP単位で通知するメッセージが表示される。例えば、「オークションにおいて2つの出品物に入札があります」、「掲示板において1件のトピックに対して新着コメントがあります」といったメッセージが表示され、イベントが発生したAP名とそのAPにおいてイベントが発生したコンテンツの数がユーザに通知される。
In the AP
一方、コンテンツ単位通知領域73には、ユーザに関するイベントの発生をコンテンツ単位で通知するメッセージが表示される。例えば、「オークションの出品物Aに2件の入札があります」、「オークションの出品物Bに1件の入札があります」というように、イベントが発生したAP名及びコンテンツ名とそのコンテンツに対して発生したイベントの数をユーザに通知するメッセージが表示される。
On the other hand, in the content
また、AP単位通知領域72には、AP毎に、最新のイベントが発生したコンテンツへのリンク先URLが埋め込まれる。一方、コンテンツ単位通知領域73には、コンテンツ毎に、そのコンテンツへのリンク先URLが埋め込まれる。
Further, in the AP
リンク先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
通知を受信した第1サーバ11は、イベント参照リクエスト「サマリー一覧」をDBサーバ13に対して送信する(ステップS211)。
The
イベント参照リクエストを受信したDBサーバ13は、リクエストを行った「ユーザ識別子」をキーとしてコンテンツテーブル(図4)を参照し、サマリー情報を作成して(ステップS212)、第1サーバ11に対して送信する(ステップS213)。
The
より具体的には、DBサーバ13は、コンテンツテーブル(図4)において新たなレコードとして登録されたコンテンツ情報を、リクエストを行った「ユーザ識別子」をキーに抽出する。そして、これらを「サービス識別子」をキーとして「サービス識別子」単位で取りまとめ、そのレコード数を「コンテンツ数」としてカウントする。そして、「ユーザ識別子」、「サービス識別子」、「コンテンツ数」、「コンテンツ識別子」、「イベント識別子」、取りまとめたコンテンツのうち最新のイベントが発生したコンテンツの「URL」、最新のイベントの「テキスト」及び「日時」からなる組をサマリー情報とし、これに個々のコンテンツ情報を紐づける。
More specifically, the
サマリー情報を受信した第1サーバ11は、サマリー情報をサービス提供サーバ5に対して送信する(ステップS214)。
The
サマリー情報を受信したサービス提供サーバ5は、サマリー情報に基づいてページデータを作成し(ステップS215)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステップS216)。ベージデータを受信したユーザ端末7のブラウザはページ画面(図9参照)を表示する(ステップS217)。
The
また、第1サーバ11は、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS218)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS219)。これにより次回以降の参照時にはキャッシュサーバ14にアクセスすればよい。
The
(イベントの参照:イベント一覧)
次に、図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
サービス提供サーバ5は、ユーザ端末7のブラウザからAPに対するページリクエストを受信すると、第1サーバ11に対して、イベントの参照リクエスト「イベント一覧」を送信する(ステップS302)。イベントの参照リクエストには、送信元のサービス識別子や、当該リクエストを行ったユーザのユーザ識別子(例えばユーザID)が含まれている。
When receiving the page request for the AP from the browser of the
イベントの参照リクエストを受信した第1サーバ11は、イベントの参照リクエストをDBサーバ13に対して送信する(ステップS303)。イベントの参照リクエストを受信したDBサーバ13は、リクエストを行った「ユーザ識別子」をキーとしてイベントテーブル(図3)を参照し、対象となるイベント情報をサービス識別子ごとに取りまとめ、一覧として取得する(ステップS304)。DBサーバ13は、取得したイベント情報の一覧を第1サーバ11に対して送信する(ステップS305)。
The
イベント情報の一覧を受信した第1サーバ11は、イベント情報の一覧をサービス提供サーバ5に対して送信する(ステップS306)。イベント情報の一覧を受信したサービス提供サーバ5は、イベント情報の一覧に基づいてページデータを作成し(ステップS307)、ページリクエストのあったユーザ端末7のブラウザに送信する(ステッブS308)。
The
ページデータを受信したユーザ端末7のブラウザはページ画面を表示する(ステップS309)。図11は、ブラウザのページ画面70の例を示している。ページ画面70には、イベント通知領域71が表示されており、その領域内において、イベント情報の一覧に基づいて作成されたイベント一覧通知領域74が表示されている。
The browser of the
イベント一覧通知領域74には、リクエストを行ったユーザに対するイベントの発生をイベント単位で(つまり、個々のイベントを詳細に)通知するメッセージが表示される。例えば、「オークションの出品物Aに対する入札は以下です」とし、「入札1:詳細(時間/入札者/入札額)」、「入札2:詳細(時間/入札者/入札額)」といったメッセージが表示され、発生したイベントが個別に通知される。
In the event
(イベントの消去)
図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
図12において、サービス提供サーバ5は、前述したように、ユーザ端末7に対してページデータを送信し(ステップS21)、ブラウザに表示させる(ステップS22)ことで、イベントの通知を行う(図8及び図10)。その後、ユーザ端末7において、イベントが発生したコンテンツのリンク先URLがユーザにより指定(クリック)されると(ステップS23)、リンク先URLが示すウェブページのページリクエストがサービス提供サーバ5に対して送信される(ステップS24)。
In FIG. 12, the
これを受けたサービス提供サーバ5は、そのページリクエストを処理する(ステップS25)。例えば、他のサービス提供サーバ5で管理されるAP内のコンテンツであれば、そのページリクエストを他のサービス提供サーバ5に受け渡す。
Receiving this, the
続いて、サービス提供サーバ5は、発生したイベントをユーザが確認したものとし、イベント通知機能提供システム3の第1サーバ11に対して、イベントの消去メッセージを送信する(ステップS401)。イベントの消去メッセージには、消去を行う対象の「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」が含まれている。
Subsequently, the
第1サーバ11は、サービス提供サーバ5からイベントの消去メッセージを受信すると、その消去処理を第2サーバ12に依頼するリクエストと共に、第2サーバ12に送信する(ステップS402)。続いて、第1サーバ11は、消去メッセージについて処理完了のレスポンスを受信元のサービス提供サーバ5に対して送信する(ステップS403)。
When receiving the event deletion message from the
一方、第1サーバ11から消去処理を依頼された第2サーバ12は、まず、DBサーバ13に対してイベント消去リクエストを送信する(ステップS404)。これを受けたDBサーバ13は、まず、イベントテーブル(図3)から、消去対象の「ユーザ識別子」、「サービス識別子」及び「コンテンツ識別子」をキーとしてイベント情報を消去する(ステップS405)。
On the other hand, the
また、DBサーバ13は、該当するイベント情報を消去した後のイベントテーブルからコンテンツ情報を抽出し、コンテンツテーブル(図4)に登録する。これは、消去後のイベント情報をコンテンツ情報に反映するためである。
Further, the
DBサーバ13は、消去を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS406)。次に、第2サーバ12は、DBサーバ13に対してサマリー作成リクエストを送信する(ステップS407)。これは、消去後のイベント情報をサマリー情報に反映するためである。これを受けたDBサーバ13は、サマリー情報を作成し(ステップS408)、第2サーバ12に対して送信する(ステップS409)。
When the
第2サーバ12は、DBサーバ13からサマリー情報を受信すると、キャッシュサーバ14に対して、サマリー登録リクエストを送信する(ステップS410)。これを受けたキャッシュサーバ14は、サマリー情報をキャッシュテーブル(図5)の新たなレコードに設定し、登録を行う(ステップS411)。
When receiving the summary information from the
キャッシュサーバ14は、サマリー情報の登録を完了すると、その旨の通知を第2サーバ12に対して送信する(ステップS412)。第2サーバ12は、完了の通知を第1サーバ11に対して送信する(ステップS413)。
When the registration of the summary information is completed, the
これを受けた第1サーバ11は、更新通知を要求するAPが予め設定されている場合には、そのAPに対して更新通知を送信する(ステップS414)。
Receiving this, when the AP that requests the update notification is set in advance, the
なお、前述の処理例では、ユーザによりリンク先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
(第2サーバ12の詳細な構成)
以下では、図13〜図16を参照し、前述した第2サーバ12の詳細な構成及び動作について説明する。
(Detailed configuration of the second server 12)
Hereinafter, the detailed configuration and operation of the
図13は、第2サーバ12の詳細構成を示す。第2サーバ12は、複数のサーバ12(12a、…、12x)を組み合わせたサーバファームとして構築されている。すなわち、第2サーバ12は、第1サーバ11からの依頼に応じたイベントの更新系処理(登録処理及び消去処理)を、負荷分散により行うべく集積された複数のサーバ群である。
FIG. 13 shows a detailed configuration of the
第2サーバ12は、2台のサーバを組み合わせたグループ(以下、小ファーム)を複数設けることで構成される。サーバファーム全体を構成する個々のサーバには、それぞれを特定するための識別子(以下、farmID)が割り当てられる。例えば、サーバファーム全体で2N台のサーバが設けられる場合、farmIDとして、「0」から「(N−1)+N」までの数値を識別子として各サーバに割り当てることができる(図13参照)。
The
第1サーバ11は、イベントの登録依頼を、上記farmIDを指定することにより行う。第1サーバ11により指定されたサーバは、DBサーバ13及びキャッシュサーバ14に対してイベントの登録処理を行う。
The
なお、本実施形態のDBサーバ13及びキャッシュサーバ14についても、複数のサーバを組み合わせたサーバファームとして構築するようにしても良い。そして、この場合は、各ユーザに固有の識別子(ユーザ識別子)とサーバ固有の識別子とを予め紐づけたテーブルなどを用意しておき、そのユーザに関するイベントの管理を担当するサーバを一意に決定するようにすることができる。これにより、あるユーザに関するイベントの発生状況固有のサーバにより管理することができ、データが分散管理されることがない。
Note that the
図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
図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
図15において、第1サーバ11は、ステップS103においてサービス提供サーバ5から送信されたイベントの発生メッセージを受信すると、依頼先サーバ決定処理を行う(ステップS501)。依頼先サーバ決定処理では、前述の第2サーバ12のサーバファームのうち、イベントの登録処理を依頼するサーバ(以下、依頼先サーバ)を決定する処理を行う。本処理については、後で図16を参照して説明する。
In FIG. 15, when the
第1サーバ11は、依頼先サーバ決定処理により決定した依頼先サーバに対して、イベントの登録処理を依頼するリクエストと共に、サービス提供サーバ5から受信したイベントの発生メッセージを送信する(ステップS104)。これを受けた依頼先サーバは、DBサーバ13に対してイベント登録リクエストを送信する(ステップS106)。
The
図16は、前述の依頼先サーバ決定処理の処理例を示すフローチャート図である。 FIG. 16 is a flowchart showing an example of the request destination server determination process described above.
まず、第1サーバ11は、イベントの発生メッセージに含まれる「ユーザ識別子」を取得し、その取得した「ユーザ識別子」を数値化情報(=k)に変換する(ステップS511)。
First, the
「ユーザ識別子」が、英数字の組合せで構成されるユーザ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
次に、第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
次に、第1サーバ11は、演算結果をfarmIDとして取得する(ステップS514)。続いて、第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働しているかどうかを判別する(ステップS515)。
Next, the
第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働していると判別した場合、取得したfarmIDに該当するサーバを依頼先サーバとして決定する(ステップS517)。
If the
一方、第1サーバ11は、取得したfarmIDに該当するサーバが正常に稼働していない(サーバダウンである)と判別した場合、farmID対応付けテーブル(図14)を参照し、そのfarmIDに対応づけられた他方のfarmIDを取得する(ステップS516)。そして、取得したfarmIDに該当するサーバを依頼先サーバとして決定する(ステップS517)。
On the other hand, if the
<総括>
以上説明したように、本実施形態のイベント通知機能提供システム3では、それぞれで異なるAPにおいて任意に定義されたイベントの発生を横断的に管理することができ、一のAPにおいて任意に定義されたイベントの発生を他のAPに通知する仕組みを提供することができる。これにより、ユーザからすれば、利用しているAP間の隔たりを意識することなく、各APでのイベントの発生を知ることができるようになる。
<Summary>
As described above, in the event notification
また、本実施形態のイベント通知機能提供システム3では、1人のユーザに関するイベントの発生の処理は1つの固有のサーバにより行われ、かつ、その固有のサーバには障害時に切り替えられるサーバが割り当てられているので、1人のユーザに関するイベントの発生の処理が複数のサーバに跨って振り分けられることはなく、個々のユーザに関するイベントの発生順序を確保することができる。
In the event notification
また、個々のユーザに関するイベントの発生を処理するサーバを、ユーザ識別子から一意に、かつ動的に決定することができるようにしたので、スケールアウトの際にも容易に対処できるようになり、スケーラビリティの確保につながる。 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
なお、本発明は、一の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
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
Claims (3)
前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する第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.
前記第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サーバが、前記各アプリケーションを管理するサービス提供サーバから送信されたイベントの発生を、ユーザ識別子とともに受信する工程と、
複数の第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.
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)
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)
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 |
-
2009
- 2009-09-15 JP JP2009213278A patent/JP5193977B2/en not_active Expired - Fee Related
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 |