JP2016212595A - サーバ装置、プログラム及び情報処理システム - Google Patents

サーバ装置、プログラム及び情報処理システム Download PDF

Info

Publication number
JP2016212595A
JP2016212595A JP2015095162A JP2015095162A JP2016212595A JP 2016212595 A JP2016212595 A JP 2016212595A JP 2015095162 A JP2015095162 A JP 2015095162A JP 2015095162 A JP2015095162 A JP 2015095162A JP 2016212595 A JP2016212595 A JP 2016212595A
Authority
JP
Japan
Prior art keywords
content
unit
user
information
user device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015095162A
Other languages
English (en)
Inventor
碩 井上
Seki Inoue
碩 井上
晋太朗 田中
Shintaro Tanaka
晋太朗 田中
真寛 山下
Masahiro Yamashita
真寛 山下
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.)
Mist Technologies
Mist Technologies Inc
Original Assignee
Mist Technologies
Mist Technologies Inc
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 Mist Technologies, Mist Technologies Inc filed Critical Mist Technologies
Priority to JP2015095162A priority Critical patent/JP2016212595A/ja
Publication of JP2016212595A publication Critical patent/JP2016212595A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】ユーザが閲覧したことがないコンテンツであっても事前読み込みする対象としての優劣を決めることができるようにすること。【解決手段】履歴送信部303は、ユーザ装置30におけるコンテンツの閲覧履歴をサーバ装置10に送信する。取得部102は、ユーザ装置群3におけるコンテンツの閲覧履歴を取得する。判定部103は、取得部102によって取得された閲覧履歴に基づいて、過去に配信された各コンテンツが今後閲覧される可能性の高さを判定する。決定部106は、判定部103によって判定された可能性の高さに応じて、事前読み込みするコンテンツを決定する。提供部104は、判定部103によって判定された可能性の高さに応じて決まるコンテンツを事前読み込みするための情報をユーザ装置30に提供する。【選択図】図5

Description

本発明は、コンテンツの事前読み込みの技術に関する。
コンテンツの事前読み込みの技術が知られている。例えば、特許文献1に開示された技術では、ソーシャルメディア上で過去に紹介されたコンテンツの利用率や紹介者とのやり取り数、情報拡散数などの履歴を登録ユーザ毎に保持し、登録ユーザに対して紹介されたコンテンツがその登録ユーザについて保持した履歴に基づいて事前読み込み対象として判定された場合に、その紹介されたコンテンツの事前読み込みが行われる。
特開2014−149742号公報
特許文献1の技術では、紹介されたコンテンツが事前読み込みの対象であったが、例えばウェブページ上にハイパーリンクが張られているコンテンツ全般を事前読み込みの対象とする場合もある。その場合、各コンテンツの閲覧履歴から事前読み込みの対象を決めることが考えられるが、特許文献1の技術のように、各ユーザの事前読み込みの対象をそのユーザ自身の閲覧履歴に基づいて決めるだけでは、例えばそのユーザが閲覧したことがないコンテンツ同士については、事前読み込みの対象としての優劣を決めることができない。
そこで、本発明は、ユーザが閲覧したことがないコンテンツであっても事前読み込みする対象としての優劣を決めることができるようにすることを目的とする。
上記目的を達成するために、本発明は、ユーザ装置群におけるコンテンツの閲覧履歴を取得する取得部と、取得された前記閲覧履歴に基づいて、過去に配信された各コンテンツが今後閲覧される可能性の高さを判定する判定部と、判定された前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報をユーザ装置に提供する提供部とを備えるサーバ装置を提供する。
また、前記提供部は、ユーザ装置に表示されているハイパーリンクから参照されるコンテンツのうちの前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報を当該ユーザ装置に提供してもよい。
さらに、前記提供部は、ユーザ装置に表示されているポインタの位置及び前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報を当該ユーザ装置に提供してもよい。
また、前記提供部は、判定された前記可能性の高さに応じて各コンテンツの優先順位を決定し、決定した当該優先順位に従い当該各コンテンツを事前読み込みするための情報を提供してもよい。
さらに、前記判定部は、各コンテンツについて、過去に判定した前記可能性の高さと前記情報が提供されたユーザ装置における実際の閲覧結果とを比較して、比較結果が条件を満たしたユーザ装置における前記閲覧履歴に基づいて前記判定を行ってもよい。
また、本発明は、ユーザ操作に基づいて配信装置にコンテンツを要求する第1要求部と、事前読み込みするコンテンツを当該配信装置に要求する第2要求部と、前記第2要求部の要求に応答して送信されてきたコンテンツをキャッシュするキャッシュ部と、コンテンツを出力する出力部とを備えるユーザ装置を制御するコンピュータを、サーバ装置がユーザ装置群から取得した閲覧履歴に基づいて各コンテンツが今後配信される可能性の高さを判定すると、当該判定の結果に応じて事前読み込みするコンテンツを決定する決定部と、前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部として機能させるためのプログラムを提供する。
また、本発明は、上述したサーバ装置と、自装置に表示されているハイパーリンクから参照されるコンテンツから、各コンテンツについて前記サーバ装置により判定された前記可能性の高さに応じて事前読み込みするコンテンツを決定する決定部と、前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部とを備えるユーザ端末とを備える情報処理システムを提供する。
また、本発明は、上述した記載のサーバ装置と、自装置に表示されているポインタの位置及び前記サーバ装置により判定された前記可能性の高さに応じて事前読み込みするコンテンツを決定する決定部と、前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部とを備えるユーザ端末とを備える情報処理システムを提供する。
また、本発明は、上述したサーバ装置と、自装置を利用するユーザの操作に基づくコンテンツの閲覧履歴を前記サーバ装置に送信する送信部であって、前記ユーザが特定のコンテンツを閲覧する傾向にあるユーザである場合には、前記閲覧履歴に代えて、当該閲覧履歴よりもデータ量が小さい所定の情報を送信する送信部を備えるユーザ端末とを備え、前記サーバ装置の取得部は、前記所定の情報を取得した場合には、前記特定のコンテンツを閲覧したことを表す閲覧履歴を取得したものとする情報処理システムを提供する。
本発明によれば、ユーザが閲覧したことがないコンテンツであっても事前読み込みする対象としての優劣を決めることができる。
第1実施例に係るコンテンツ提供システムの全体構成を表す図 サーバ装置のハードウェア構成を表す図 コンテンツ配信装置のハードウェア構成を表す図 ユーザ装置のハードウェア構成を表す図 各装置が実現する機能構成を表す図 HTMLファイルの一例を表す図 コンテンツの履歴情報の一例を表す図 ユーザが選択し得るコンテンツの一例を表す図 決定部が参照した各コンテンツの判定結果の一例を表す図 コンテンツ提供処理における各装置の動作手順の一例を表す図 表示されるハイパーリンクの例を表す図 第1決定方法が用いられる場合に各装置が実現する機能構成を表す図 ポインタが表示された画面の例を表す図 第2実施例の各装置が実現する機能構成を表す図 ポインタが移動した状況の一例を表す図 ポインタの位置の一例を表す図 予実の比較結果の一例を表す図 予実の比較結果の別の一例を表す図 変形例における機能構成の一例を表す図
[1]第1実施例
図1は第1実施例に係るコンテンツ提供システム1の全体構成を表す。コンテンツ提供システム1は、コンテンツをユーザに提供するためのシステムである。ここでいうコンテンツとは、WebページやSNS(Social Networking Service)の投稿の他、それらに含まれる画像や動画などをいう。コンテンツ提供システム1は、ネットワーク2と、サーバ装置10と、コンテンツ配信装置20と、ユーザ装置群3(複数のユーザ装置30を含むユーザ装置群)とを備える。
ネットワーク2は、移動体通信網及びインターネットを含み、装置同士のデータのやり取りを仲介する。ネットワーク2にはサーバ装置10、コンテンツ配信装置20及び各ユーザ装置30が接続される。コンテンツ配信装置20は、Webページなどの複数のパーツ(画像や動画など)を有するコンテンツをユーザに配信する配信装置である。コンテンツ配信装置20は、例えばユーザ装置30から要求されたコンテンツを表すデータ(HTML(HyperText Markup Language)ファイルや画像ファイル、動画ファイルなど)を要求元のユーザ装置30に送信することで、コンテンツの配信を行う。
ユーザ装置30は、例えばパーソナルコンピュータやスマートフォン、タブレット端末などの、ユーザが利用する装置であり、コンテンツを出力する機能(例えばコンテンツに含まれる画像を表示したり音を放出したりする機能)を有する。ユーザ装置30は、出力するコンテンツを指定するユーザの操作に応じて、指定されたコンテンツをコンテンツ配信装置20に要求する。この要求に応答してコンテンツ配信装置20から送信されてきたコンテンツをユーザ装置30が出力することで、コンテンツがユーザに提供される。図1では各ユーザ装置30が有線でネットワーク2と接続されているように表されているが、移動体通信や無線LAN(Local Area Network)の通信などの無線通信でネットワーク2と接続されてもよい。
ユーザ装置30は、コンテンツの事前読み込みを行う。事前読み込みとは、ユーザがまだ指定していないコンテンツを予めユーザ装置30が読み込んでおくことであり、プリフェッチやプリロードともいう。サーバ装置10は、コンテンツを事前読み込みするための情報をユーザ装置30に提供する装置である。この情報としては、例えばプリフェッチタグが用いられる。プリフェッチタグに対応しているブラウザプログラムがユーザ装置30で実行されていれば、サーバ装置10から提供されたプリフェッチタグを用いてユーザ装置30がコンテンツを事前読み込みする。どのようなコンテンツの事前読み込みが行われるかについては後ほど詳しく説明する。
図2はサーバ装置10のハードウェア構成を表す。サーバ装置10は、制御部11と、記憶部12と、通信部13とを備えるコンピュータである。制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)及びリアルタイムクロックを備え、CPUが、RAMをワークエリアとして用いてROMや記憶部12に記憶されたプログラムを実行することによって各部の動作を制御する。リアルタイムクロックは、現在の日時を算出してCPUに通知する。記憶部12は、HDD(Hard disk drive)等を備え、制御部11が制御に用いるデータやプログラムを記憶している。通信部13は、ネットワーク2を介した通信を行うための通信回路を備え、ネットワーク2を介したデータの送信及び受信を行う。
図3はコンテンツ配信装置20のハードウェア構成を表す。コンテンツ配信装置20は、制御部21と、記憶部22と、通信部23とを備えるコンピュータである。制御部21、記憶部22及び通信部23は、図2に表された制御部11、記憶部12及び通信部13と同種のハードウェアである。記憶部22には、コンテンツであるWebページを表すHTMLファイル及びそのWebページに含まれる画像のファイルや動画のファイルなどが記憶されている。
図4はユーザ装置30のハードウェア構成を表す。ユーザ装置30は、制御部31と、記憶部32と、通信部33と、表示部34と、操作部35とを備えるコンピュータである。制御部31は、図2に表された制御部11と同種のハードウェアである。記憶部32は、フラッシュメモリ等を備え、制御部31が制御に用いるデータやプログラム(例えばWebページを閲覧するためのブラウザプログラムなど)を記憶している。通信部33は、ネットワーク2を介した通信(有線通信又は無線通信)を行うための通信回路を有する。表示部34は、液晶ディスプレイ等を有し、制御部31からの制御に基づいて画像を表示する。操作部35は、ユーザの操作を受け付ける操作子(自装置がパーソナルコンピュータであればキーボード等、スマートフォンやタブレット端末であればタッチスクリーン等)を有する。
サーバ装置10、コンテンツ配信装置20及びユーザ装置30の各制御部がプログラムを実行して自装置の各部を制御することで、以下に述べる機能が実現される。
図5は各装置が実現する機能構成を表す。サーバ装置10は、プログラム送信部101と、取得部102と、判定部103と、提供部104とを備え、コンテンツ配信装置20は、コンテンツ送信部201を備える。また、ユーザ装置30は、第1要求部301と、出力部302とを、履歴送信部303と、事前読込処理部304と、第2要求部305と、キャッシュ部306とを備える。
ユーザ装置30の第1要求部301は、ユーザ操作に基づいてコンテンツ配信装置20にコンテンツを要求する。第1要求部301は、例えば自装置にブラウザの画面が表示されている状態で、コンテンツ配信装置20から配信されるコンテンツ(例えばWebページ)へのリンクを選択する操作や、そのコンテンツのURL(Uniform Resource Locator)を入力する操作などをユーザが行った場合に、コンテンツを要求することを表すHTTP(Hypertext Transfer Protocol)リクエストをコンテンツ配信装置20に送信する。
第1要求部301は、このHTTPリクエストにより、まずはコンテンツのレイアウトやコンテンツに含まれる画像や動画などのファイルの記憶場所を表すURLなどが記述されたファイル、すなわちHTMLファイルを要求する。第1要求部301は、HTMLファイルが送信されてくると、そのHTMLファイルにURL等により記憶場所が記述された画像ファイルや動画ファイルなどをHTTPリクエストにより順番に要求する。第1要求部301からの要求(HTTPリクエスト)はコンテンツ配信装置20のコンテンツ送信部201によって受け取られる。
コンテンツ送信部201は、ユーザ装置30から要求されたコンテンツを要求元のユーザ装置30に対して送信する。コンテンツ送信部201は、例えば、HTTPリクエストで要求されたコンテンツをHTTPレスポンスで送信する。コンテンツ送信部201は、まず、要求されたHTMLファイルを要求元のユーザ装置30に対して送信し、その後、ユーザ装置30からの要求がある度に、画像ファイルや動画ファイルを送信する。コンテンツ送信部201が送信したこれらのコンテンツは第1要求部301及び出力部302に供給される。第1要求部301はコンテンツが供給される度に次のコンテンツを要求する。
出力部302はコンテンツを出力する。出力部302は、例えばコンテンツ送信部201から送信されてきたHTMLファイル、画像ファイル及び動画ファイルなどが表すWebページを送信されてきたコンテンツとして出力する。本実施例では、コンテンツ送信部201から送信されてくるHTMLファイルに、出力部302によって出力されるコンテンツ以外に、ユーザ装置30に機能を追加するプログラム(例えばJavaScript(登録商標)で記述されたプログラム)の記憶場所も記述されている。
図6はHTMLファイルの一例を表す。図6の例では、機能を追加する機能追加プログラムの記憶場所を表すURL(本実施例ではサーバ装置10の記憶部12へのパスを表す)を含む記述PGM1を含むHTML文書H1が表されている。第1要求部301は、記述PGM1に含まれるURLを記憶場所とする機能追加プログラムを要求する。サーバ装置10のプログラム送信部101は、この要求を受け取ると、要求された機能追加プログラムを要求元のユーザ装置30に送信する。ユーザ装置30の制御部31がこの機能追加プログラムを実行することで、上述した履歴送信部303及び事前読込処理部304が実現される(なお、履歴送信部303及び事前読込処理部304以外の各部はブラウザプログラムが実行されることで実現されるものとする)。
履歴送信部303は、ユーザ操作に基づくコンテンツの閲覧履歴をサーバ装置10に送信する。履歴送信部303は本発明の「送信部」の一例である。コンテンツの閲覧履歴とは、例えばユーザが閲覧したコンテンツを特定するための情報や閲覧した時刻などの情報によって表される。履歴送信部303は、本実施例では、ユーザ装置30が出力したコンテンツはユーザによって閲覧されたものとみなして閲覧履歴を送信する。履歴送信部303には、例えば、出力部302から、出力部302が出力したコンテンツの履歴情報が供給される。履歴情報とは、どのコンテンツがいつ出力されたかということを表す情報である。
図7はコンテンツの履歴情報の一例を表す。図7の例では、コンテンツのファイル名と、記憶場所と、出力時刻とが履歴情報として表されている。例えば「xxx.html」というファイル名のコンテンツは「www.xxx.co.jp」というURLで表される記憶場所から配信されて「2015−xx−xx hh:mm:ss.010」という出力時刻に出力されている。また、「IMG01.gif」というファイル名のコンテンツは「http://XX/images/」というURLで表される記憶場所から配信されて「2015−xx−xx hh:mm:ss.030」という出力時刻に出力されている。ファイル名及び記憶場所はコンテンツを特定するための情報であり、出力時刻はコンテンツが閲覧された時刻を表す情報である。
履歴送信部303は、出力部302から供給される履歴情報を、閲覧履歴を表す情報としてサーバ装置10に送信する。履歴送信部303は、例えばこの履歴情報が供給される度にサーバ装置10に送信する。なお、履歴送信部303は、履歴情報が所定の量だけ蓄積される度に送信してもよいし、決められた時間間隔で送信してもよい。また、履歴送信部303は、ファイル名及び記憶場所ではなく、例えば各コンテンツに各々を識別するコンテンツIDが付与されている場合に、そのコンテンツIDをコンテンツを特定するための情報として送信してもよい。こうして送信された履歴情報はサーバ装置10の取得部102に供給される。
取得部102は、ユーザ装置群3におけるコンテンツの閲覧履歴を取得する。取得部102は、本実施例では、図1に表すユーザ装置群3の各々のユーザ装置30から送信されてきた履歴情報を閲覧履歴として取得する。取得部102は、こうして取得した閲覧履歴を判定部103及び提供部104に供給する。
判定部103は、取得部102によって取得された閲覧履歴に基づいて、過去に配信された各コンテンツが今後閲覧される可能性の高さを判定する。判定部103は、蓄積部105を有する。蓄積部105は、取得部102から供給された閲覧履歴を蓄積する。判定部103は、例えば、蓄積部105に蓄積された全コンテンツの閲覧回数の総計に対する各コンテンツの閲覧回数の比率を、各コンテンツが今後閲覧される可能性の高さを表す値(以下「閲覧確率」という)として算出する。この場合、コンテンツが閲覧された回数に比例してそのコンテンツの閲覧確率が高くなる。
なお、判定部103は、閲覧された時期が新しいほど重みを付けて閲覧確率を算出してもよいし、その他の周知の技術を用いて閲覧履歴から閲覧確率を算出してもよい。また、判定部103は、上記の可能性の高さを値ではなく「高」、「中」、「低」や「A」、「B」、「C」といった等級で表してもよい。また、蓄積部105は、蓄積してから一定の期間が経過した閲覧履歴を削除してもよいし、閲覧された回数が閾値以下のコンテンツの閲覧履歴を定期的に削除してもよい。このように、判定部103及び蓄積部105は、上記の可能性の高さをより正確に判定できるようにしてもよいし、判定のための処理の負荷を軽くしてより短時間で判定できるようにしてもよい。
判定部103は、各コンテンツについての判定結果(閲覧確率)を、それらのコンテンツを特定する情報(本実施例ではファイル名及び記憶場所)に対応付けて記憶する。判定部103が記憶した判定結果は、提供部104から参照可能となっている。
提供部104は、判定部103によって判定された可能性の高さに応じて決まるコンテンツを事前読み込みするための情報をユーザ装置30に提供する。コンテンツの事前読み込みとは、出力するコンテンツを指定するユーザの操作が行われていない状態で予めコンテンツを読み込んでおくことであり、プリフェッチとも呼ばれる。提供部104は、コンテンツを事前読み込みするための情報として、例えばプリフェッチタグを提供する。本実施例では、事前読み込みするコンテンツのURLを含むプリフェッチタグを提供部104がユーザ装置30に送信することで、ユーザ装置30がそのコンテンツを事前読み込みするようになっている。
本実施例では、提供部104は、決定部106を備える。決定部106は、判定部103によって判定された可能性の高さに応じて、事前読み込みさせるコンテンツを決定する。決定部106は、取得部102からユーザ装置30の閲覧履歴が供給されると、供給された閲覧履歴に基づいてそのユーザ装置30(本実施例ではこのユーザ装置30が前述したプリフェッチタグの送信先となる)が現在出力しているコンテンツを特定する。具体的には、決定部106は、HTMLファイルのURLが閲覧履歴として供給されると、そのURLを用いてアクセスされるWebページを、現在出力されているコンテンツとして特定する。
決定部106は、特定したコンテンツが表示されている状態でユーザが選択し得るコンテンツのそれぞれの判定結果(本実施例では閲覧確率)を参照し、それらのコンテンツのうち判定結果が上位の所定の数又は所定の割合に入るコンテンツを、事前読み込みさせるコンテンツとして決定する。この決定方法についてより詳細に説明する。
図8はユーザが選択し得るコンテンツの一例を表す。WebページA1は、ユーザAが利用するユーザ装置30に表示されているコンテンツである。WebページA1には、WebページB1、B2、・・・、B100という各コンテンツへのハイパーリンクが張られている。このユーザ装置30において各ハイパーリンクを選択する操作が行われると、WebページB1、B2、・・・、B100のうちの選択されたハイパーリンクに対応するコンテンツが出力される。決定部106は、特定したコンテンツに含まれるハイパーリンクに対応するコンテンツの判定結果を参照する。
図9は決定部106が参照した各コンテンツの判定結果の一例を表す。図9では、WebページB1、B2、・・・、B100を閲覧確率が高い方から順番に並べている。例えば閲覧確率が5%のWebページB9の順位が1番であり、閲覧確率が4.5%のWebページB12の順位が2番である。また、閲覧確率が0.01%のWebページB95の順位が100番である。例えば決定部106が、判定結果が上位10番目(又は上位10%)に入るコンテンツを事前読み込みするコンテンツとして決定するものとする。その場合、この例であれば、決定部106は、WebページB9、B12から、閲覧確率の順位が10位のWebページB72までの10個のWebページを、事前読み込みさせるコンテンツとして決定する。
なお、決定に用いる所定の数よりも特定されたコンテンツの数の方が少ない場合には、特定されたコンテンツが全て事前読み込みの対象として決定されることになるが、それでもよいし、その場合は所定の割合を用いるようにしてもよい。提供部104は、こうして事前読み込みさせる対象として決定されたコンテンツのURLを含むプリフェッチタグを生成する。提供部104は、決定部106によって現在出力しているコンテンツが特定されたユーザ装置30に対して、生成したプリフェッチタグを送信する。ユーザ装置30は、受信したプリフェッチタグを事前読込処理部304に供給する。
事前読込処理部304は、提供部104から提供された情報に基づき、決定部106により決定されたコンテンツの事前読み込みのための処理を行う。本実施例では、事前読込処理部304は、提供部104から提供されたプリフェッチタグを埋め込んだHTTPリクエストを表すHTMLファイルを生成し、そのHTMLファイルを用いてコンテンツを要求するように第2要求部305に指示する処理を行う。
第2要求部305は、事前読み込みするコンテンツをコンテンツ配信装置20に要求する。第2要求部305は、事前読込処理部304からの指示に基づき、プリフェッチタグが埋め込まれたHTMLファイルを用いて、そのプリフェッチタグが記憶場所を表すコンテンツをコンテンツ配信装置20に要求する。こうして要求されるコンテンツは、決定部106によって事前読み込みする対象として決定されたコンテンツである。この要求はコンテンツ配信装置20のコンテンツ送信部201に供給され、コンテンツ送信部201は要求されたコンテンツをユーザ装置30に送信する。第2要求部305の要求に応答して送信されてきたコンテンツは、キャッシュ部306に供給される。
キャッシュ部306は、こうして供給されたコンテンツ、すなわち第2要求部305の要求に応答して送信されてきたコンテンツをキャッシュする(一時的に記憶する)。第1要求部301は、ユーザがコンテンツを選択する操作(例えば図8のWebページAのいずれかのハイパーリンクを選択する操作)を行うと、選択されたコンテンツがキャッシュ部306に記憶されているか否かを確認する。第1要求部301は、選択されたコンテンツがキャッシュ部306に記憶されている場合には、そのコンテンツの要求を行わず、キャッシュ部306にそのコンテンツを出力部302に供給するよう指示する。
キャッシュ部306が指示されたコンテンツを出力部302に供給すると、出力部302は供給されたコンテンツを出力する。このように、キャッシュ部306にキャッシュされたコンテンツは、出力するコンテンツを指定するユーザの操作が行われていない状態で予め読み込まれたコンテンツであり、すなわち事前読み込みされたコンテンツである。
コンテンツ提供システム1の各装置は、上記構成に基づいて、ユーザにコンテンツを提供するコンテンツ提供処理を行う。
図10はコンテンツ提供処理における各装置の動作手順の一例を表す。この動作手順は、例えばユーザ装置30にブラウザの画面が表示されており、ユーザが出力させるコンテンツ(Webページ)を選択する操作を行うことを契機に開始される。まず、ユーザ装置30(第1要求部301及びキャッシュ部306)は、ユーザによるコンテンツの選択操作を自装置が受け付けると(ステップS11)、選択されたコンテンツをキャッシュしているか否かを判断する(ステップS12)。
ユーザ装置30(第1要求部301及びキャッシュ部306)は、キャッシュしていない(NO)と判断した場合には、選択されたコンテンツをコンテンツ配信装置20に要求する(ステップS13)。コンテンツ配信装置20(コンテンツ送信部201)は、要求されたコンテンツを要求元のユーザ装置30に送信する(ステップS14)。ユーザ装置30(出力部302)は、送信されてきたコンテンツを出力する(ステップS15)。次に、ユーザ装置30(履歴送信部303)は、ステップS15において出力したコンテンツの履歴情報を閲覧履歴としてサーバ装置10に送信する(ステップS16)。
ユーザ装置30(第1要求部301、出力部302及びキャッシュ部306)は、ステップS12においてキャッシュしている(YES)と判断した場合には、キャッシュしているコンテンツを出力する(ステップS21)。ユーザ装置30(履歴送信部303)は、ステップS21において出力したコンテンツの履歴情報を閲覧履歴としてサーバ装置10に送信する(ステップS22)。サーバ装置10(取得部102)は、ステップS16又はS22において送信されてきた履歴情報を閲覧履歴として取得する(ステップS23)。
サーバ装置10(判定部103)は、取得した閲覧履歴に基づいて、過去に配信された各コンテンツが今後閲覧される可能性の高さを判定する(ステップS31)。次に、サーバ装置10(決定部106)は、ユーザ装置30に事前読み込みさせるコンテンツを決定する(ステップS32)。続いて、サーバ装置10(提供部104)は、決定したコンテンツを事前読み込みするための情報をユーザ装置30に提供する(ステップS33)。ユーザ装置30(第2要求部305)は、提供された情報に基づいてコンテンツ配信装置20に事前読み込みするコンテンツを要求する(ステップS34)。コンテンツ配信装置20(コンテンツ送信部201)は、要求されたコンテンツを要求元のユーザ装置30に送信する(ステップS35)。ユーザ装置30(キャッシュ部306)は、送信されてきたコンテンツをキャッシュする(ステップS36)。
本実施例では、ユーザ装置群3の閲覧履歴に基づいて判定された結果を用いて事前読み込みするコンテンツが決定される。そのため、例えば図8に表す100個のハイパーリンクに対応するコンテンツのうち、ユーザが閲覧したことがないものについても、他のユーザが閲覧した履歴に基づいて、図9に表す例のように各コンテンツが今後閲覧される可能性の高さが判定される。こうして判定された可能性が高いほど、その後ユーザによって閲覧されやすいコンテンツを表すため、事前読み込みする対象として優れていることになる。このように、本実施例によれば、ユーザが閲覧したことがないコンテンツであっても事前読み込みする対象としての優劣を決めることができる。
[2]第2実施例
本発明の第2実施例について、以下、第1実施例と異なる点を中心に説明する。第2実施例では、サーバ装置10の決定部106が第1実施例とは異なる方法で事前読み込みさせるコンテンツを決定する。以下では、決定部106による4つの決定方法について説明する。
[2−1]第1決定方法
第1決定方法では、ユーザ装置30の画面に表示されているハイパーリンクに基づく決定が行われる。例えばパーソナルコンピュータでブラウザにWebページを表示させる場合、Webページが画面よりも大きかったり、ブラウザのウィンドウを小さくしていたりすると、Webページがブラウザに収まらず、Webページの一部が表示される。その場合、ユーザは、Webページに含まれている全てのハイパーリンクのうち、選択可能に表示されているものを選択してコンテンツを出力させることになる。
図11は表示されるハイパーリンクの例を表す。図11では、WebページC1と、それに含まれる「Link−B1」から「Link−B24」までの24個のハイパーリンクと、ユーザ装置30の表示部34の表示面341とが表されている。WebページC1は表示面341よりも大きいものとし、図11ではWebページC1のうち表示面341からはみ出している部分を二点鎖線で仮想的に表している。図11では、「Link−B4」から「Link−B15」までの16個のハイパーリンクが表示面341においてユーザによって選択可能な状態で表示されている。例えば「Link−B13」は一部しか表示されていないが、表示されている部分をクリックやタップすることで選択することができる。
図12は第1決定方法が用いられる場合の各装置が実現する機能構成を表す。図12では、図5に表す各部に加えて表示情報送信部307を備えるユーザ装置30aが表されている。表示情報送信部307は、履歴送信部303と同様に、機能追加プログラムが実行されることで実現される。表示情報送信部307は、選択可能な状態で表示されているハイパーリンクを表す表示情報をサーバ装置10に送信する。表示情報送信部307は、例えばJavaScriptの関数を用いて、ブラウザの表示サイズ、テキストのサイズ及びスクロールバーの状態を取得し、取得したそれらの情報に基づいてブラウザに表示されるWebページのエリアを試算することで、選択可能な状態で表示されるハイパーリンクを特定する。表示情報送信部307は、例えば特定したハイパーリンクのURLを表示情報として一定間隔(例えば0.1秒毎)で繰り返し送信する。
サーバ装置10の決定部106は、表示情報が送信されてくると、供給されたその表示情報が表すハイパーリンクに対応するコンテンツの判定結果を参照し、例えば判定結果が上位の所定の割合に入るものを事前読み込みするコンテンツとして決定する。例えば図11の例において所定の割合が50%であれば、決定部106は16個のハイパーリンクに対応し且つ閲覧確率が上位の8個のコンテンツを、事前読み込みするコンテンツとして決定する。
この場合、提供部104は、ユーザ装置30に選択可能に表示されているハイパーリンクに基づいて事前読み込みのための情報を提供する。ここでいうユーザ装置30は、事前読み込みのための情報の提供先である。具体的には、提供部104は、選択可能に表示されているハイパーリンクから参照されるコンテンツのうち今後閲覧される可能性の高さに応じて決まるコンテンツ(すなわち決定部106が第1決定方法を用いて決定したコンテンツ)を事前読み込みするための情報を、そのユーザ装置30に提供する。
例えば図11の例であれば、表示面341に表示されていないハイパーリンクから参照されるコンテンツは、Webページをスクロールさせない限り参照されない。従って、それらのコンテンツの判定結果は、事前読み込みするコンテンツを決定する際には不要である。第1決定方法では、このように不要なコンテンツの判定結果を用いずに決定部106が事前読み込みさせるコンテンツを決定する。これにより、例えばWebページに含まれる全てのハイパーリンクからそれぞれ参照される全てのコンテンツの判定結果を用いて決定部106が事前読み込みさせるコンテンツを決定する場合に比べて、決定部106がコンテンツを決定する処理の負荷が軽減され、事前読み込みするコンテンツの決定に要する時間が短くなる。その結果、事前読み込みするための情報が提供されるタイミングも早くなり、キャッシュされたコンテンツによる表示の高速化が実現されやすくなる。
[2−2]第2決定方法
第2決定方法では、ユーザ装置30の画面に表示されているポインタの位置に基づく決定が行われる。ポインタとは、画面上の位置を指し示す矢印や十字等の形をした画像であり、マウスやトラックボールなどのポインティングデバイスを介して操作される。
図13はポインタが表示された画面の例を表す。図13では、表示面341に表示されたWebページC2と、それに含まれる「Link−B31」から「Link−B34」までのそれぞれ4隅に配置された4個のハイパーリンクと、ポインタが指し示す位置P1と、スクロールバーS1とが表されている。各ハイパーリンクは表示面341の四隅付近に表示されている。この例では、ユーザがまずポインタをスクロールバーS1に合わせて画面をスクロールさせ、そののちにハイパーリンクを選択するためにポインタを移動させている様子が表されている。
図14は第2決定方法が用いられる場合の各装置が実現する機能構成を表す。図14では、図5に表す各部に加えて位置情報送信部308を備えるユーザ装置30bが表されている。位置情報送信部308は、履歴送信部303と同様に、機能追加プログラムが実行されることで実現される。位置情報送信部308は、ユーザ装置の表示面に表示されているポインティングデバイスのポインタの位置を表す位置情報をサーバ装置10に送信する。位置情報送信部308は、ポインタの位置がどの方向に向かって移動しているかを判断することを可能にする頻度(例えば0.1秒毎)で繰り返し位置情報を送信する。
サーバ装置10の取得部102は、ユーザ装置30bから送信されてきた位置情報を取得して決定部106に供給する。決定部106は、ユーザ装置30bの表示面に表示されているポインティングデバイスのポインタの位置と、判定部103によって判定された可能性の高さとに応じて、事前読み込みするコンテンツを決定する。このポインタの位置に応じたコンテンツの決定方法について、図15を参照して説明する。
図15はポインタが移動した状況の一例を表す。図15の例では、図13に表すWebページC2が表示されている表示面341において、ポインタが指し示す位置がp11からp12まで移動している。位置p12は最も新しく取得された位置である。決定部106は、例えば供給された複数の位置情報が表す複数の位置を近似する直線の式を算出する。この例では、説明を簡単にするため、決定部106が、位置p11及びp12を結ぶ直線L1の式を近似直線として算出するものとする。決定部106は、さらに、直線L1に直交し、且つ、最も新しい位置p12を通る直線L2の式を算出する。
決定部106は、この直線L2を境界とする2つの領域のうち、位置p12の1つ前に取得された位置p11が含まれる方をポインタの移動方向に対して後方に存在する後方領域R1とし、位置p11が含まれない方をポインタの移動方向に対して前方に存在する前方領域R2(図中で斜線を引いて示した領域)とする。決定部106は、後方領域R1に含まれるハイパーリンク(この例では「Link−B32」及び「Link−B34」)から参照されるコンテンツの閲覧確率を小さくし、前方領域R2に含まれるハイパーリンク(この例では「Link−B31」及び「Link−B33」)から参照されるコンテンツの閲覧確率を大きくする補正を行う。決定部106は、例えば後方領域R1側の閲覧確率を0.5倍し、前方領域R2側の閲覧確率を2.0倍する。
提供部104は、例えばこうして決定されたコンテンツのURLを含むプリフェッチタグをユーザ装置30bに送信する。このように、提供部104は、ユーザ装置30の表示面341に表示されているポインタの位置及び今後閲覧される可能性の高さに応じて決まるコンテンツ(すなわち決定部106が第2決定方法を用いて決定したコンテンツ)を事前読み込みするための情報を、そのユーザ装置30に提供する。なお、図15の例では閲覧確率の補正を2通り(前方領域R2と後方領域R1)で行ったが、さらに細かく、前方の90度の範囲、後方の90度の範囲、それ以外というように3通りで補正したり、4通り以上の補正を行ってもよい。いずれの場合も、ポインタの進行方向に近いほど閲覧確率が高くなるように補正することが望ましい。
ユーザがハイパーリンクを選択するためにポインタを移動させている場合には、選択しようとしているハイパーリンクがポインタの前方領域R2に含まれている可能性が高く、反対にポインタの後方領域R1に含まれている可能性は低い。第2決定方法では、上記のとおり閲覧確率を補正することで、前方領域R2に含まれているハイパーリンクから参照されるコンテンツが選択されやすく、後方領域R1に含まれているハイパーリンクから参照されるコンテンツが選択されにくくなる。このように、第2決定方法を用いれば、ポインタの動きからユーザが選択するコンテンツが想定される場合に、想定されたコンテンツが事前読み込みされやすいようにすることができる。
[2−3]第3決定方法
第3決定方法でもポインタの位置に基づく決定が行われる。
図16はポインタの位置の一例を表す。図16の例では、ポインタが位置p21を指し示している。図16には、位置p21を中心とした円形の後方領域R11と、R11よりも大きい後方領域R12とが表されている。決定部106は、後方領域R11に含まれるハイパーリンク(この例では「Link−B31」)から参照されるコンテンツの閲覧確率に係数K1を乗じる。また、決定部106は、後方領域R11の外で後方領域R12に含まれるハイパーリンク(この例では「Link−B32」及び「Link−B33」)から参照されるコンテンツの閲覧確率に係数K2を乗じ、後方領域R12の外のハイパーリンク(この例では「Link−B34」)から参照されるコンテンツの閲覧確率に係数K3を乗じる。
K1>K2>K3と定めると、ポインタの位置p21に近いハイパーリンクから参照されるコンテンツほど、閲覧確率が大きくなるに補正され、事前読み込みされやすくなる。例えばユーザが選択しようとしているハイパーリンクの近辺までポインタを移動させたものの、すぐに選択せずに迷っている場合には、ポインタが小刻みに揺れたり小さく回転したりすることがある。その場合、ポインタが移動する方向からは、ユーザが選択しようと意図したコンテンツのハイパーリンクがどの方向にあるのか分からなくなる。第3決定方法を用いれば、そのようにポインタの動きではなく位置からユーザが選択するコンテンツが想定される場合に、想定されたコンテンツが事前読み込みされやすいようにすることができる。
なお、決定部106は、ポインタの位置の移動速度に応じて第2決定方法と第3決定方法とを使い分けてもよい。決定部106は、例えば、ポインタの位置の移動速度が閾値以上である場合には、第2決定方法を用いて事前読み込みさせるコンテンツを決定し、その移動速度が閾値未満である場合には、第3決定方法を用いて事前読み込みさせるコンテンツを決定する。これにより、選択しようとするハイパーリンクの付近までポインタを大きく移動させるときと、その移動のあとに実際に選択するかどうかを迷っているときとで、それぞれの状況においてユーザが選択すると想定されるコンテンツが事前読み込みされやすいようにすることができる。
[2−4]第4決定方法
第4決定方法でもポインタの位置に基づく決定が行われる。決定部106は、3つ以上のポインタの位置の変化から、ポインタの加速度(加速する方向及び加速の大きさ)を算出する。決定部106は、例えば図15の説明で述べた後方領域の閲覧確率を、算出した加速度が0である場合にX1(図15の例では0.5)を乗じる補正をし、加速度が正の値である(すなわち加速している)場合にはX1よりも小さいX2(例えば0.3)を乗じる補正をし、算出した加速度が負の値である(すなわち減速している)場合にはX1よりも大きいX3(例えば0.7)を乗じる補正をする。
一方、決定部106は、前方領域の閲覧確率を、算出した加速度が0である場合にX4(図15の例では2.0)を乗じる補正をし、加速度が正の値である(すなわち加速している)場合にはX4よりも大きいX5(例えば2.5)を乗じる補正をし、算出した加速度が負の値である(すなわち減速している)場合にはX1よりも小さいX6(例えば1.5)を乗じる補正をする。
ポインタが加速されている場合には、減速されている場合に比べて、ユーザが選択しようとしているハイパーリンクがポインタの前方領域に含まれている可能性が高く、反対にポインタの後方領域に含まれている可能性は低い。第4決定方法では、上記のとおり閲覧確率を補正することで、ポインタが加速されている場合に、減速されている場合に比べて、前方領域に含まれているハイパーリンクから参照されるコンテンツが選択されやすく、後方領域R1に含まれているハイパーリンクから参照されるコンテンツが選択されにくくなる。このように、第4決定方法を用いれば、ポインタの加速度からユーザが選択すると想定されるコンテンツが事前読み込みされやすいようにすることができる。
なお、補正値(閲覧確率に乗じる値)を、各ハイパーリンク及びポインタの距離と加速度の大きさとに応じて変化させてもよい。例えば、ある地点におけるポインタの加速度が正の場合、加速度の絶対値が大きいほどポインタが停止する位置がその地点から離れた位置になりやすい。そこで、例えば、補正値の基準値を設定し、ハイパーリンク及びポインタの距離に比例して大きくなる係数を基準値に乗じた値に、さらに加速度の絶対値に比例して大きくなる係数を乗じた値を補正値とする。また、加速度が負の場合は、加速度の絶対値が大きい(減速の度合いが大きい)ほどポインタの停止位置が近くになりやすいから、ハイパーリンク及びポインタの距離に反比例して大きくなる係数を基準値に乗じた値に、さらに加速度の絶対値に比例して大きくなる係数を乗じた値を補正値とする。この場合も、ユーザが選択すると想定されるコンテンツが事前読み込みされやすいようにすることができる。
[3]変形例
上述した各実施形態は、それぞれが本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、各実施形態及び各変形例は必要に応じてそれぞれ組み合わせてもよい。
[3−1]優先順位
事前読み込みされるコンテンツが複数ある場合に、それらに優先順位が決められていてもよい。本変形例では、例えば、サーバ装置10の提供部104が、判定部103により判定された可能性の高さに応じて各コンテンツの優先順位を決定し、決定した優先順位に従いそれらの各コンテンツを事前読み込みするための情報を提供する。ここで優先順位付けされるコンテンツは、例えば事前読み込みする対象として決定部106により決定されたコンテンツであるが、全コンテンツについて優先順位付けがされてもよい。
提供部104は、例えば、判定された閲覧確率が高いものから順に優先順位を決定する。そして、提供部104は、例えば、優先順位が高いコンテンツのプリフェッチタグから順番に生成してユーザ装置30に送信する。ユーザ装置30の第2要求部305は、サーバ装置10からプリフェッチタグが送信されてくる度に、受信したプリフェッチタグに基づいてコンテンツを要求する。これにより、コンテンツの事前読み込みが決定された優先順位の順番で行われる。なお、提供部104が各プリフェッチタグに優先順位を表す情報を対応付けてユーザ装置30に送信し、第2要求部305がその情報が表す優先順位の順番でコンテンツを要求してもよい。また、事前読み込みは1つずつ順番に行われてもよいし、複数の事前読み込みが並行して行われてもよい。
事前読み込みするコンテンツが複数ある場合、最初のコンテンツが事前読み込みされてから最後のコンテンツが事前読み込みされるまでには時間を要する。そのため、事前読み込みの順番が早いコンテンツほど、出力するコンテンツとしてユーザによって選択されたときに既にキャッシュされている可能性が高くなる。上記の例では、判定された閲覧確率が高いものほどこの可能性が高くなる。これにより、優先順位を考慮せずに事前読み込みをする場合に比べて、事前読み込みの対象として決定されたコンテンツがキャッシュされる前にユーザによって選択されてしまい、コンテンツ配信装置20からそのコンテンツが配信されるという事態を生じにくくすることができる。
なお、優先順位の決定方法は上記のものに限らない。例えば閲覧確率に加えてコンテンツのデータサイズに応じて優先順位が決定されてもよい。具体的には、(閲覧確率)×k(データサイズ)の値又は(閲覧確率)×k(1/データサイズ)の値が大きいものほど優先順位を高くすればよい(kは係数)。kの値を大きくするほど、優先順位がデータサイズの影響を受けやすくなる。
前者の値が用いられた場合、データサイズが大きいほど優先順位が高くなるので、キャッシュされたコンテンツが選択された場合における表示の高速化の効果(コンテンツ配信装置20から配信された場合に比べて表示に要する時間が短くなる度合い)を大きくすることができる。また、後者の値が用いられた場合、データサイズが小さいほど優先順位が高くなるので、前者の値が用いられた場合に比べて、キャッシュされるコンテンツが多くなりやすく、表示が高速化される機会を多くすることができる。
[3−2]予実の比較
判定部103が判定したコンテンツが今後閲覧される可能性の高さと、実際の閲覧結果とを比較して(つまり予実を比較して)次の判定に生かしてもよい。例えば、判定部103は、各コンテンツについて、過去に判定した今後閲覧される可能性の高さと、上述した事前読み込みするための情報が提供されたユーザ装置30における実際の閲覧結果とを比較する。
図17は予実の比較結果の一例を表す。図17の例では、図9の例で閲覧確率が判定されたコンテンツと、各々の閲覧確率と、前述した閲覧結果(「○」は閲覧されたことを表し、「×」は閲覧されなかったことを表す)とが表されている。この閲覧結果は、提供部104がこの閲覧確率に基づいて事前読み込みするための情報を提供したユーザ装置30のその後の閲覧履歴によって表される。この例では、閲覧確率が高い方のWebページ(この場合のコンテンツ)B9、B12、B3、B22がいずれも閲覧されているという結果が表されている。
判定部103は、比較結果が条件を満たしたユーザ装置30における閲覧履歴に基づいて判定を行う。条件としては、例えば閲覧結果が「○」であるコンテンツの閲覧確率の平均が閾値以上の場合に満たされる第1条件が用いられる。この第1条件は、閲覧確率が高いコンテンツが閲覧されるほど満たされやすくなるので、閲覧確率が高いコンテンツを閲覧する傾向にあるユーザのユーザ装置30における閲覧履歴が判定に用いられることになる。反対に、閲覧結果が「○」であるコンテンツの閲覧確率の平均が閾値未満の場合に満たされる第2条件が用いられると、閲覧確率が低いコンテンツを閲覧する傾向にあるユーザのユーザ装置30における閲覧履歴が判定に用いられることになる。
第1条件が用いられた場合、閲覧確率が高いコンテンツ、すなわち多数派のユーザが閲覧したコンテンツを閲覧する傾向があるユーザの閲覧履歴が用いられる。つまり、このユーザも多数派のユーザであるから、多数派のユーザが閲覧するコンテンツの閲覧確率がより高くなるように判定され、全ての閲覧履歴が用いられる場合に比べて、多数派のユーザにとっては自分が選択するコンテンツが事前読み込みされやすくなり、高速表示されやすくなる。なお、この例で分かるように、閲覧履歴が用いられる(又は取得される)ユーザ装置群3に、事前読み込みを行うユーザ装置30が含まれていなくてもよい。
第2条件が用いられた場合は反対に小数派のユーザが閲覧するコンテンツの閲覧確率がより高くなるように判定される。少数派のユーザの中には、多数派のユーザが注目する前に新たなコンテンツに注目する者もいる。そのようなユーザが閲覧したコンテンツはその時点では閲覧確率が低いが、そのユーザが閲覧したあとに多くのユーザによって閲覧されることがある。そこで、判定部103は、事前読み込みするための情報が提供されたユーザ装置30における実際の閲覧結果に加え、そのユーザ装置30による閲覧の後におけるユーザ装置群3の閲覧結果をさらに比較してもよい。
図18は予実の比較結果の別の一例を表す。図18の例では、図9の例で閲覧確率が判定されたコンテンツと、各々の閲覧確率と、図17の例とは別のユーザ装置30における閲覧結果と、ユーザ装置群3における閲覧結果とが表されている。ユーザ装置群3における閲覧結果は、閲覧確率と同様に、全コンテンツの閲覧回数の総計に対する各コンテンツの閲覧回数の比率で表されている。この例では、事前の閲覧確率の順位が55、56、57番目のコンテンツの閲覧結果が「○」となっており、それらについては、閲覧確率(%)が「0.15」、「0.14」、「0.12」であったのが、ユーザ装置群3の閲覧結果が「2.4」、「3.1」、「1.1」と増加している。
判定部103は、こうしてさらに比較した結果が条件を満たしたユーザ装置30における閲覧履歴に基づいて判定を行う。具体的には、判定部103は、ユーザ装置群3の閲覧結果を閲覧確率で除した値を変化率として、或るユーザ装置30における閲覧結果が「○」であった各コンテンツの変化率の平均が閾値以上である場合に満たされる条件を用いる。この条件が満たされるユーザ装置30を利用するユーザは、コンテンツの流行をつかむことに長けたユーザであり、そのユーザが閲覧したコンテンツはその後多くのユーザによって閲覧されることになりやすい。図18の例によれば、そのようなコンテンツが、閲覧確率がまだ低い状態でも事前読み込みされやすくなり、高速表示されやすくなる。
なお、上記の例では、予実の比較結果に基づいて閲覧履歴を用いるユーザを絞り込んだが、これに限らず、比較結果に基づいて各ユーザの閲覧履歴を重み付けしてもよい。例えば、判定部103は、上記の各例で閲覧履歴を用いることにしたユーザの閲覧履歴(コンテンツを閲覧した回数)を2倍にし、閲覧履歴を用いないことにしたユーザの閲覧履歴はそのまま用いて閲覧確率を算出する、という具合である。この場合、重み付けがされない場合に比べて、重み付けがされたユーザにとっては自分が選択するコンテンツが事前読み込みされて高速表示されやすくなる。
[3−3]変化傾向
決定部106は、閲覧確率の変化率に基づいて事前読み込みの対象を決定してもよい。例えば、決定部106は、各コンテンツについて判定された閲覧確率と、過去に判定された閲覧確率に基づいて閲覧確率の変化率を算出する。決定部106は、閲覧確率が大きいものに加え、閲覧確率は小さくとも変化率が閾値以上であるコンテンツを事前読み込みの対象として決定する。これにより、急にユーザの関心を引くようになったコンテンツが事前読み込みされて高速表示されやすくなる。また、このようなコンテンツは、変化率が小さいコンテンツに比べてその後多くのユーザによって閲覧されることになりやすいから、事前読み込みされたコンテンツが閲覧されずに無駄になることも抑制される。
[3−4]各機能を実現する装置
図5等に表す各機能は、実施例とは異なる装置によって実現されてもよい。
図19は本変形例における機能構成の一例を表す。図19の例では、図5に表す各部に加えて表示情報送信部307及び決定部309を備えるユーザ装置30cと、図5に表す提供部104に代えて提供部104bを備えるサーバ装置10cが表されている。表示情報送信部307及び決定部309は上述した機能追加プログラムによって実現される。
サーバ装置10cの提供部104bは、決定部106を備えていない。提供部104bは、取得部102から供給されたユーザ装置30cの閲覧履歴に基づいて実施例の決定部106と同様に現在出力しているコンテンツを特定する。提供部104bは、そのコンテンツが表示されている状態でユーザが選択し得るコンテンツのそれぞれの判定結果(本実施例では閲覧確率)を読み出して、それらのコンテンツを事前に読み込むためのプリフェッチタグに対応付けてユーザ装置30cに送信する。
ユーザ装置30cの表示情報送信部307は、本変形例では、上述した表示情報を決定部309に供給する。決定部309は、サーバ装置10cによって閲覧履歴に基づいて各コンテンツが今後配信される可能性の高さが判定されると、その判定の結果と、供給された表示情報とに応じて事前読み込みの対象となるコンテンツを決定する。この決定は、例えば第2実施例で述べた第1決定方法を用いて行われる。
決定部309は、決定したコンテンツを事前に読み込むためのプリフェッチタグを事前読込処理部304に供給する。以下、事前読込処理部304が供給されたプリフェッチタグに基づいて第2要求部305にコンテンツを要求させることで、実施例と同様にコンテンツが事前に読み込まれる。このように、提供部104bがユーザ装置30cに提供する情報は、判定部103によって判定された可能性の高さに応じて決まるコンテンツ(本変形例ではユーザ装置30cの決定部309が決定するコンテンツ)を事前読み込みするための情報となる。なお、表示情報送信部307の代わりに図14に表す位置情報送信部308をユーザ装置が備えることで、第2実施例で述べた第2、第3、第4決定方法を用いた事前読み込み対象の決定が行われてもよい。
なお、図19の例以外にも、例えばサーバ装置10のプログラム送信部101がコンテンツ配信装置20で実現されてもよい。この場合、コンテンツ配信装置20が送信する機能追加プログラムによって履歴送信部303や表示情報送信部307、位置情報送信部308、決定部309が実現される。また、例えばサーバ装置10の各機能がクラウドコンピューティングサービスで提供される場合、それらの機能が実現される装置の筐体や設置場所が異なることがあるが、その場合でも、それらの装置が協働して、上述したサーバ装置10や10cに相当するサーバ装置として機能することになる。
[3−5]機能拡張プログラム
ユーザ装置30は、実施例や上記の変形例では機能拡張プログラムをインデックスサーバ装置やプログラムサーバ装置から取得したが、これに限らず、機能拡張プログラムを予め記憶しておいてもよい。その場合、機能拡張プログラムは、ユーザの操作で起動されてもよいし、ブラウザとともに起動されるようになっていてもよい。
[3−6]事前読み込みの対象
実施例では、例えば図8に表すWebページA1が表示されている場合に、WebページA1に含まれるハイパーリンクから直接参照されるコンテンツが事前読み込みの対象であったが、これに限らない。例えば、そうして参照されるWebページB1に含まれるハイパーリンクから直接参照されるコンテンツも事前読み込みの対象としてもよい。これはつまり、WebページA1から見てWebページB1を2階層目のコンテンツとすれば、3階層目のコンテンツも事前読み込みの対象にするということである。さらに、4階層目以降のコンテンツを事前読み込みの対象としてもよい。
また、実施例では、事前読み込みする対象のコンテンツがWebページ単位で決定されたが、これに限らず、Webページに含まれる画像や動画などの単位で決定されてもよい。例えば図8の例であれば、WebページB1に含まれるコンテンツB1−1、B1−2、B1−3のうち、B1−1及びB1−2だけを事前読み込みするコンテンツとして決定されるという具合である。
Webページによっては、ユーザ装置30に記憶されているcookie(クッキー)等の情報に応じたコンテンツが表示されることがある。例えば図8の例の場合、コンテンツB1−3の位置に、ユーザ装置30によってはコンテンツB1−4が表示されたりB1−5が表示されたりするという具合である。この場合、決定部106は、WebページB1のHTMLファイルを解析して、ユーザ装置30によって異なるコンテンツが表示される部分と表示されるコンテンツが固定されている部分とを判断する。
そして、決定部106は、例えば表示が固定されているコンテンツのうちから事前読み込みするコンテンツを決定する。また、決定部106は、ユーザ装置30からcookie等の情報を取得して、そのユーザ装置30に配信されるコンテンツを特定し、特定したコンテンツのうちから事前読み込みするコンテンツを決定してもよい。いずれの場合も、事前読み込みしたコンテンツがそのユーザ装置30では表示されないものであるという事態を防ぐことができる。
[3−7]事前読み込みのための情報
上述した実施例や変形例では、コンテンツを事前読み込みするための情報としてプリフェッチタグや判定結果が提供されたが、これに限らない。例えば単に事前読み込みするコンテンツのURLであってもよく、その場合でも、ユーザ装置30において、第2要求部305がそのURLに基づいて要求したコンテンツがキャッシュ部306にキャッシュされるようになっていればよい。なお、この場合のキャッシュの動作にブラウザプログラムが対応していなければ、上述した機能追加プログラムが実現する機能によってキャッシュがなされればよい。
[3−8]事前読み込みのための情報の提供経路
実施例では、コンテンツを事前読み込みするための情報がサーバ装置10からユーザ装置30に直接提供されたが、これに限らず、例えばコンテンツ配信装置20を介して提供されてもよい。この場合、コンテンツ配信装置20は、例えばユーザ装置30から要求されたWebページのHTMLファイルにプリフェッチタグを埋め込んで送信する。この方法では、例えば図8に表すWebページA1からWebページB1に表示が切り替わるときに、WebページB2〜B100のうち決定部106により決定されたコンテンツが事前読み込みされる。こうして読み込まれたコンテンツは、ユーザが一旦WebページA1に戻って他のコンテンツを選択したときに高速表示されることになる。また、前述したように3階層目のコンテンツも事前読み込みの対象となっていれば、WebページB1に含まれるハイパーリンクから直接参照されるコンテンツも事前読み込みされ、高速表示が可能となる。
[3−9]閲覧履歴
実施例では、コンテンツのファイル名、記憶場所、出力時刻が閲覧履歴として取得されたが、これに限らない。例えば、そのコンテンツへのハイパーリンクが含まれていたWebページやそのハイパーリンクが対応付けられていた画像や動画などの参照元のコンテンツを特定する情報(ファイル名及び記憶場所)が閲覧履歴として取得されてもよい。同じコンテンツへのハイパーリンクが含まれていても、Webページが異なればそのコンテンツが閲覧される可能性は異なることが多い。ハイパーリンクが対応付けられていた画像や動画についても同様である。
そこで、判定部103は、それらのWebページや画像、動画などのコンテンツから別のコンテンツが参照される場合に、それら参照元のコンテンツ毎に閲覧確率を判定する。そして、決定部106は、ユーザ装置30が現在出力しているコンテンツにおける閲覧確率に基づいて事前読み込みさせるコンテンツを決定する。これにより、参照元を考慮せずに判定部103による判定や決定部106による決定が行われる場合に比べて、よりユーザの状況に合ったコンテンツを事前読み込みさせることができる。
なお、判定部103は、さらに、各コンテンツが参照されるまでのハイパーリンクの変遷毎に閲覧確率を判定してもよい。この場合、判定部103は、例えばWebページD1、D2、D3と順番に閲覧してコンテンツE1が閲覧された場合と、WebページD4、D5、D6と順番に閲覧してコンテンツE1が閲覧された場合とでそれぞれ閲覧確率を判定する(WebページD3、D6はいずれもコンテンツE1を参照するハイパーリンクを含むものとする)。この場合、ハイパーリンクの変遷を考慮しない場合に比べて、よりユーザの状況に合ったコンテンツを事前読み込みさせることができる。
[3−10]履歴送信部
履歴送信部303は、実施例では出力部302から供給された履歴情報を送信したが、これに限らず、例えば第1要求部301及び第2要求部305が送信するHTTPリクエストを取得して、それらのHTTPリクエストによって要求されたコンテンツのファイル名、記憶場所及び要求された時刻を閲覧履歴として送信してもよい。また、コンテンツ配信装置20から送信されてくるコンテンツを、出力部302を介さず直接受け取って、受け取ったコンテンツのファイル名等を閲覧履歴として送信してもよい。
また、履歴送信部303は上記とは異なる閲覧履歴を送信してもよい。履歴送信部303は、例えば、自装置を利用するユーザが、事前読み込みしたコンテンツを閲覧する傾向にあるユーザである場合には、図7に表す履歴情報のような閲覧履歴に代えて、閲覧履歴よりもデータ量が小さい所定の情報(例えば数ビットから数バイト程度の符号)をサーバ装置10に送信する。履歴送信部303は、例えば、自装置に事前読み込みされたコンテンツのうちの所定の割合(例えば7割や9割など)以上のコンテンツが閲覧された場合に、自装置を利用するユーザが事前読み込みしたコンテンツを閲覧する傾向にあると判断する。
取得部102は、上記の所定の情報を取得した場合には、事前読み込みしたコンテンツを閲覧したことを表す閲覧履歴を取得したものとする。具体的には、取得部102は、所定の情報として例えば特定の符号がユーザ装置30から送信されてくると、そのユーザ装置30に対して送信された、コンテンツを事前読み込みするための情報のうち最新のものを提供部104に問い合わせる。取得部102は、その応答で供給された情報が表すコンテンツ、すなわち事前読み込み対象となったコンテンツが閲覧されたことを表す履歴情報(例えばファイル名、記憶場所、符号が送信されてきた時刻を含む情報)を生成し、判定部103や提供部104に供給する。
なお、履歴送信部303は、事前読み込みしたコンテンツを閲覧する傾向にあるユーザに限らず、他の特定のコンテンツを閲覧する傾向にあるユーザが自装置を利用している場合に上記所定の情報を送信してもよい。例えば、履歴送信部303は、図17の説明で述べた多数派のユーザや少数派のユーザが自装置を利用している場合に上記所定の情報を送信してもよいし、図18の説明で述べたコンテンツの流行をつかむことに長けたユーザが自装置を利用している場合に上記所定の情報を送信してもよい。いずれの場合も、履歴送信部303は、自装置を利用するユーザが特定のコンテンツを閲覧する傾向にあるユーザである場合には、閲覧履歴に代えて、閲覧履歴よりもデータ量が小さい所定の情報を送信する。そして、取得部102は、その所定の情報を取得した場合には、前述した特定のコンテンツを閲覧したことを表す閲覧履歴を取得したものとする。これにより、サーバ装置10が閲覧履歴を取得する際の通信の負荷を軽くすることができる。
[3−11]事前読込処理部
事前読込処理部304は、実施例では、第2要求部305にコンテンツの要求を指示する処理を事前読み込みのための処理として行ったが、これに限らず、コンテンツ配信装置20に対して事前読み込みするコンテンツを直接要求する処理を事前読み込みのための処理として行ってもよい。
[3−12]発明のカテゴリ
本発明は、サーバ装置、コンテンツの配信装置及びユーザ装置といった各装置の他、図5等に表す各機能を実現する他の装置としても捉えられる。また、それらの装置を備えるコンテンツ提供システムとしても捉えられるし、それらの装置が実施する処理を実現するための情報処理方法やそれらの装置を制御するコンピュータを機能させるためのプログラムとしても捉えられる。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されてもよいし、インターネット等のネットワークを介してコンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態で提供されてもよい。
1…コンテンツ提供システム、2…ネットワーク、10…サーバ装置、20…コンテンツ配信装置、30…ユーザ装置、11、21、31…制御部、12、22、32…記憶部、13、23、33…通信部、24…表示部、25…操作部、101…プログラム送信部、102…取得部、103…判定部、104…提供部、105…蓄積部、106…決定部、201…コンテンツ送信部、301…第1要求部、302…出力部、303…履歴送信部、304…事前読込処理部、305…第2要求部、306…キャッシュ部、307…表示情報送信部、308…位置情報送信部、309…決定部

Claims (9)

  1. ユーザ装置群におけるコンテンツの閲覧履歴を取得する取得部と、
    取得された前記閲覧履歴に基づいて、過去に配信された各コンテンツが今後閲覧される可能性の高さを判定する判定部と、
    判定された前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報をユーザ装置に提供する提供部と
    を備えるサーバ装置。
  2. 前記提供部は、ユーザ装置に表示されているハイパーリンクから参照されるコンテンツのうちの前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報を当該ユーザ装置に提供する
    請求項1に記載のサーバ装置。
  3. 前記提供部は、ユーザ装置に表示されているポインタの位置及び前記可能性の高さに応じて決まるコンテンツを事前読み込みするための情報を当該ユーザ装置に提供する
    請求項1又は2に記載のサーバ装置。
  4. 前記提供部は、判定された前記可能性の高さに応じて各コンテンツの優先順位を決定し、決定した当該優先順位に従い当該各コンテンツを事前読み込みするための情報を提供する
    請求項1から3のいずれか1項に記載のサーバ装置。
  5. 前記判定部は、各コンテンツについて、過去に判定した前記可能性の高さと前記情報が提供されたユーザ装置における実際の閲覧結果とを比較して、比較結果が条件を満たしたユーザ装置における前記閲覧履歴に基づいて前記判定を行う
    請求項1から4のいずれか1項に記載のサーバ装置。
  6. ユーザ操作に基づいて配信装置にコンテンツを要求する第1要求部と、事前読み込みするコンテンツを当該配信装置に要求する第2要求部と、前記第2要求部の要求に応答して送信されてきたコンテンツをキャッシュするキャッシュ部と、コンテンツを出力する出力部とを備えるユーザ装置を制御するコンピュータを、
    サーバ装置がユーザ装置群から取得した閲覧履歴に基づいて各コンテンツが今後配信される可能性の高さを判定すると、当該判定の結果に応じて事前読み込みするコンテンツを決定する決定部と、
    前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部
    として機能させるためのプログラム。
  7. 請求項2に記載のサーバ装置と、
    自装置に表示されているハイパーリンクから参照されるコンテンツから、各コンテンツについて前記サーバ装置により判定された前記可能性の高さに応じて事前読み込みするコンテンツを決定する決定部と、
    前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部とを備えるユーザ端末と
    を備える情報処理システム。
  8. 請求項3に記載のサーバ装置と、
    自装置に表示されているポインタの位置及び前記サーバ装置により判定された前記可能性の高さに応じて事前読み込みするコンテンツを決定する決定部と、
    前記サーバ装置から送信されてくるコンテンツを事前読み込みするための情報を用いて、前記決定部により決定されたコンテンツの事前読み込みのための処理を行う事前読込処理部とを備えるユーザ端末と
    を備える情報処理システム。
  9. 請求項1から4のいずれか1項に記載のサーバ装置と、
    自装置を利用するユーザの操作に基づくコンテンツの閲覧履歴を前記サーバ装置に送信する送信部であって、前記ユーザが特定のコンテンツを閲覧する傾向にあるユーザである場合には、前記閲覧履歴に代えて、当該閲覧履歴よりもデータ量が小さい所定の情報を送信する送信部を備えるユーザ端末と
    を備え、
    前記サーバ装置の取得部は、前記所定の情報を取得した場合には、前記特定のコンテンツを閲覧したことを表す閲覧履歴を取得したものとする
    情報処理システム。
JP2015095162A 2015-05-07 2015-05-07 サーバ装置、プログラム及び情報処理システム Pending JP2016212595A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015095162A JP2016212595A (ja) 2015-05-07 2015-05-07 サーバ装置、プログラム及び情報処理システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015095162A JP2016212595A (ja) 2015-05-07 2015-05-07 サーバ装置、プログラム及び情報処理システム

Publications (1)

Publication Number Publication Date
JP2016212595A true JP2016212595A (ja) 2016-12-15

Family

ID=57551129

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015095162A Pending JP2016212595A (ja) 2015-05-07 2015-05-07 サーバ装置、プログラム及び情報処理システム

Country Status (1)

Country Link
JP (1) JP2016212595A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019074841A (ja) * 2017-10-13 2019-05-16 株式会社Link−U コンテンツ配信装置、コンテンツ配信プログラム、コンテンツ配信方法及びコンテンツ配信システム
JP2020074154A (ja) * 2016-12-28 2020-05-14 グーグル エルエルシー 将来のアクションのためのユーザインターフェースデータキャッシングの最適化

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020074154A (ja) * 2016-12-28 2020-05-14 グーグル エルエルシー 将来のアクションのためのユーザインターフェースデータキャッシングの最適化
US11310331B2 (en) 2016-12-28 2022-04-19 Google Llc Optimizing user interface data caching for future actions
JP2019074841A (ja) * 2017-10-13 2019-05-16 株式会社Link−U コンテンツ配信装置、コンテンツ配信プログラム、コンテンツ配信方法及びコンテンツ配信システム

Similar Documents

Publication Publication Date Title
US11310331B2 (en) Optimizing user interface data caching for future actions
US10417300B2 (en) Systems and methods for improved web-based document retrieval and object manipulation
CA2891472C (en) Delivery and display of page previews during page retrieval events
US9530099B1 (en) Access to network content
US9009103B2 (en) Fingerprint-based, intelligent, content pre-fetching
US20150193395A1 (en) Predictive link pre-loading
US10440140B2 (en) Browser cache management
US10162864B2 (en) Reader application system utilizing article scoring and clustering
JP2018506110A (ja) ウェブページのローディング方法およびシステム
EP2488958A2 (en) Pre-fetching content items based on social distance
US20120042264A1 (en) Configuring a policy for sharing browser history
US20140040721A1 (en) Resource-adaptive content delivery on client devices
US11113455B2 (en) Web page rendering on wireless devices
CN105653724A (zh) 一种页面曝光量的监控方法和装置
JP2016212595A (ja) サーバ装置、プログラム及び情報処理システム
CN111698365A (zh) 一种信息展示的方法和装置
US20160274780A1 (en) Information display apparatus, distribution apparatus, information display method, and non-transitory computer readable storage medium
US10796079B1 (en) Generating a page layout based upon analysis of session variables with respect to a client device
JP6224682B2 (ja) 情報表示プログラム、情報表示装置、情報表示方法及び配信装置
KR101132220B1 (ko) 캐쉬(cache)를 이용하여 웹 페이지를 제공하기 위한 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체