JP2017062620A - 配信制御プログラム、配信制御方法、及び情報処理装置 - Google Patents

配信制御プログラム、配信制御方法、及び情報処理装置 Download PDF

Info

Publication number
JP2017062620A
JP2017062620A JP2015187323A JP2015187323A JP2017062620A JP 2017062620 A JP2017062620 A JP 2017062620A JP 2015187323 A JP2015187323 A JP 2015187323A JP 2015187323 A JP2015187323 A JP 2015187323A JP 2017062620 A JP2017062620 A JP 2017062620A
Authority
JP
Japan
Prior art keywords
distribution
load
information processing
specific information
storage unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2015187323A
Other languages
English (en)
Other versions
JP6520607B2 (ja
Inventor
政則 久保
Masanori Kubo
政則 久保
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2015187323A priority Critical patent/JP6520607B2/ja
Publication of JP2017062620A publication Critical patent/JP2017062620A/ja
Application granted granted Critical
Publication of JP6520607B2 publication Critical patent/JP6520607B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

【課題】他の装置からのアクセスに応じて処理を実行する装置の負荷を適切に制御する。【解決手段】特定の情報処理装置の負荷の情報を取得しS19、取得した特定の情報処理装置の負荷の情報に基づく特定の情報処理装置の負荷の予測値の変動に応じてS23、特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定するS27。【選択図】図11

Description

本発明は、データの配信技術に関する。
EC(Electronic Commerce)サイトを運営する事業者は、メールマガジン或いはプッシュ通知等によってワントゥワンマーケティング(One to One marketing)を行う。ワントゥワンマーケティングとは、個々の顧客の趣向等に基づいて、顧客に対して個別に行うマーケティングのことである。
但し、メールマガジン或いはプッシュ通知等を受け取ったユーザが一度にECサイトを訪問した場合、ECサイト用のウェブサーバの負荷が上昇し、レスポンスの低下やウェブサーバのダウンといった事態を招くことがある。従来技術は、メール等の配信に起因して発生するウェブサーバの負荷の制御には着目していない。
特開2001−217864号公報
従って、本発明の目的は、1つの側面では、他の装置からのアクセスに応じて処理を実行する装置の負荷を適切に制御するための技術を提供することである。
1つの態様では、特定の情報処理装置の負荷の情報を取得し、取得した特定の情報処理装置の負荷の情報に基づく特定の情報処理装置の負荷の予測値の変動に応じて、特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する処理を含む。
1つの側面では、他の装置からのアクセスに応じて処理を実行する装置の負荷を適切に制御できるようになる。
図1は、本実施の形態の概要を説明するための図である。 図2は、本実施の形態の概要を説明するための図である。 図3は、本実施の形態の概要を説明するための図である。 図4は、第1の実施の形態のシステム概要を示す図である。 図5は、仮想ウェブサーバの機能ブロック図である。 図6は、負荷データ格納部に格納されるデータの一例を示す図である。 図7は、仮想バッチサーバの機能ブロック図である。 図8は、顧客データ格納部に格納されるデータの一例を示す図である。 図9は、仮想配信サーバの機能ブロック図である。 図10は、仮想ウェブサーバが実行する処理の処理フローを示す図である。 図11は、仮想バッチサーバが実行する処理の処理フローを示す図である。 図12は、第1データ格納部に格納されるデータの一例を示す図である。 図13は、第2データ格納部に格納されるデータの一例を示す図である。 図14は、配信計画データ格納部に格納されるデータの一例を示す図である。 図15は、仮想配信サーバが実行する処理の処理フローを示す図である。 図16は、仮想バッチサーバの機能ブロック図である。 図17は、顧客データ格納部に格納されるデータの一例を示す図である。 図18は、仮想バッチサーバが実行する処理の処理フローを示す図である。 図19は、仮想バッチサーバが実行する処理の処理フローを示す図である。 図20は、配信計画データ格納部に格納されるデータの一例を示す図である。 図21は、仮想配信サーバが実行する処理の処理フローを示す図である。 図22は、仮想バッチサーバの機能ブロック図である。 図23は、顧客データ格納部に格納されるデータの一例を示す図である。 図24は、仮想バッチサーバが実行する処理の処理フローを示す図である。 図25は、第3データ格納部に格納されるデータの一例を示す図である。 図26は、情報処理システムの構成を示す図である。 図27は、コンピュータの機能ブロック図である。
[本実施の形態の概要]
例えば、ECサイト用のウェブサーバの負荷(ここでは、CPU(Central Processing Unit)負荷)が、おおよそ図1に示すように変動するとする。図1においては、縦軸がウェブサーバの負荷を表し、横軸が時刻を表す。
ここで、ECサイトのURL(Uniform Resource Locator)を含む、特売情報或いはタイムセール等を顧客に通知するためのメールが、ECサイトの多数の顧客の端末に一斉に配信されたとする。これにより、顧客の端末からウェブサーバへのアクセスによって発生する負荷が通常時の負荷に上乗せされることになる。
例えば、10時においてメールが一斉に配信され、配信先からウェブサーバへのアクセスが発生した場合、ウェブサーバの負荷は図2の破線に示すように変動する。すなわち、メール配信の直後から負荷が急激に上昇し、13時あたりまで負荷が高い状態が続いた後、負荷が低い状態に戻る。図2及び図3においては、長方形の図形はメール配信を表し、縦の長さが長いほどメールの配信先数が多いとする。
このように、多数の顧客に対してメールを一斉に配信すると、ウェブサーバの負荷が非常に高い状態に達し、許容される負荷の基準を超えてしまうことがある。許容される負荷の基準を超えると、レスポンスの低下或いはウェブサーバのダウンといった事態を招くことがあるため好ましくない。
そこで本実施の形態においては、メールを一斉に配信するのではなく、配信時点を分散する。但し、単純に各配信時点において同じ数のメールを配信するのではなく、ウェブサーバの負荷に応じて配信先数を変える。例えば図3に示すように、ウェブサーバの負荷が低い状態にある場合には相対的に多数のメールを配信し、ウェブサーバの負荷が高い状態にある場合には相対的に少数のメールを配信する。これにより、図3の破線に示すように、ウェブサーバの負荷を平準化することが可能になる。以下では、より具体的に本実施の形態を説明する。
[実施の形態1]
図4に、第1の実施の形態のシステム概要を示す。第1実施の形態の主要な処理を実行する情報処理装置1は、ECサイトを運営する事業者の物理サーバであり、インターネット3に接続される。顧客端末5a乃至5cは、事業者の顧客が操作する端末であり、例えばパーソナルコンピュータ及びスマートフォン等である。顧客端末5a乃至5cは、インターネット3に接続される。なお、図4の例では顧客端末の数は3であるが、数に限定は無い。
情報処理装置1においては、仮想ウェブサーバ10と、仮想バッチサーバ11と、仮想配信サーバ12とが実行される。仮想ウェブサーバ10と、仮想バッチサーバ11と、仮想配信サーバ12とは仮想マシンであり、互いに通信を行うことができる。
仮想ウェブサーバ10は、顧客端末5a乃至5cから受信したウェブアクセスのメッセージ(例えば、HTTP(HyperText Transfer Protocol)のリクエストメッセージ)を処理する。仮想バッチサーバ11は、仮想配信サーバ12が配信するメール(例えば、SMTP(Simple Mail Transfer Protocol)のメッセージ)の各時間帯の配信先数を決定する処理を実行する。仮想配信サーバ12は、仮想バッチサーバ11の処理結果に従って又は予め定められた設定に従って、配信先の顧客端末に対してメールを配信する。
図5に、仮想ウェブサーバ10の機能ブロック図を示す。仮想ウェブサーバ10は、負荷取得部101と、負荷データ格納部102とを含む。負荷取得部101は、仮想ウェブサーバ10の負荷のデータ(第1の実施の形態においては、CPU負荷。より具体的には、CPU使用率)を、例えば仮想ウェブサーバ10のOS(Operating System)から取得し、負荷データ格納部102に格納する。なお、CPU負荷は、情報処理装置1のCPUのうち仮想ウェブサーバ10に割り当てられたCPUの負荷のことである。但し、仮想ウェブサーバ10に対しては、コア単位でCPUが割り当てられてもよい。
図6に、負荷データ格納部102に格納されるデータの一例を示す。図6の例では、日時のデータと、CPU負荷(単位は%)のデータとが格納される。なお、仮想バッチサーバ11の負荷データ格納部112にも同様のフォーマットでデータが格納される。
図7に、仮想バッチサーバ11の機能ブロック図を示す。仮想バッチサーバ11は、テンプレート格納部110と、顧客データ格納部111と、負荷データ格納部112と、処理部113と、第1データ格納部114と、第2データ格納部115と、配信計画データ格納部116とを含む。処理部113は、第1算出部1130と、第2算出部1131とを含む。
第1算出部1130は、テンプレート格納部110に格納されたデータ及び負荷データ格納部112に格納されたデータに基づき処理を実行し、処理結果を第1データ格納部114及び第2データ格納部115に格納する。第2算出部1131は、第2データ格納部115に格納されたデータ及び顧客データ格納部111に格納されたデータに基づき処理を実行し、処理結果を配信計画データ格納部116に格納する。
図8に、顧客データ格納部111に格納されるデータの一例を示す。図8の例では、各エントリの番号と、顧客番号と、顧客のメールアドレスとが格納される。なお、仮想配信サーバ12の顧客データ格納部121にも同様のフォーマットでデータが格納される。
図9に、仮想配信サーバ12の機能ブロック図を示す。仮想配信サーバ12は、テンプレート格納部120と、顧客データ格納部121と、配信計画データ格納部122と、配信部123とを含む。配信部123は、テンプレート格納部120に格納されたデータ、顧客データ格納部121に格納されたデータ、及び配信計画データ格納部122に格納されたデータに基づき、配信先の顧客端末に対してメールを配信する処理を実行する。
次に、図10乃至15を用いて、第1の実施の形態におけるシステムにおいて行われる処理を説明する。
まず、仮想ウェブサーバ10が実行する処理を説明する。本処理は、例えば一定時間毎に実行される。
仮想ウェブサーバ10の負荷取得部101は、仮想ウェブサーバ10のCPU負荷データをOSから取得する(図10:ステップS1)。
仮想ウェブサーバ10の負荷取得部101は、ステップS1において取得したCPU負荷データを負荷データ格納部102に格納する(ステップS3)。そして処理は終了する。
以上のような処理を実行しておけば、CPU負荷データを後の処理に利用できるようになる。
次に、図11乃至14を用いて、仮想バッチサーバ11が実行する処理を説明する。本処理は、例えば、対象とする時間帯(第1実施の形態においては、9時から18時)の開始より前に実行される。
まず、仮想バッチサーバ11の第1算出部1130は、テンプレート格納部110に格納されている、配信すべきメールのテンプレートが、仮想ウェブサーバ10が提供するECサイトのURLを含むか判定する(図11:ステップS11)。
配信すべきメールのテンプレートがURLを含まない場合(ステップS11:Noルート)、第1算出部1130は、メール配信の要求を生成する(ステップS13)。ステップS13においては、予め定められた設定(例えば、所定の時刻に一括配信をするという設定)に従ったメール配信の要求が生成される。
そして、第1算出部1130は、生成したメール配信の要求を、仮想配信サーバ12に送信する(ステップS15)。そして処理は終了する。
これに対し、配信すべきメールのテンプレートがURLを含む場合(ステップS11:Yesルート)、第1算出部1130は、CPU負荷データの要求を仮想ウェブサーバ10に送信する(ステップS17)。これに応じ、仮想ウェブサーバ10はCPU負荷データの要求を仮想バッチサーバ11から受信し、負荷データ格納部102に格納されたCPU負荷データを読み出す。ここでは、例えば、直近の所定期間についてのCPU負荷データが読み出される。
仮想ウェブサーバ10は、読み出したCPU負荷データを仮想バッチサーバ11に送信する。これに応じ、仮想バッチサーバ11は、CPU負荷データを仮想ウェブサーバ10から受信し(ステップS19)、負荷データ格納部112に格納する。
仮想バッチサーバ11の第1算出部1130は、負荷データ格納部112に格納されたCPU負荷データから、前日について平均CPU負荷のデータを時間帯毎に生成し(ステップS21)、第1データ格納部114に格納する。図12に、第1データ格納部114に格納されるデータの一例を示す。図12の例では、日付のデータと、時間帯を表すデータと、平均CPU負荷のデータとが格納される。ステップS21においては、各時間帯に属する時刻のCPU負荷の平均に相当する平均CPU負荷のデータが生成される。なお、第1の実施の形態においては、0時から9時までの時間帯と18時から24時までの時間帯とを対象としていないが、これらの時間帯をも対象としてもよい。
第1算出部1130は、第1データ格納部114に格納されたデータから、配信先数の比率を時間帯毎に算出し(ステップS23)、第2データ格納部115に格納する。図13に、第2データ格納部115に格納されるデータの一例を示す。図13の例では、日付のデータと、時間帯を表すデータと、平均CPU負荷のデータと、100/平均CPU負荷に相当する値と、配信先数の比率(単位は%)とが算出される。配信先数の比率は、対象の(100/平均CPU負荷)を、同一の日付における(100/平均CPU負荷)の合計で割った数に相当する。これにより、平均CPU負荷が高い時間帯ほど配信先数を少なくすることができる。
第2算出部1131は、顧客データ格納部111に登録されている顧客数(すなわち、メールが配信されるべき配信先の数)を計数する(ステップS25)。
第2算出部1131は、ステップS25において計数された顧客数に配信先数の比率を乗じる処理を各時間帯について実行することで各時間帯の配信先数を算出し(ステップS27)、算出結果を配信計画データ格納部116に格納する。図14に、配信計画データ格納部116に格納されるデータの一例を示す。図14の例では、時間帯を表すデータと、配信先数とが格納される。なお、仮想配信サーバ12の配信計画データ格納部122にも同様のフォーマットでデータが格納される。
第2算出部1131は、配信計画データ格納部116に格納されたデータを含む、メール配信の要求を生成し(ステップS29)、メール配信の要求を仮想配信サーバ12に送信する(ステップS31)。そして処理は終了する。
以上のような処理を実行すれば、仮想ウェブサーバ10の負荷が考慮された配信計画に従ってメールを配信できるようになる。
次に、図15を用いて、仮想配信サーバ12が実行する処理を説明する。
まず、仮想配信サーバ12の配信部123は、メール配信の要求を仮想バッチサーバ11から受信し(図15:ステップS41)、配信計画データ格納部122に格納する。
配信部123は、配信計画データ格納部122に格納されたメール配信の要求が、各時間帯の配信先数の情報を含むか判定する(ステップS43)。メール配信の要求が、各時間帯の配信先数の情報を含む場合(ステップS43:Yesルート)、配信部123は、テンプレート格納部120に格納されたデータ(すなわち、配信すべきメールのテンプレート)に基づきメールを生成する。そして、配信部123は、ステップS43の処理時点が属する日の各時間帯において、メール配信の要求において指定された配信先数のメールを配信する(ステップS45)。そして処理は終了する。ステップS45においては、例えば、各時間帯において配信先数分の顧客がランダムに選択される。
一方、メール配信の要求が、各時間帯の配信先数の情報を含まない場合(ステップS43:Noルート)、配信部123は、テンプレート格納部120に格納されたデータに基づきメールを生成する。そして、配信部123は、メール配信の要求に従って(例えば、10時に一括で)、顧客データ格納部121に登録された各顧客の顧客端末に対してメールを配信する(ステップS47)。そして処理を終了する。
以上のような処理を実行すれば、メールに含まれるURLのクリック等によって発生する、仮想ウェブサーバ10へのアクセスが、仮想ウェブサーバ10の負荷に応じて分散されるようになる。これにより、仮想ウェブサーバ10の負荷を平準化することができるようになる。
[実施の形態2]
次に、第2の実施の形態について説明する。第2の実施の形態においては、各時間帯において配信するメールの数だけではなく、各時間帯の配信先も決定される。
第2の実施の形態のシステム概要は、第1の実施の形態のシステム概要と同じであるが、第2の実施の形態における仮想バッチサーバ11が、第1の実施の形態における仮想バッチサーバ11とは異なる。図16に、第2の実施の形態における仮想バッチサーバ11の機能ブロック図を示す。仮想バッチサーバ11は、テンプレート格納部110と、顧客データ格納部111と、負荷データ格納部112と、処理部113と、第1データ格納部114と、第2データ格納部115と、配信計画データ格納部116とを含む。処理部113は、第1算出部1130と、第2算出部1131と、配信先決定部1132とを含む。
第1算出部1130は、テンプレート格納部110に格納されたデータ及び負荷データ格納部112に格納されたデータに基づき処理を実行し、処理結果を第1データ格納部114及び第2データ格納部115に格納する。第2算出部1131は、第2データ格納部115に格納されたデータ及び顧客データ格納部111に格納されたデータに基づき処理を実行し、処理結果を配信先決定部1132に通知する。配信先決定部1132は、顧客データ格納部111に格納されているデータ及び第2算出部1131から受け取った処理結果に基づき処理を実行し、処理結果を配信計画データ格納部116に格納する。
図17に、第2の実施の形態における顧客データ格納部111に格納されるデータの一例を示す。図17の例では、エントリの番号と、顧客番号と、顧客のメールアドレスと、顧客が購入した商品の金額の合計(期間は、例えば直近の1か月)を表すデータとが格納される。第2の実施の形態においては、購入金額合計が多い顧客が優先度が高い顧客であるとみなされ、より早い時間帯にメールが配信される。なお、第2の実施の形態における仮想配信サーバ12の顧客データ格納部121にも同様のフォーマットでデータが格納される。
次に、図18乃至20を用いて、第2の実施の形態のシステムにおいて行われる処理を説明する。但し、仮想ウェブサーバ10が実行する処理は第1の実施の形態において説明したとおりであるので、仮想バッチサーバ11が実行する処理及び仮想配信サーバ12が実行する処理を説明する。
まず、仮想バッチサーバ11が実行する処理を説明する。本処理は、例えば、対象とする時間帯(第2実施の形態においては、9時から18時)の開始より前に実行される。
仮想バッチサーバ11の第1算出部1130は、テンプレート格納部110に格納されている、配信すべきメールのテンプレートが、仮想ウェブサーバ10が提供するECサイトのURLを含むか判定する(図18:ステップS51)。
配信すべきメールのテンプレートがURLを含まない場合(ステップS51:Noルート)、第1算出部1130は、メール配信の要求を生成する(ステップS53)。ステップS53においては、予め定められた設定(例えば、所定の時刻に一括配信を行うという設定)に従ったメール配信の要求が生成される。本ステップにおいて生成されるメール配信の要求に、メール配信の時間帯を指定するデータを含ませるようにしてもよい。
そして、第1算出部1130は、生成したメール配信の要求を、仮想配信サーバ12に送信する(ステップS55)。そして処理は終了する。
これに対し、配信すべきメールのテンプレートがURLを含む場合(ステップS51:Yesルート)、第1算出部1130は、CPU負荷データの要求を仮想ウェブサーバ10に送信する(ステップS57)。これに応じ、仮想ウェブサーバ10はCPU負荷データの要求を仮想バッチサーバ11から受信し、負荷データ格納部102に格納されたCPU負荷データを読み出す。ここでは、例えば、直近の所定期間についてのCPU負荷データが読み出される。
仮想ウェブサーバ10は、読み出したCPU負荷データを仮想バッチサーバ11に送信する。これに応じ、仮想バッチサーバ11は、CPU負荷データを仮想ウェブサーバ10から受信し(ステップS59)、負荷データ格納部112に格納する。
仮想バッチサーバ11の第1算出部1130は、負荷データ格納部112に格納された負荷データから、前日について平均CPU負荷のデータを時間帯毎に生成し(ステップS61)、第1データ格納部114に格納する。ステップS61においては、各時間帯に属する時刻のCPU負荷の平均に相当する平均CPU負荷のデータが生成される。なお、第2の実施の形態においても、0時から9時までの時間帯と18時から24時までの時間帯とを対象としていないが、これらの時間帯をも対象としてもよい。
第1算出部1130は、第1データ格納部114に格納されたデータから、配信先数の比率を時間帯毎に算出し(ステップS63)、第2データ格納部115に格納する。配信先数の比率の算出方法は、第1の実施の形態の説明において述べたとおりである。
第2算出部1131は、顧客データ格納部111に登録されている顧客数(すなわち、メールが配信されるべき配信先の数)を計数する(ステップS65)。
第2算出部1131は、ステップS65において計数された顧客数に配信先数の比率を乗じる処理を各時間帯について実行することで各時間帯の配信先数を算出し(ステップS67)、算出結果を配信先決定部1132に通知する。そして、処理は端子Aを介して図19のステップS69の処理に移行する。
図19の説明に移行し、配信先決定部1132は、顧客データ格納部111のエントリを、購入金額合計をキーにして降順に並べ替える(図19:ステップS69)。
配信先決定部1132は、並べ替え後の順番が先である(すなわち、購入金額合計が多い)顧客ほど先に配信されるように、各時間帯の配信先を決定し(ステップS71)、決定の結果を配信計画データ格納部116に格納する。例えば、最も早い時間帯である9時から10時までの時間帯の配信先数が10である場合には、購入金額合計が最も多い顧客から順に10名が選択され、10時から11時までの時間帯の配信先数が5である場合には、購入金額合計が11番目に多い顧客から順に5名が選択される。
図20に、第2の実施の形態の配信計画データ格納部116に格納されるデータの一例を示す。図20の例では、時間帯を表すデータと、配信先を表すデータ(ここでは、顧客番号)とが格納される。なお、仮想配信サーバ12の配信計画データ格納部122にも同様のフォーマットでデータが格納される。
処理部113は、配信計画データ格納部116に格納されたデータを含む、メール配信の要求を生成し(ステップS73)、メール配信の要求を仮想配信サーバ12に送信する(ステップS75)。そして処理は終了する。
以上のような処理を実行すれば、仮想配信サーバ12が、ECサイトでの購入金額合計が高い顧客(すなわち優良顧客)に対して優先的に配信を行えるようになる。
次に、図21を用いて、仮想配信サーバ12が実行する処理を説明する。
まず、仮想配信サーバ12の配信部123は、メール配信の要求を仮想バッチサーバ11から受信し(図21:ステップS81)、配信計画データ格納部122に格納する。
配信部123は、配信計画データ格納部122に格納されたメール配信の要求が、各時間帯の配信先の情報を含むか判定する(ステップS83)。メール配信の要求が、各時間帯の配信先の情報を含む場合(ステップS83:Yesルート)、配信部123は、テンプレート格納部120に格納されたデータ(すなわち、配信すべきメールのテンプレート)に基づきメールを生成する。そして、配信部123は、ステップS83の処理時点が属する日の各時間帯において、メール配信の要求において指定された配信先に対してメールを配信する(ステップS85)。そして処理は終了する。
一方、メール配信の要求が、各時間帯の配信先の情報を含まない場合(ステップS83:Noルート)、配信部123は、テンプレート格納部120に格納されたデータに基づきメールを生成する。そして、配信部123は、メール配信の要求に従って(例えば、10時に一括で)、顧客データ格納部121に登録された各顧客の顧客端末に対してメールを配信する(ステップS87)。そして処理を終了する。
以上のような処理を実行すれば、メールに含まれるURLのクリック等によって発生する、仮想ウェブサーバ10へのアクセスが、仮想ウェブサーバ10の負荷に応じて分散されるようになる。これにより、仮想ウェブサーバ10の負荷を平準化することができるようになる。また、優良顧客に対して優先的に配信を行うことができるので、コンバージョン率を向上させることができるようになる。また、例えば数量限定セール及び期間限定セールの情報を含むメールの場合、できるだけ早くメールを受け取ることが顧客にとっても好ましいため、優良顧客の顧客満足度向上にもつながる。
[実施の形態3]
次に、第3の実施の形態について説明する。第3の実施の形態においては、第2の実施の形態の方法とは異なる方法によって各時間帯の配信先が決定される。
第3の実施の形態のシステム概要は、第1の実施の形態のシステム概要と同じであるが、第3の実施の形態における仮想バッチサーバ11が、第1の実施の形態における仮想バッチサーバ11とは異なる。図22に、第3の実施の形態における仮想バッチサーバ11の機能ブロック図を示す。仮想バッチサーバ11は、テンプレート格納部110と、顧客データ格納部111と、負荷データ格納部112と、処理部113と、第1データ格納部114と、第2データ格納部115と、配信計画データ格納部116と、第3データ格納部117とを含む。処理部113は、第1算出部1130と、第2算出部1131と、配信先決定部1132とを含む。
第1算出部1130は、テンプレート格納部110に格納されたデータ及び負荷データ格納部112に格納されたデータに基づき処理を実行し、処理結果を第1データ格納部114及び第2データ格納部115に格納する。第2算出部1131は、第2データ格納部115に格納されたデータ及び顧客データ格納部111に格納されたデータに基づき処理を実行し、処理結果を配信先決定部1132に通知する。配信先決定部1132は、顧客データ格納部111に格納されているデータ及び第2算出部1131から受け取った処理結果に基づき処理を実行し、処理結果を配信計画データ格納部116に格納する。なお、配信先決定部1132の処理途中のデータは、第3データ格納部117に格納される。
図23に、第3の実施の形態における顧客データ格納部111に格納されるデータの一例を示す。図23の例では、各エントリに付された通番と、顧客番号と、顧客のメールアドレスと、顧客が購入した商品の金額の合計(期間は、例えば直近の1か月)を表すデータと、顧客がECサイトを訪問する頻度(例えば、直近の1か月においてECサイトを訪問した回数)を表すデータとが格納される。なお、第3の実施の形態における仮想配信サーバ12の顧客データ格納部121にも同様のフォーマットでデータが格納される。
次に、図24及び25を用いて、第3の実施の形態のシステムにおいて行われる処理を説明する。但し、仮想ウェブサーバ10が実行する処理及び仮想配信サーバ12が実行する処理は第2の実施の形態において説明したとおりである。また、仮想バッチサーバ11が実行する処理のうち、端子Aまでの処理が第2の実施の形態と同じであるので、端子A以降の処理を説明する。
まず、配信先決定部1132は、顧客データ格納部111のエントリを、購入金額合計をキーにして降順に並べ替える(図24:ステップS91)。
配信先決定部1132は、顧客データ格納部111に格納された、ECサイトの訪問頻度に対して一定の値を乗じることで、アクセス指標値を顧客毎に算出する(ステップS93)。そして、顧客データ格納部111に格納されているデータに算出されたアクセス指標値を付したデータを、第3データ格納部117に格納する。なお、一定の値とは、例えば、メールが配信されるべき配信先の数(すなわち、顧客の数)を各顧客の訪問頻度の合計値で除した値である。
図25に、第3データ格納部117に格納されるデータの一例を示す。図25の例では、各エントリに付された通番と、顧客番号と、顧客のメールアドレスと、顧客が購入した商品の金額の合計(期間は、例えば直近の1か月)を表すデータと、顧客がECサイトを訪問する頻度(例えば、直近の1か月においてECサイトを訪問した回数)を表すデータと、アクセス指標値とが格納される。
配信先決定部1132は、各時間帯においてアクセス指標値の合計がその時間帯の配信先数以下であるという条件が満たされるように、且つ、並べ替え後の順番が先である(すなわち、購入金額合計が多い)顧客ほど先に配信されるように、各時間帯の配信先を決定し(ステップS95)、決定の結果を配信計画データ格納部116に格納する。配信計画データ格納部116に格納されるデータのフォーマットは、第2の実施の形態の説明で述べたとおりである。
処理部113は、配信計画データ格納部116に格納されたデータを含む、メール配信の要求を生成し(ステップS97)、メール配信の要求を仮想配信サーバ12に送信する(ステップS99)。そして処理は終了する。
訪問頻度が高い配信先は訪問頻度が低い配信先よりも仮想ウェブサーバ10の負荷を上昇させるので、たとえ1の配信先であっても1以上の配信先に相当するとみなすことができる場合がある。逆に、訪問頻度が低い配信先は訪問頻度が高い配信先よりも仮想ウェブサーバ10の負荷を上昇させないので、たとえ1の配信先であっても1以下の配信先に相当するとみなすことができる場合がある。そこで、上で述べたようにすれば、ECサイトへの訪問頻度を考慮しつつ各時間帯の配信先を適切に決定できるようになる。
以上本発明の一実施の形態を説明したが、本発明はこれに限定されるものではない。例えば、上で説明した情報処理装置1の機能ブロック構成は実際のプログラムモジュール構成に一致しない場合もある。
また、上で説明した各テーブルの構成は一例であって、上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
また、URLではなく、ウェブサイトに到達するための検索キーワード又はウェブサイト名等であってもよい。
また、仮想ウェブサーバ10が負荷データの要求を受信した場合に、ステップS17の処理時点が属する日の前日の負荷データだけを読み出してもよい。また、使用する負荷データは、前日の負荷データには限られない。例えば、ステップS17の処理時点の曜日と同じ曜日の負荷データであって直近の負荷データを読み出してもよい。さらに、複数の日の負荷データを使用するようにしてもよい。
また、仮想バッチサーバ11は顧客データ格納部111内のデータ及びテンプレート格納部110内のデータを使用する場合に、仮想配信サーバ12から取得してもよい。このようにすれば、仮想バッチサーバ11が顧客データ格納部111及びテンプレート格納部110を有しなくて済む。
また、CPU負荷ではなく、仮想ウェブサーバ10に対するアクセスの状況(例えば、時間帯毎のアクセス数)に基づき仮想バッチサーバ11が処理を実行してもよい。
また、ウェブサーバ、バッチサーバ及び配信サーバが物理サーバであってもよい。例えば図26に示すように、物理サーバであるウェブサーバ70、バッチサーバ71及び配信サーバ72を有する情報処理システム7に対しても本実施の形態を適用することが可能である。
なお、上で述べた情報処理装置1は、コンピュータ装置であって、図27に示すように、メモリ2501とCPU2503とハードディスク・ドライブ(HDD:Hard Disk Drive)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。オペレーティング・システム(OS:Operating System)及び本実施例における処理を実施するためのアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。CPU2503は、アプリケーション・プログラムの処理内容に応じて表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、所定の動作を行わせる。また、処理途中のデータについては、主としてメモリ2501に格納されるが、HDD2505に格納されるようにしてもよい。本発明の実施例では、上で述べた処理を実施するためのアプリケーション・プログラムはコンピュータ読み取り可能なリムーバブル・ディスク2511に格納されて頒布され、ドライブ装置2513からHDD2505にインストールされる。インターネットなどのネットワーク及び通信制御部2517を経由して、HDD2505にインストールされる場合もある。このようなコンピュータ装置は、上で述べたCPU2503、メモリ2501などのハードウエアとOS及びアプリケーション・プログラムなどのプログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
以上述べた本発明の実施の形態をまとめると、以下のようになる。
本実施の形態に係る配信制御方法は、(A)特定の情報処理装置の負荷の情報を取得し、(B)取得した特定の情報処理装置の負荷の情報に基づき、特定の情報処理装置がアクセス先であることを表すアクセス先情報を含むメッセージの配信先の数を、時間帯毎に決定する処理を含む。
アクセス先の情報を含むメッセージが送信されると、特定の情報処理装置に対するアクセスが発生し、特定の情報処理装置の負荷が上昇する可能性がある。そこで、上で述べたような処理を実行すれば、特定の情報処理装置の負荷を適切に制御できるようになる。
また、本配信制御方法は、(C)データ格納部に配信先毎に格納されている、配信の優先度に相当する情報に基づき、配信の優先度がより高い配信先に対してより早い時間帯に配信を行うように、決定された数の配信先を時間帯毎に決定する処理をさらに含んでもよい。このようにすれば、例えば早く受け取った方が有利な情報等を、優先度が高い配信先に対してより早く配信できるようになる。
また、上で述べたデータ格納部は、特定の情報処理装置へのアクセスの頻度を配信先毎にさらに格納してもよい。そして、本配信制御方法は、(D)データ格納部に格納されているアクセスの頻度に対して所定の値を乗じることで、第1の値を配信先毎に算出する処理をさらに含んでもよい。そして、決定された数の配信先を時間帯毎に決定する処理において、(c1)各時間帯において第1の値の合計が配信先の数以下であるという条件が満たされるように、且つ、配信の優先度がより高い配信先に対してより早い時間帯に配信を行うように、決定された数の配信先を時間帯毎に決定してもよい。アクセスの頻度が高い配信先はアクセスの頻度が低い配信先よりも特定の情報処理装置の負荷を上昇させるので、たとえ1の配信先であっても複数の配信先に相当するとみなすことができる場合がある。そこで、上で述べたようにすれば、アクセスの頻度を考慮しつつ各時間帯の配信先を決定できるようになる。
また、本配信制御方法は、(d)メッセージのテンプレートがアクセス先情報を含むか判定する処理をさらに含んでもよい。そして、(c2)メッセージのテンプレートがアクセス先情報を含むと判定された場合、配信先の数を時間帯毎に決定する処理において、取得した特定の情報処理装置の負荷の情報に基づき、メッセージの配信先の数を時間帯毎に決定してもよい。メッセージのテンプレートがアクセス先情報を含まない場合、メッセージのテンプレートがアクセス先情報を含む場合と比べると、特定の情報処理装置へのアクセスが発生する可能性が低い。そこで、上で述べたようにすれば、処理の実行機会を制限し、コンピュータの処理負荷を軽減できるようになる。
また、メッセージの配信先の数を時間帯毎に決定する処理において、(b1)特定の情報処理装置の負荷が高い時間帯ほどメッセージの配信先の数が少なくなるように、メッセージの配信先の数を時間帯毎に決定してもよい。このようにすれば、特定の情報処理装置の負荷が極端に上昇するような事態を防げるようになる。
また、特定の情報処理装置の負荷の情報は、前日又は同じ曜日の特定の情報処理装置の負荷の情報であってもよい。前日の負荷は本日の負荷と同じように変動する場合があり、また、同じ曜日の負荷は同じように変動する場合がある。従って、上で述べたようにすれば、配信先の数を適切にすることができるようになる。
また、メッセージの配信先の数を時間帯毎に決定する処理において、(b2)取得した特定の情報処理装置の負荷の情報に基づき、特定の情報処理装置の負荷を時間帯毎に算出してもよい。
また、メッセージの配信先の数を時間帯毎に決定する処理において、(b3)取得した特定の情報処理装置の負荷の情報に基づき、特定の情報処理装置の負荷を時間帯毎に算出し、(b4)算出された特定の情報処理装置の時間帯毎の負荷の逆数に基づき、配信先の数の比率を時間帯毎に算出し、(b5)各時間帯について、算出された配信先の数の比率とメッセージが配信されるべき配信先の数とを乗じることによって、メッセージの配信先の数を時間帯毎に決定してもよい。
なお、上記方法による処理をプロセッサに行わせるためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等のコンピュータ読み取り可能な記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
以上の実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)
コンピュータに、
特定の情報処理装置の負荷の情報を取得し、
取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する、
処理を実行させる配信制御プログラム。
(付記2)
前記コンピュータに、
データ格納部に配信先毎に格納されている、配信の優先度に相当する情報に基づき、配信の優先度がより高い配信先に対してより早い時間に配信を行うように、決定された前記数の配信先を各単位時間について決定する、
処理をさらに実行させる付記1記載の配信制御プログラム。
(付記3)
前記データ格納部は、前記特定の情報処理装置へのアクセスの頻度を配信先毎にさらに格納し、
前記コンピュータに、
前記データ格納部に格納されているアクセスの頻度に対して所定の値を乗じることで、第1の値を配信先毎に算出する、
処理をさらに実行させ、
決定された前記数の配信先を各単位時間について決定する処理において、
各単位時間において前記第1の値の合計が配信先の数以下であるという条件が満たされるように、且つ、配信の優先度がより高い配信先に対してより早い時間に配信を行うように、決定された前記数の配信先を各単位時間について決定する、
付記2記載の配信制御プログラム。
(付記4)
前記コンピュータに、
前記メッセージのテンプレートが前記アクセス先情報を含むか判定する、
処理をさらに実行させ、
前記メッセージのテンプレートが前記アクセス先情報を含むと判定された場合、前記単位時間あたりの配信先の数を決定する処理において、取得した前記特定の情報処理装置の負荷の情報に基づき、前記単位時間あたりの配信先の数を決定する
付記1乃至3のいずれか1つ記載の配信制御プログラム。
(付記5)
前記単位時間あたりの配信先の数を決定する処理において、
前記特定の情報処理装置の負荷が高い単位時間ほど配信先の数が少なくなるように、前記単位時間あたりの配信先の数を決定する、
付記1乃至4のいずれか1つ記載の配信制御プログラム。
(付記6)
前記特定の情報処理装置の負荷の情報は、前日又は同じ曜日の前記特定の情報処理装置の負荷の情報である、
付記1乃至5のいずれか1つ記載の配信制御プログラム。
(付記7)
前記単位時間あたりの配信先の数を決定する処理において、
取得した前記特定の情報処理装置の負荷の情報に基づき、前記特定の情報処理装置の負荷を各単位時間について算出する、
付記1乃至6のいずれか1つ記載の配信制御プログラム。
(付記8)
前記単位時間あたりの配信先の数を決定する処理において、
取得した前記特定の情報処理装置の負荷の情報に基づき、前記特定の情報処理装置の負荷を各単位時間について算出し、
算出された前記特定の情報処理装置の各単位時間の負荷の逆数に基づき、配信先の数の比率を各単位時間について算出し、
各単位時間について、算出された前記配信先の数の比率と前記メッセージが配信されるべき配信先の数とを乗じることによって、前記単位時間あたりの配信先の数を決定する、
付記1乃至6のいずれか1つ記載の配信制御プログラム。
(付記9)
コンピュータが、
特定の情報処理装置の負荷の情報を取得し、
取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する、
処理を実行する配信制御方法。
(付記10)
特定の情報処理装置の負荷の情報を取得する取得部と、
取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する決定部と、
処理を実行する情報処理装置。
1 情報処理装置 10 仮想ウェブサーバ
11 仮想バッチサーバ 12 仮想配信サーバ
101 負荷取得部 102 負荷データ格納部
110 テンプレート格納部 111 顧客データ格納部
112 負荷データ格納部 113 処理部
1130 第1算出部 1131 第2算出部
1132 配信先決定部 114 第1データ格納部
115 第2データ格納部 116 配信計画データ格納部
117 第3データ格納部 3 インターネット
5a,5b,5c 顧客端末

Claims (8)

  1. コンピュータに、
    特定の情報処理装置の負荷の情報を取得し、
    取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する、
    処理を実行させる配信制御プログラム。
  2. 前記コンピュータに、
    データ格納部に配信先毎に格納されている、配信の優先度に相当する情報に基づき、配信の優先度がより高い配信先に対してより早い時間に配信を行うように、決定された前記数の配信先を各単位時間について決定する、
    処理をさらに実行させる請求項1記載の配信制御プログラム。
  3. 前記データ格納部は、前記特定の情報処理装置へのアクセスの頻度を配信先毎にさらに格納し、
    前記コンピュータに、
    前記データ格納部に格納されているアクセスの頻度に対して所定の値を乗じることで、第1の値を配信先毎に算出する、
    処理をさらに実行させ、
    決定された前記数の配信先を各単位時間について決定する処理において、
    各単位時間において前記第1の値の合計が配信先の数以下であるという条件が満たされるように、且つ、配信の優先度がより高い配信先に対してより早い時間に配信を行うように、決定された前記数の配信先を各単位時間について決定する、
    請求項2記載の配信制御プログラム。
  4. 前記コンピュータに、
    前記メッセージのテンプレートが前記アクセス先情報を含むか判定する、
    処理をさらに実行させ、
    前記メッセージのテンプレートが前記アクセス先情報を含むと判定された場合、前記単位時間あたりの配信先の数を決定する処理において、取得した前記特定の情報処理装置の負荷の情報に基づき、前記単位時間あたりの配信先の数を決定する
    請求項1乃至3のいずれか1つ記載の配信制御プログラム。
  5. 前記単位時間あたりの配信先の数を決定する処理において、
    前記特定の情報処理装置の負荷が高い単位時間ほど配信先の数が少なくなるように、前記単位時間あたりの配信先の数を決定する、
    請求項1乃至4のいずれか1つ記載の配信制御プログラム。
  6. 前記特定の情報処理装置の負荷の情報は、前日又は同じ曜日の前記特定の情報処理装置の負荷の情報である、
    請求項1乃至5のいずれか1つ記載の配信制御プログラム。
  7. コンピュータが、
    特定の情報処理装置の負荷の情報を取得し、
    取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する、
    処理を実行する配信制御方法。
  8. 特定の情報処理装置の負荷の情報を取得する取得部と、
    取得した前記特定の情報処理装置の負荷の情報に基づく前記特定の情報処理装置の負荷の予測値の変動に応じて、前記特定の情報処理装置をアクセス先とするアクセス先情報を含むメッセージの単位時間あたりの配信先の数を決定する決定部と、
    処理を実行する情報処理装置。
JP2015187323A 2015-09-24 2015-09-24 配信制御プログラム、配信制御方法、及び情報処理装置 Expired - Fee Related JP6520607B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015187323A JP6520607B2 (ja) 2015-09-24 2015-09-24 配信制御プログラム、配信制御方法、及び情報処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015187323A JP6520607B2 (ja) 2015-09-24 2015-09-24 配信制御プログラム、配信制御方法、及び情報処理装置

Publications (2)

Publication Number Publication Date
JP2017062620A true JP2017062620A (ja) 2017-03-30
JP6520607B2 JP6520607B2 (ja) 2019-05-29

Family

ID=58428836

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015187323A Expired - Fee Related JP6520607B2 (ja) 2015-09-24 2015-09-24 配信制御プログラム、配信制御方法、及び情報処理装置

Country Status (1)

Country Link
JP (1) JP6520607B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102853A (ja) * 2002-09-12 2004-04-02 Hitachi Ltd 情報配信方法とシステム
JP2015153011A (ja) * 2014-02-12 2015-08-24 西日本電信電話株式会社 ジョブ実行計画装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004102853A (ja) * 2002-09-12 2004-04-02 Hitachi Ltd 情報配信方法とシステム
JP2015153011A (ja) * 2014-02-12 2015-08-24 西日本電信電話株式会社 ジョブ実行計画装置

Also Published As

Publication number Publication date
JP6520607B2 (ja) 2019-05-29

Similar Documents

Publication Publication Date Title
WO2019001256A1 (zh) 高并发数据处理方法、装置及计算机可读存储介质
US10346858B2 (en) Assigning slots to user interface elements
CN110738436A (zh) 一种确定可用库存的方法和装置
JP5935511B2 (ja) プログラム及びキャンペーン管理装置
JP4140912B2 (ja) メッセージ配信方法、プログラム
JP2005258977A (ja) ログイン管理プログラム、ログイン管理プログラムが記録された媒体、ログイン管理装置、及びログイン管理方法
US20160162934A1 (en) Advertisement distribution management device, advertisement distribution management method, and non-transitory computer readable storage medium
US10540680B2 (en) Information processing device, information processing method, and information processing program
WO2019024595A1 (zh) 基于优先级的客户跟进方法、电子装置及可读存储介质
CN112118546B (zh) 消息推送方法、消息推送装置、计算机设备和介质
CN113765969A (zh) 一种流量控制方法和装置
JP5373003B2 (ja) 広告処理装置及び方法
JP6520607B2 (ja) 配信制御プログラム、配信制御方法、及び情報処理装置
US20150058068A1 (en) Methods and systems for managing suppliers and flow of goods on an ecommerce platform
JP2020009355A (ja) 配送管理装置、特典付与装置、配送管理方法及び特典付与方法
US9928224B1 (en) Assigning slots to content in a pipeline
JP5653545B2 (ja) 要求処理システム、要求処理方法、プログラムおよび情報記憶媒体
JP5449635B1 (ja) 電子メール送信設定装置、電子メール送信設定方法、電子メール送信設定装置用プログラム、および、記憶媒体
JP6584584B1 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
CN111881148A (zh) 对象组合的属性确定方法、装置、电子设备
TWI529644B (zh) Sending devices, sending methods, information media and programs
JP5519880B1 (ja) 要求処理システム、要求処理方法、プログラムおよび情報記憶媒体
JP5987669B2 (ja) 情報処理方法、情報処理装置、及び情報処理プログラム
JP6757381B2 (ja) 算出装置、算出方法、算出プログラム
JP2018195207A (ja) 配信装置、配信方法および配信プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180608

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190315

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: 20190402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190415

R150 Certificate of patent or registration of utility model

Ref document number: 6520607

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees