JP2015530639A - 向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム - Google Patents

向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム Download PDF

Info

Publication number
JP2015530639A
JP2015530639A JP2015523220A JP2015523220A JP2015530639A JP 2015530639 A JP2015530639 A JP 2015530639A JP 2015523220 A JP2015523220 A JP 2015523220A JP 2015523220 A JP2015523220 A JP 2015523220A JP 2015530639 A JP2015530639 A JP 2015530639A
Authority
JP
Japan
Prior art keywords
tag
state
threshold
transitioning
latency
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
JP2015523220A
Other languages
English (en)
Other versions
JP6262229B2 (ja
JP2015530639A5 (ja
Inventor
ウィーナー,デイビッド・アブラハム
リード,ドッセル・オブリアン,ジュニア
ガードナー,デイビッド・スコット
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Blue Kai lnc
Original Assignee
Blue Kai lnc
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 Blue Kai lnc filed Critical Blue Kai lnc
Publication of JP2015530639A publication Critical patent/JP2015530639A/ja
Publication of JP2015530639A5 publication Critical patent/JP2015530639A5/ja
Application granted granted Critical
Publication of JP6262229B2 publication Critical patent/JP6262229B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • H04L43/0888Throughput
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/28Flow control; Congestion control in relation to timing considerations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/61Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources taking into account QoS or priority requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Environmental & Geological Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Transfer Between Computers (AREA)
  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

実施形態は、タグ性能、応答時間、および待ち時間を率先してモニタリングする非同期処理に基づいてタグ中断を制御するために複数のタグ状態を採用することに向けられている。タグは、複数の状態のうちの1つの状態にあってもよい。NORMAL状態またはFLAGGED状態のタグは、デプロイメントのためにイネーブルにされてもよく、SUSPENSION A状態またはSUSPENSION B状態のタグは、デプロイメントを阻止されてもよい。タグの状態は、時間待ちイベントが生じたかどうか判断するためにタグの待ち時間をモニタリングすることに基づいて変化してもよい。タグ待ち時間は、ウェブページ要求から独立して非同期にモニタリングされてもよい。時間待ちイベントが生じた場合、タグの状態は、NORMALからFLAGGEDに、FLAGGEDからSUSPENSION Aに、またはSUSPENSION BからSUSPENSION_Aに変化してもよい。非時間待ちイベントが生じた場合、タグの状態は、SUSPENSION BからFLAGGEDに、またはFLAGGEDからNORMALに変化してもよく、一方、タグの状態は、予め定められた期間の後、SUSPENSION_AからSUSPENSION_Bに変化してもよい。

Description

関連出願との相互参照
本願は、2012年7月20日に出願された、「向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム」(Tag Latency Monitoring And Control System For Enhanced Web Page Performance)と題された米国特許出願連続番号第13/554,500号の優先権を主張する。その内容全体はここに引用により援用される。
技術分野
この発明は一般にタグ管理に関し、より特定的には、タグ待ち時間を率先してモニタリングするように設計された非同期プロセスに基づいてタグ中断を制御するために複数のタグ状態を採用することに関するものの、それに限定されない。
背景
今日、多くのウェブサイトが、ウェブサイト自体とは別個の第三者サービスを含んでいる。たとえば、ウェブサイトは、第三者広告、ヘルプチャットセッション、モニタリングサービスなどを含む場合がある。典型的には、第三者は、ユーザが特定のウェブページを訪れると、そのウェブページが第三者サービスをロードするように、そのサービスをウェブサイトに販売する場合がある。第三者サービスをロードすることは、第三者サービス用のコードをリモート位置から実行することを含む場合もある。
しかしながら、第三者サービスが遅かったり、または反応がなかったりする場合、ウェブページのロードは遅くなるかもしれず、または、ウェブページはまったくロードできなくなるかもしれない。このため、この発明は、これらのおよび他の検討事項に関してなされたものである。
図面の簡単な説明
この発明の非限定的で非包括的な実施形態を、以下の図面を参照して説明する。図面では、特別の定めのない限り、さまざまな図全体を通し、同じ参照番号は同じ部分を指す。
この発明のよりよい理解のために、添付図面とともに読まれるべき以下の詳細な説明を参照する。
この発明の実施形態が実現され得る環境のシステム図である。 図1に示すようなシステムに含まれ得るクライアント装置の一実施形態を示す図である。 図1に示すようなシステムに含まれ得るネットワーク装置の一実施形態を示す図である。 タグの待ち時間の非同期モニタリングに基づいてタグ状態を変化させ、タグの状態に基づいてタグをデプロイメントのためにイネーブルにするための全体プロセスの一実施形態を概して示す論理フロー図である。 タグの時間待ちイベント(latent event)およびタグの現在の状態に基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図である。 タグの非時間待ちイベント(non-latent event)およびタグの現在の状態に基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図である。 複数の状態のうちの1つの状態にあるタグを採用し、時間待ちイベントまたは非時間待ちイベントに基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図である。 複数のタグ状態と状態変化をトリガし得るイベントとの図形表示を示す使用事例の一実施形態を示す図である。 複数の状態のうちの1つの状態にあるタグを採用し、タグ待ち時間に基づいてタグ状態を変化させるためのプロセスの代替的な一実施形態を概して示す論理フロー図である。 複数の状態のうちの1つの状態にあるタグを採用し、タグ待ち時間に基づいてタグ状態を変化させるためのプロセスの代替的な一実施形態を概して示す論理フロー図である。 複数のタグ状態と状態変化をトリガし得るイベントとの図形表示を示す使用事例の代替的な一実施形態を示す図である。 タグ待ち時間をモニタリングし、タグ状態変化およびデプロイメントを制御するために利用され得るシステムのシステム図を示す使用事例の一実施形態を示す図である。
詳細な説明
明細書および請求項全体を通し、以下の用語は、文脈上明らかに他の意味に解釈すべき場合を除き、ここに明示的に関連付けられた意味を有する。ここに使用されるような「一実施形態では」という文言は、必ずしも同じ実施形態を指していないものの、指す場合もある。また、ここに使用されるような「別の実施形態では」という文言は、必ずしも異なる実施形態を指していないものの、指す場合もある。このため、以下に説明するように、この発明のさまざまな実施形態は、この発明の範囲または精神から逸脱することなく、容易に組合わせられ得る。
加えて、ここに使用されるように、「または」という用語は、文脈上明らかに他の意味に解釈すべき場合を除き、包括的な「論理和(or)」演算子であり、「および/または」という用語と同等である。「〜に基づいて」という用語は、文脈上明らかに他の意味に解釈すべき場合を除き、排他的ではなく、記載されていない追加の要因に基づくことを可能にする。加えて、明細書全体を通し、単数は複数の言及を含む。「〜における」の意味は、「〜における」と「〜の上における」とを含む。
ここに使用されるように、「タグ」という用語は概して、ウェブページの表示中、任意の点で、第三者ソリューションを使用してウェブページに注入され得るコードを指す。いくつかの実施形態では、第三者ソリューションは、ウェブページのホストとは別個のコードプロバイダを参照してもよい。少なくとも1つの実施形態では、タグをウェブページにロードすることは、タグをデプロイメントするとも呼ばれてもよい。いくつかの実施形態では、ビジターがウェブサイトを訪れるかまたはオンページアクションを行なうと、ウェブページの表示が提供されてもよい。
ここに使用されるように、「タグ待ち時間」という用語は概して、タグが要求されてから、タグ要求に基づいてサーバ応答が受信されるまでの時間を指す。少なくとも1つの実施形態では、タグ待ち時間は、タグが要求されてから、タグが完全にデプロイメントされるまでの時間に基づいていてもよい。いくつかの実施形態では、タグ待ち時間は、タグコンポーネントによって必要とされる追加のコードまたはリソースを含む、タグの各コンポーネントの累積応答時間に基づいていてもよい。他の実施形態では、タグ待ち時間は、タグの複数のコンポーネントのうちのあるコンポーネントの最長応答時間に基づいていてもよい。別の実施形態では、タグ待ち時間は、タグ要求に応答して受信されたエラーメッセージ、たとえば400〜500のエラーコードを有するサーバ応答などに基づいていてもよい。いくつかの実施形態では、タグ待ち時間は、タグが要求されてから、サーバ応答エラーメッセージが受信されるまでの時間であってもよい。
ここに使用されるように、「時間待ちイベント」という用語は、タグ待ち時間が最大待ち時間しきい値よりも大きい場合のタグ待ち時間をモニタリングした結果を指す。これに対し、ここに使用されるように、「非時間待ちイベント」という用語は、タグ待ち時間が最大待ち時間しきい値未満である場合のタグ待ち時間をモニタリングした結果を指す。少なくとも1つの実施形態では、最大待ち時間しきい値は、ユーザ(タグをデプロイメントするためのウェブサイトのホストなど)によって判断され、および/または変更されてもよい。いくつかの実施形態では、最大待ち時間しきい値は、所望のウェブページロード時間、平均タグロード時間などに基づいていてもよい。
この発明のいくつかの局面の基本的理解を提供するために、この発明の実施形態について以下に簡単に説明する。この簡単な説明は、広範な全体として意図されてはいない。それは、主なまたは不可欠な要素を識別するよう、もしくは、範囲を線引きするかまたは他の態様で狭くするよう意図されてはいない。その目的は単に、後で提示されるより詳細な説明の序章として、いくつかの概念を単純化された形で提示することである。
簡単に言えば、さまざまな実施形態は、率先してタグ性能をモニタリングし、応答時間を測定するように設計された非同期処理に基づいてタグ中断を制御するために複数のタグ状態を採用することに向けられている。いくつかの実施形態では、タグの性能および/または応答時間を判断するために、タグ待ち時間がモニタリングされ、および/または測定されてもよい。少なくとも1つの実施形態では、ユーザは、ウェブページ上へのデプロイメントのためにタグを選択するサービスに登録してもよい。いくつかの実施形態では、ユーザは、ウェブサイト、ウェブサイトホスト、ウェブサイトアドミニストレータ、ウェブサイトコンサルタントなど、またはそれらのエージェントに問合せてもよい。タグは、複数の状態のうちの1つの状態、たとえば、NORMAL状態、FLAGGED状態、SUSPENSION_A状態、またはSUSPENSION_B状態にあってもよい。少なくとも1つの実施形態では、NORMAL状態またはFLAGGED状態のタグは、デプロイメントされることをイネーブルにされても(すなわち、デプロイメントのために利用可能であっても)よく、SUSPENSION_A状態またはSUSPENSION_B状態のタグは、デプロイメントされないように阻止されても(すなわち、デプロイメントを中断されても)よい。
タグ待ち時間は、ウェブページ要求から独立して、非同期にモニタリングされてもよい。いくつかの実施形態では、タグをモニタリングする頻度は、タグの状態に基づいていてもよい。タグの状態は、タグの待ち時間の非同期モニタリングに基づいて変化してもよい。簡潔に言えば、いくつかの実施形態では、時間待ちイベントが生じた場合(すなわち、タグ待ち時間が最大待ち時間しきい値を上回る場合)、タグの状態は、NORMALからFLAGGEDに、FLAGGEDからSUSPENSION_Aに、またはSUSPENSION_BからSUSPENSION_Aに変化してもよい。他の実施形態では、非時間待ちイベントが生じた場合(すなわち、タグ待ち時間が最大待ち時間しきい値を上回らない場合)、タグの状態は、SUSPENSION_BからFLAGGEDに、またはFLAGGEDからNORMALに変化してもよい。少なくとも1つの実施形態では、タグの状態を変化させるために、連続する時間待ちイベントまたは連続する非時間待ちイベントを利用してもよい。複数の異なる状態を採用し、時間待ちイベント/非時間待ちイベント(および/または、連続する時間待ちイベント/非時間待ちイベント)に基づいてタグの状態を変化させることにより、タグは、タグ待ち時間の急激な増加により、そのデプロイメントが途中で阻止されたり、または、タグ待ち時間の急激な減少により、阻止された後にそのデプロイメントのために途中でイネーブルにされることがないようになり得る。
例示的な動作環境
図1は、この発明の実施形態が実践され得る環境の一実施形態の構成要素を示す。この発明を実践するために、これらの構成要素のすべてが必要とされるわけではなく、また、この発明の精神または範囲から逸脱することなく、これらの構成要素の配置およびタイプの変更が行なわれてもよい。図示されているように、図1のシステム100は、ローカルエリアネットワーク(local area network:LAN)/ワイドエリアネットワーク(wide area network:WAN)−(ネットワーク)110と、無線ネットワーク108と、クライアント装置102〜105と、タグモニタリングサーバ装置(Tag Monitoring Server Device:TMSD)112と、タグ制御サーバ装置(Tag Control Server Device:TCSD)114と、タグデプロイメントサーバ装置(Tag Deployment Server Device:TDSD)116とを含む。
クライアント装置102〜105の少なくとも1つの実施形態を、図2とともに以下により詳細に説明する。一実施形態では、クライアント装置102〜105のうちの少なくともいくつかは、ネットワーク110および/または108といった有線および/または無線ネットワークを通して動作してもよい。一般に、クライアント装置102〜105は、情報を送受信し、さまざまなオンライン活動、オフライン活動などを行なうためにネットワークを通して通信可能な、実質的にあらゆるコンピューティング装置を含み得る。一実施形態では、クライアント装置102〜105のうちの1つ以上は、ビジネスまたは他のエンティティ内で、そのビジネスまたは他のエンティティのためのさまざまなサービスを行なうために動作するように構成されてもよい。たとえば、クライアント装置102〜105は、ウェブサーバ、アカウンティングサーバ、生産サーバ、在庫サーバなどとして動作するように構成されてもよい。しかしながら、クライアント装置102〜105はこれらのサービスに制約されておらず、他の実施形態では、たとえばエンドユーザコンピューティングノードとしても採用されてもよい。ここに説明されるようなシステム内に、より多い、またはより少ないクライアント装置が含まれ得ること、および、実施形態はしたがって、採用されるクライアント装置の数またはタイプによって制約されないことが認識されるべきである。
クライアント装置102として動作し得る装置は、典型的には有線または無線通信媒体を使用して接続する装置、たとえばパーソナルコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラマブルな電子装置、ネットワークPCなどを含み得る。いくつかの実施形態では、クライアント装置102〜105は、別のコンピューティング装置に接続して情報を受信することができる、実質的にあらゆるポータブルパーソナルコンピューティング装置、たとえばラップトップコンピュータ103、スマートモバイルフォン104、およびタブレットコンピュータ105などを含み得る。しかしながら、ポータブルコンピューティング装置はそのように限定されておらず、また、携帯電話、ディスプレイポケットベル、無線周波数(radio frequency:RF)装置、赤外線(infrared:IR)装置、携帯情報端末(Personal Digital Assistant:PDA)、ハンドヘルドコンピュータ、ウェアラブルコンピュータ、前述の装置の1つ以上を組合わせた統合装置などといった、他のポータブル装置を含んでいてもよい。そのため、クライアント装置102〜105は典型的には、能力および特徴の点で多岐に及ぶ。さらに、クライアント装置102〜105は、ブラウザまたは他のウェブベースのアプリケーションを含むさまざまなコンピューティングアプリケーションにアクセスしてもよい。
ウェブ対応のクライアント装置は、ウェブページ、ウェブベースのメッセージなどを送受信するように構成されたブラウザアプリケーションを含んでいてもよい。ブラウザアプリケーションは、無線アプリケーションプロトコル(wireless application protocol:WAP)メッセージなどを含む実質的にあらゆるウェブベースの言語を採用して、グラフィック、テキスト、マルチメディアなどを受信し、表示するように構成されてもよい。一実施形態では、ブラウザアプリケーションは、メッセージを表示し、送信するために、携帯型装置マークアップ言語(Handheld Device Markup Language:HDML)、無線マークアップ言語(Wireless Markup Language:WML)、WMLScript、JavaScript(登録商標)、標準一般化マークアップ言語(Standard Generalized Markup Language:SGML)、ハイパーテキストマークアップ言語(HyperText Markup Language:HTML)、拡張可能マークアップ言語(eXtensible Markup Language:XML)などを採用することが可能にされている。一実施形態では、クライアント装置のユーザは、ネットワークを通して(オンラインで)さまざまな活動を行なうためにブラウザアプリケーションを採用してもよい。しかしながら、さまざまなオンライン活動を行なうために、別のアプリケーションも使用されてもよい。
クライアント装置102〜105はまた、別のコンピューティング装置との間でコンテンツを受信および/または送信するように構成された、少なくとも1つの他のクライアントアプリケーションを含んでいてもよい。クライアントアプリケーションは、コンテンツなどを送信および/または受信する能力を含んでいてもよい。クライアントアプリケーションはさらに、タイプ、能力、名前などを含む、それ自体を識別する情報を提供してもよい。一実施形態では、クライアント装置102〜105は、インターネットプロトコル(Internet Protocol:IP)アドレス、電話番号、モバイル識別番号(Mobile Identification Number:MIN)、電子シリアル番号(electronic serial number:ESN)、または他の装置識別子を含むさまざまな機構のうちのいずれかを通して、それら自体を一意的に識別してもよい。そのような情報は、ネットワークパケットなどにおいて提供され、他のクライアント装置、TMSD112、TCSD114、TDSD116、または他のコンピューティング装置との間で送信されてもよい。
クライアント装置102〜105はさらに、TMSD112、TCSD114、TDSD116などといった別のコンピューティング装置によって管理され得るエンドユーザアカウントにエンドユーザがログインすることを可能にするクライアントアプリケーションを含むように構成されてもよい。非限定的な一例では、そのようなエンドユーザアカウントは、非限定的な一例では検索活動、ソーシャルネットワーキング活動、さまざまなウェブサイトのブラウジング、他のユーザとの通信などを含む、1つ以上のオンライン活動をエンドユーザが管理することを可能にするように構成されてもよい。しかしながら、そのようなオンライン活動への参加はまた、エンドユーザアカウントにログインすることなく行なわれてもよい。
無線ネットワーク108は、クライアント装置103〜105およびそのコンポーネントを、ネットワーク110と結合するように構成されている。無線ネットワーク108は、クライアント装置103〜105のためのインフラストラクチャ指向の接続を提供するために、スタンドアロンのアドホックネットワークなどをさらに覆い得る、さまざまな無線サブネットワークのうちのいずれかを含んでいてもよい。そのようなサブネットワークは、メッシュネットワーク、無線LAN(WLAN)ネットワーク、セルラーネットワークなどを含んでいてもよい。一実施形態では、システムは、2つ以上の無線ネットワークを含んでいてもよい。
無線ネットワーク108はさらに、無線リンクなどによって接続された端末、ゲートウェイ、ルータなどの自律システムを含んでいてもよい。これらのコネクタは、無線ネットワーク108のトポロジーが迅速に変化するように、自由にかつランダムに移動し、それら自体を任意に編成するように構成されてもよい。
無線ネットワーク108はさらに、セルラーシステムのための第2(2G)、第3(3G)、第4(4G)、第5(5G)世代無線アクセス、WLAN、無線ルータ(Wireless Router:WR)メッシュなどを含む、複数のアクセス技術を採用してもよい。2G、3G、4G、5G、および将来のアクセスネットワークといったアクセス技術は、さまざまな程度のモビリティを有するクライアント装置103〜105といたモバイル装置のための広域カバレージを可能にし得る。非限定的な一例では、無線ネットワーク108は、グローバル・システム・フォー・モバイル・コミュニケーション(Global System for Mobile communication:GSM(登録商標))、汎用パケット無線システム(General Packet Radio Services:GPRS)、拡張データGSM環境(Enhanced Data GSM Environment:EDGE)、符号分割多重アクセス(code division multiple access:CDMA)、時分割多重アクセス(time division multiple access:TDMA)、広帯域符号分割多重アクセス(Wideband Code Division Multiple Access:WCDMA(登録商標))、高速ダウンリンクパケットアクセス(High Speed Downlink Packet Access :HSDPA)、ロングタームエボリューション(Long Term Evolution:LTE)などといった無線ネットワークアクセスを通して、無線接続を可能にしてもよい。本質的には、無線ネットワーク108は、クライアント装置103〜105と別のコンピューティング装置、ネットワークなどとの間で情報を伝え得る、実質的にあらゆる無線通信機構を含んでいてもよい。
ネットワーク110は、ネットワーク装置を、TMSD112、TCSD114、TDSD116、クライアント装置102を含む他のコンピューティング装置と結合し、また、無線ネットワーク108を通してクライアント装置103〜105と結合するように構成されている。ネットワーク110は、ある電子装置から別の電子装置に情報を通信するためのあらゆる形態のコンピュータ読取可能な媒体を採用することが可能にされている。また、ネットワーク110は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、ユニバーサルシリアルバス(universal serial bus:USB)ポートなどを介した直接接続、他の形態のコンピュータ読取可能な媒体、またはそれらの任意の組合せ、に加えて、インターネットを含んでいてもよい。異なるアーキテクチャおよびプロトコルに基づいたLANを含む、相互接続された一組のLAN上で、ルータがLAN間のリンクとして作用して、メッセージが一方から他方へ送信されることを可能にする。加えて、LAN内の通信リンクは典型的には、ツイストペアワイヤまたは同軸ケーブルを含んでおり、一方、ネットワーク間の通信リンクは、アナログ電話回線、T1、T2、T3およびT4を含む専用デジタル回線の全体または一部、および/または、たとえばEキャリア、統合サービスデジタル網(Integrated Services Digital Network:ISDN)、デジタル加入者回線(Digital Subscriber Line:DSL)、衛星リンクを含む無線リンク、または当業者には公知の他の通信リンクを含む他のキャリア機構を利用してもよい。また、通信リンクはさらに、たとえばDS−0、DS−1、DS−2、DS−3、DS−4、OC−3、OC−12、OC−48などを限定なしで含む、さまざまなデジタルシグナリング技術のうちのいずれかを採用してもよい。さらに、リモートコンピュータおよび他の関連する電子装置が、モデムおよび仮電話リンクを介して、LANまたはWANのいずれかにリモート接続されてもよい。一実施形態では、ネットワーク110は、インターネットプロトコル(IP)の情報を移送するように構成されてもよい。本質的には、ネットワーク110は、コンピューティング装置間で情報を伝え得る、あらゆる通信方法を含む。
加えて、通信媒体は典型的には、コンピュータ読取可能な命令、データ構造、プログラムモジュール、または他の移送機構を具体化しており、あらゆる情報伝達媒体を含む。一例として、通信媒体は、ツイストペア、同軸ケーブル、光ファイバー、導波管といった有線媒体、および他の有線媒体、ならびに、音響、RF、赤外線媒体などの無線媒体、および他の無線媒体を含む。
TMSD112の一実施形態を、図3とともに以下により詳細に説明する。しかしながら、簡単に言えば、TMSD112は、タグ待ち時間をモニタリングできる、実質的にあらゆるネットワーク装置を含む。少なくとも1つの実施形態では、TMSD112は、タグの性能および待ち時間を非同期にモニタリングしてもよい。非同期モニタリングは、(たとえば、ビジターからウェブサイトへの)ウェブページをロードする要求から独立して行なわれてもよい。TMSD112は、タグを要求してタグ待ち時間を判断するために、ブラウザをエミュレートしてもよい。少なくとも1つの実施形態では、TMSD112は、エミュレートされたブラウザに要求されたタグをロードするのにかかる時間を計算することにより、タグ待ち時間を判断してもよい。いくつかの実施形態では、TMSD112は、どのタグをモニタリングすべきか判断するために、および/または、判断されたタグ待ち時間を提供するために、TCSD114と通信してもよい。TMSD112として動作するように配置され得る装置は、パーソナルコンピュータ、デスクトップコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラムマブルな家電、ネットワークPC、サーバ装置、ネットワーク機器などを含むもののそれらに限定されない、さまざまなネットワーク装置を含む。
図1はTMSD112を単一のコンピューティング装置として示しているが、この発明はそのように限定されるものではない。たとえば、TMSD112の1つ以上の機能が、1つ以上の別個のネットワーク装置に分散されてもよい。また、TMSD112は、ある特定の構成に限定されない。このため、一実施形態では、TMSD112は、タグ待ち時間をモニタリングするために、複数のネットワーク装置を含んでいてもよい。別の実施形態では、TMSD112は、マスタ/スレーブアプローチを使用して動作する複数のネットワーク装置を含んでいてもよく、この場合、TMSD112の複数のネットワーク装置のうちの1つは、他のネットワーク装置の動作を管理し、および/または他の態様で調整するように動作する。他の実施形態では、TMSD112は、クラスタアーキテクチャ、ピア・ツー・ピア・アーキテクチャ内で、および/またはクラウドアーキテクチャ内でも、複数のネットワーク装置として動作してもよい。このため、この発明は単一の環境に限定されるように解釈されるべきではなく、他の構成およびアーキテクチャも想定される。少なくとも1つの実施形態では、複数のTMSD112の各々は、地理的に分散されてもよい。別の実施形態では、TMSD112は、複数の異なるタグ状態のうちの各状態にあるタグをモニタリングするための異なるコンピューティング装置を含んでいてもよい。
少なくとも1つの実施形態では、TMSD112などのネットワーク装置をシステムに追加するか、またはシステムから取外すことにより、システムは拡大または縮小されてもよい。いくつかの実施形態では、追加のTMSDをシステムに追加することは、タグモニタリングのより高いスループットを可能にし得る。少なくとも1つの実施形態では、各TMSDは、スケーリングの際に追加のスケーリング機能を各TMSDに追加することなく、スケーリングが実現され得るよう、システムスケーリングを可能にするように設計されていてもよい。
TCSD114の少なくとも1つの実施形態を、図3とともに以下により詳細に説明する。しかしながら、簡単に言えば、TCSD114は、複数のタグの各々の状態を制御し、タグの状態に基づいて利用可能なタグがデプロイメントされることをイネーブルにすることができる、実質的にあらゆるネットワーク装置を含んでいてもよい。いくつかの実施形態では、TCSD114は、どのタグをモニタリングすべきか判断するためにTMSD112と通信してもよく、および/または、タグ待ち時間情報を受信してもよい。いくつかの実施形態では、TCSD114はTDSD116に、デプロイメントのために利用可能なタグのリストを提供してもよい。少なくとも1つの実施形態では、TCSD114はデータベース(図示せず)と通信してもよく、データベースは、タグ状態ごとにテーブルを保持してもよく、テーブルは、その状態にある各タグのリストを含んでいてもよい。TCSD114として動作し得る装置は、パーソナルコンピュータ、デスクトップコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラムマブルな家電、ネットワークPC、サーバ装置、ネットワーク機器などを含むもののそれらに限定されない、さまざまなネットワーク装置を含む。
図1はTCSD114を単一のコンピューティング装置として示しているが、この発明はそのように限定されるものではない。たとえば、TCSD114の1つ以上の機能が、1つ以上の別個のネットワーク装置に分散されてもよい。また、TCSD114は、ある特定の構成に限定されない。このため、一実施形態では、TCSD114は、タグモニタリングおよび/またはデプロイメント利用可能性を制御するために、複数のネットワーク装置を含んでいてもよい。同様に、別の実施形態では、TCSD114は、マスタ/スレーブアプローチを使用して動作する複数のネットワーク装置を含んでいてもよく、この場合、TCSD114の複数のネットワーク装置のうちの1つは、他のネットワーク装置の動作を管理し、および/または他の態様で調整するように動作する。他の実施形態では、TCSD114は、クラスタアーキテクチャ、ピア・ツー・ピア・アーキテクチャ内で、および/またはクラウドアーキテクチャ内でも、複数のネットワーク装置として動作してもよい。このため、この発明は単一の環境に限定されるように解釈されるべきではなく、他の構成およびアーキテクチャも想定される。
TDSD116の少なくとも1つの実施形態を、図3とともに以下により詳細に説明する。しかしながら、簡単に言えば、TDSD116は、タグをデプロイメントできる、実質的にあらゆるネットワーク装置を含んでいてもよい。いくつかの実施形態では、TDSD116は、ウェブ要求(たとえば、ビジターからウェブサイトへの、ウェブページを見る要求)に応じてタグをウェブサイトに提供するように最適化されてもよい。少なくとも1つの実施形態では、TDSD116は、デプロイメントのために利用可能なタグのリストを受信するために、TCSD114と通信してもよい。いくつかの実施形態では、TDSD116は、ウェブページに関するデータを集めてもよく、デプロイメントされたタグに関する情報を記録してもよい。TDSD116として動作し得る装置は、パーソナルコンピュータ、デスクトップコンピュータ、マルチプロセッサシステム、マイクロプロセッサベースのまたはプログラムマブルな家電、ネットワークPC、サーバ装置、ネットワーク機器などを含むもののそれらに限定されない、さまざまなネットワーク装置を含む。
図1はTDSD116を単一のコンピューティング装置として示しているが、この発明はそのように限定されるものではない。たとえば、TDSD116の1つ以上の機能が、1つ以上の別個のネットワーク装置に分散されてもよい。また、TDSD116は、ある特定の構成に限定されない。このため、一実施形態では、TDSD116は、タグをウェブページにデプロイメントするために、複数のネットワーク装置を含んでいてもよい。同様に、別の実施形態では、TDSD116は、マスタ/スレーブアプローチを使用して動作する複数のネットワーク装置を含んでいてもよく、この場合、TDSD116の複数のネットワーク装置のうちの1つは、他のネットワーク装置の動作を管理し、および/または他の態様で調整するように動作する。他の実施形態では、TDSD116は、クラスタアーキテクチャ、ピア・ツー・ピア・アーキテクチャ内で、および/またはクラウドアーキテクチャ内でも、複数のネットワーク装置として動作してもよい。このため、この発明は単一の環境に限定されるように解釈されるべきではなく、他の構成およびアーキテクチャも想定される。
例示的なクライアント装置
図2は、この発明の実施形態を実現するシステムに含まれ得るクライアント装置200の一実施形態を示す。クライアント装置200は、図2に示すものよりも多い、または少ないコンポーネントを含んでいてもよい。しかしながら、図示されたコンポーネントは、この発明を実践するための例示的な一実施形態を開示するのに十分である。クライアント装置200は、たとえば、図1のクライアント装置102〜105のうちの少なくとも1つの一実施形態を表わしていてもよい。
図に示すように、クライアント装置200は、バス234を介して大容量メモリ226と通信しているプロセッサ202を含む。いくつかの実施形態では、プロセッサ202は、1つ以上の中央処理装置(central processing unit:CPU)を含んでいてもよい。クライアント装置200はまた、電源228と、1つ以上のネットワークインターフェイス236と、音声インターフェイス238と、ディスプレイ240と、キーパッド242と、発光部244と、ビデオインターフェイス246と、入出力インターフェイス248と、触覚インターフェイス250と、全地球測位システム(global positioning system:GPS)レシーバ232とを含む。
電源228は、クライアント装置200に電力を提供する。電力を提供するために、充電式または非充電式電池を使用してもよい。電力はまた、電池を補い、および/または再充電する交流(AC)アダプタまたは電源供給ドッキングクレードルといった外部電源によって提供されてもよい。
クライアント装置200はオプションで、基地局(図示せず)と、または直接別のコンピューティング装置と通信してもよい。ネットワークインターフェイス236は、クライアント装置200を1つ以上のネットワークに結合するために回路を含んでおり、GSM、CDMA、TDMA、GPRS、EDGE、WCDMA、HSDPA、LTE、ユーザデータグラムプロトコル(user datagram protocol:UDP)、伝送制御プロトコル/インターネットプロトコル(transmission control protocol/Internet protocol:TCP/IP)、ショートメッセージサービス(short message service:SMS)、WAP、ウルトラワイドバンド(ultra wide band:UWB)、IEEE802.16ワールドワイド・インターオペラビリティ・フォー・マイクロウェーブ・アクセス(WiMax)、セッション開始プロトコル/リアルタイム転送プロトコル(session initiated protocol/real-time transport protocol:SIP/RTP)、または他のさまざまな無線通信プロトコルのうちのいずれかを含むもののそれらに限定されない、1つ以上の通信プロトコルおよび技術を用いて使用するために構成されている。ネットワークインターフェイス236は、トランシーバ、送受信装置、またはネットワークインターフェイスカード(network interface card:NIC)として公知である場合もある。
音声インターフェイス238は、人間の声の音などの音声信号を生成し、受信するために配置されている。たとえば、音声インターフェイス238は、他人との電気通信を可能にし、および/または、何らかのアクションについての音声確認を生成するために、スピーカーおよびマイク(図示せず)に結合されてもよい。
ディスプレイ240は、液晶ディスプレイ(liquid crystal display:LCD)、ガスプラズマ、発光ダイオード(light emitting diode:LED)、有機LED、または、コンピューティング装置で使用される他のあらゆるタイプのディスプレイであってもよい。ディスプレイ240はまた、スタイラスなどの物体からの入力、または人間の手からの指の入力を受信するために配置されたタッチセンシティブスクリーンを含んでいてもよい。
キーパッド242は、ユーザからの入力を受信するために配置されたあらゆる入力装置を含んでいてもよい。たとえば、キーパッド242は、プッシュボタン数字ダイヤル、またはキーボードを含んでいてもよい。キーパッド242はまた、画像の選択および送信に関連付けられたコマンドボタンを含んでいてもよい。
発光部244は、ステータス表示を提供し、および/または光を提供してもよい。発光部244は、特定期間の間、またはイベントに応答して、アクティブなままであってもよい。たとえば、発光部244がアクティブである場合、それは、クライアント装置に電力が供給されている間、キーパッド242上のボタンを背後から照らし、オンのままであってもよい。また、別のクライアント装置をダイヤルするなど、特定のアクションが行なわれた場合、発光部244は、これらのボタンをさまざまなパターンで背後から照らしてもよい。発光部244はまた、クライアント装置の透明または半透明のケース内に位置付けられた光源が、アクションに応答して照明するようにしてもよい。
ビデオインターフェイス246は、スチール写真、ビデオセグメント、赤外線ビデオなどといったビデオ画像を取り込むために配置されている。たとえば、ビデオインターフェイス246は、デジタルビデオカメラ、ウェブカメラなどに結合されてもよい。ビデオインターフェイス246は、レンズと、画像センサと、他の電子機器とを含んでいてもよい。画像センサは、相補型金属酸化膜半導体(complementary metal-oxide-semiconductor:CMOS)集積回路、電荷結合素子(charge-coupled device:CCD)、または、光を感知するための他のあらゆる集積回路を含んでいてもよい。
クライアント装置200はまた、図2に図示されないヘッドセットもしくは他の入力または出力装置といった外部装置と通信するための入出力インターフェイス248を含む。入出力インターフェイス248は、USB、赤外線、Bluetooth(登録商標)などといった1つ以上の通信技術を利用できる。
触覚インターフェイス250は、クライアント装置のユーザに触覚フィードバックを提供するために配置されている。たとえば、触覚インターフェイス250は、コンピューティング装置の別のユーザが呼出しているときに、ある特定の方法でクライアント装置200を振動させるために採用されてもよい。いくつかの実施形態では、触覚インターフェイス250はオプションであってもよい。
クライアント装置200はまた、地球の表面上におけるクライアント装置200の物理的座標を判断するために、GPSトランシーバ232を含んでいてもよい。GPSトランシーバ232は、いくつかの実施形態では、オプションであってもよい。GPSトランシーバ232は典型的には、ある位置を、緯度および経度の値として出力する。しかしながら、GPSトランシーバ232はまた、地球の表面上におけるクライアント装置200の物理的位置をさらに判断するために、三角測量、補助GPS(assisted GPS:AGPS)、改良型観測時間差法(Enhanced Observed Time Difference:E−OTD)、セル識別子(Cell Identifier:CI)、サービスエリア識別子(Service Area Identifier:SAI)、改良型タイミングアドバンス(Enhanced Timing Advance:ETA)、基地局サブシステム(Base Station Subsystem :BSS)などを含むもののそれらに限定されない、他の地球測位機構を採用可能である。異なる条件下では、GPSトランシーバ232は、クライアント装置200についてミリメートル以内で物理的位置を判断可能であり、他の場合には、判断された物理的位置は、1メートルまたは著しくより大きい距離以内といったように、それほど正確ではないかもしれない、ということが理解される。しかしながら、一実施形態では、モバイル装置200は、たとえば媒体アクセス制御(Media Access Control:MAC)アドレス、IPアドレスなどを含む、装置の物理的位置を判断するために採用され得る他の情報を、他のコンポーネントを通して提供してもよい。
大容量メモリ226は、ランダムアクセスメモリ(Random Access Memory:RAM)204と、読出し専用メモリ(Read-only Memory:ROM)222と、他の記憶手段とを含む。大容量メモリ226は、コンピュータ読取可能な命令、データ構造、プログラムモジュール、または他のデータといった情報の格納のためのコンピュータ読取可能な記憶媒体(装置)の一例を示す。大容量メモリ226は、クライアント装置200の低レベル動作を制御するための基本入出力システム(basic input/output system:BIOS)224を格納している。大容量メモリはまた、クライアント装置200の動作を制御するためのオペレーティングシステム206を格納している。このコンポーネントは、UNIX(登録商標)、またはLINUX(登録商標)のバージョンといった汎用オペレーティングシステム、もしくは、マイクロソフト社のウィンドウズ(登録商標)モバイル、アップル社のiOS(登録商標)、グーグル社のアンドロイド(登録商標)、またはシンビアン(登録商標)オペレーティングシステムといった専用クライアント通信オペレーティングシステムを含んでいてもよい、ということが理解されるであろう。オペレーティングシステムは、Java(登録商標)アプリケーションプログラムを介してハードウェアコンポーネントおよび/またはオペレーティングシステム動作の制御を可能にするJava仮想マシンモジュールを含んでいてもよく、もしくはそれとインターフェイス接続していてもよい。
大容量メモリ226はさらに、1つ以上のデータストレージ208を含み、それは、とりわけアプリケーション214および/または他のデータを格納するために、クライアント装置200によって利用可能である。たとえば、データストレージ208はまた、クライアント装置200のさまざまな能力を記述する情報を格納するために採用されてもよい。その情報は次に、通信中にヘッダの一部として送信されること、要求に応じて送信されることなどを含むさまざまなイベントのうちのいずれかに基づいて、別の装置に提供されてもよい。データストレージ208はまた、住所録、友達リスト、エイリアス、ユーザプロフィール情報などを含むソーシャルネットワーキング情報を格納するために採用されてもよい。さらに、データストレージ208はまた、メッセージ、ウェブページコンテンツ、またはさまざまなユーザ作成コンテンツのうちのいずれかを格納してもよい。また、その情報の少なくとも一部は、プロセッサ読取可能な記憶媒体230、ディスクドライブ、または、クライアント装置200内の他のコンピュータ読取可能な記憶装置(図示せず)を含むもののそれらに限定されない、ネットワーク装置200の別のコンポーネント上に格納されてもよい。
プロセッサ読取可能な記憶媒体230は、コンピュータまたはプロセッサ読取可能な命令、データ構造、プログラムモジュール、または他のデータといった情報の格納のためのあらゆる方法または技術で実現された、揮発性、不揮発性、リムーバブル、および非リムーバブルな媒体を含み得る。コンピュータ読取可能な記憶媒体の例は、RAM、ROM、電気的消去可能プログラマブル読出し専用メモリ(Electrically Erasable Programmable Read-only Memory:EEPROM)、フラッシュメモリまたは他のメモリ技術、コンパクトディスク読出し専用メモリ(Compact Disc Read-only Memory:CD−ROM)、デジタル多用途ディスク(digital versatile disk:DVD)または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、もしくは、所望の情報を格納するために使用可能であり、コンピューティング装置によってアクセス可能である他のあらゆる物理的媒体を含む。プロセッサ読取可能な記憶媒体230は、ここにコンピュータ読取可能な記憶媒体および/またはコンピュータ読取可能な記憶装置とも呼ばれてもよい。
アプリケーション214は、クライアント装置200によって実行されると、ネットワークデータを送信し、受信し、および/または他の態様で処理する、コンピュータ実行可能な命令を含んでいてもよい。ネットワークデータは、メッセージ(たとえば、SMS、マルチメディアメッセージサービス(Multimedia Message Service:MMS)、インスタントメッセージ(instant message:IM)、電子メール、および/または他のメッセージ)、音声、ビデオを含み得るもののそれらに限定されておらず、別のクライアント装置の別のユーザとの電気通信を可能にし得る。アプリケーション214は、たとえば、ブラウザ218と、他のアプリケーション220とを含んでいてもよい。他のアプリケーション220は、カレンダー、検索プログラム、電子メールクライアント、IMアプリケーション、SMSアプリケーション、ボイス・オーバ・インターネット・プロトコル(voice over Internet Protocol:VOIP)アプリケーション、コンタクトマネージャ、タスクマネージャ、トランスコーダ、データベースプログラム、ワードプロセッシングプログラム、セキュリティアプリケーション、スプレッドシートプログラム、ゲーム、検索プログラムなどを含むもののそれらに限定されない。
ブラウザ218は、実質的にあらゆるウェブベースの言語を採用して、グラフィック、テキスト、マルチメディア、メッセージなどを受信し、表示するように構成された、実質的にあらゆるアプリケーションを含んでいてもよい。一実施形態では、ブラウザアプリケーションは、メッセージを表示し、送信するために、HDML、WML、WMLScript、JavaScript、SGML、HTML、XMLなどを採用することが可能にされている。しかしながら、他のさまざまなウェブベースのプログラミング言語のうちのいずれかが採用されてもよい。一実施形態では、ブラウザ218は、クライアント装置200のユーザが、図1のTMSD112、TCSD114、および/またはTDSD116といった別のネットワーク装置と通信することを可能にしてもよい。
例示的なネットワーク装置
図3は、この発明の一実施形態に従ったネットワーク装置300の一実施形態を示す。ネットワーク装置300は、図示されたものよりも多い、または少ないコンポーネントを含んでいてもよい。しかしながら、図示されたコンポーネントは、この発明を実践するための例示的な一実施形態を開示するのに十分である。ネットワーク装置300は、サーバ、クライアント、ピア、ホスト、または他のあらゆる装置として動作するように構成されてもよい。ネットワーク装置300は、たとえば、図1のTMSD112、TCSD114、TDSD116、および/または他のネットワーク装置を表わしていてもよい。
ネットワーク装置300は、プロセッサ302と、プロセッサ読取可能な記憶媒体328と、ネットワークインターフェイスユニット330と、入出力インターフェイス332と、ハードディスクドライブ334と、ビデオディスプレイアダプタ336と、メモリ326とを含み、それらはすべて、バス338を介して互いに通信している。いくつかの実施形態では、プロセッサ302は、1つ以上の中央処理装置を含んでいてもよい。
図3に示すように、ネットワーク装置300はまた、ネットワークインターフェイスユニット330を介して、インターネットまたは他の通信ネットワークと通信可能であり、ネットワークインターフェイスユニット330は、TCP/IPプロトコルを含むさまざまな通信プロトコルで使用するために構成されている。ネットワークインターフェイスユニット330は、トランシーバ、送受信装置、またはネットワークインターフェイスカード(NIC)として公知である場合もある。
ネットワーク装置300はまた、図3に図示されないキーボードもしくは他の入力または出力装置といった外部装置と通信するための入出力インターフェイス332を含む。入出力インターフェイス332は、USB、赤外線、Bluetoothなどといった1つ以上の通信技術を利用できる。
メモリ326は一般に、RAM304と、ROM322と、1つ以上の永続的大容量記憶装置、たとえばハードディスクドライブ334、テープドライブ、光学ドライブ、および/またはフロッピー(登録商標)ディスクドライブとを含む。メモリ326は、ネットワーク装置300の動作を制御するためのオペレーティングシステム306を格納している。あらゆる汎用オペレーティングシステムが採用されてもよい。ネットワーク装置300の低レベル動作を制御するために、基本入出力システム(Basic input/output system:BIOS)324も提供されている。
別々に図示されているものの、メモリ326は、プロセッサ読取可能な記憶媒体328を含んでいてもよい。プロセッサ読取可能な記憶媒体328は、コンピュータ読取可能な媒体、コンピュータ読取可能な記憶媒体、および/またはプロセッサ読取可能な記憶装置と呼ばれてもよく、および/または、それらを含んでいてもよい。プロセッサ読取可能な記憶媒体328は、コンピュータ読取可能な命令、データ構造、プログラムモジュール、または他のデータといった情報の格納のためのあらゆる方法または技術で実現された、揮発性、不揮発性、リムーバブル、および非リムーバブルな媒体を含み得る。プロセッサ読取可能な記憶媒体の例は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)または他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気記憶装置、もしくは、所望の情報を格納するために使用可能であり、コンピューティング装置によってアクセス可能である他のあらゆる媒体を含む。
メモリ326はさらに、1つ以上のデータストレージ308を含み、それは、とりわけアプリケーション314および/または他のデータを格納するために、ネットワーク装置300によって利用可能である。たとえば、データストレージ308はまた、ネットワーク装置300のさまざまな能力を記述する情報を格納するために採用されてもよい。その情報は次に、通信中にヘッダの一部として送信されること、要求に応じて送信されることなどを含むさまざまなイベントのうちのいずれかに基づいて、別の装置に提供されてもよい。データストレージ308はまた、メッセージ、ウェブページコンテンツなどを格納するために採用されてもよい。また、その情報の少なくとも一部は、プロセッサ読取可能な記憶媒体328、ハードディスクドライブ334、または、クライアント装置300内の他のコンピュータ読取可能な記憶媒体(図示せず)を含むもののそれらに限定されない、ネットワーク装置300の別のコンポーネント上に格納されてもよい。
データストレージ308は、ユーザアカウント識別子、ユーザプロフィール、電子メールアドレス、IMアドレス、および/または他のネットワークアドレスなどを保持し、格納するように構成され得る、データベース、テキスト、スプレッドシート、フォルダ、ファイルなどを含んでいてもよい。データストレージ308はさらに、アクションを実行し、行なうためにプロセッサ302などのプロセッサによって使用するためのプログラムコード、データ、アルゴリズムなどを含んでいてもよい。少なくとも1つの実施形態では、データストレージ308は、どのタグがある特定の状態にあるか示すための少なくとも1つの状態テーブルを含んでいてもよい。一実施形態では、データストア308の少なくとも一部はまた、プロセッサ読取可能な記憶媒体328、ハードディスクドライブ334などを含むもののそれらに限定されない、ネットワーク装置300の別のコンポーネント上に格納されてもよい。
アプリケーション314は、コンピュータ実行可能な命令を含んでいてもよく、それらは、大容量メモリにロードされ、オペレーティングシステム306上で実行されてもよい。アプリケーションプログラムの例は、トランスコーダ、スケジューラ、カレンダー、データベースプログラム、ワードプロセッシングプログラム、ハイパーテキスト転送プロトコル(Hypertext Transfer Protocol:HTTP)プログラム、カスタマイズ可能なユーザインターフェイスプログラム、IPSecアプリケーション、暗号化プログラム、セキュリティプログラム、SMSメッセージサーバ、IMメッセージサーバ、電子メールサーバ、アカウントマネージャなどを含み得る。アプリケーション314はまた、ウェブサイトサーバ318と、タグモニタリングアプリケーション(Tag Monitoring Application:TMA)319と、タグデプロイメントアプリケーション(Tag Deployment Application:TDA)320と、タグ制御アプリケーション(Tag Control Application:TCA)321とを含み得る。
ウェブサイトサーバ318は、メッセージを含むコンテンツをネットワークを通して別のコンピューティング装置に提供するように構成された、さまざまな情報およびサービスのうちのいずれかを表わしていてもよい。このため、ウェブサイトサーバ318は、たとえば、ウェブサーバ、ファイル転送プロトコル(File Transfer Protocol:FTP)サーバ、データベースサーバ、コンテンツサーバなどを含んでいてもよい。ウェブサイトサーバ318は、WAP、HDML、WML、SGML、HTML、XML、コンパクトHTML(cHTML)、拡張可能HTML(xHTML)などを含むもののそれらに限定されない、さまざまなフォーマットのうちのいずれかを使用して、メッセージを含むコンテンツをネットワークを通して提供してもよい。
TMA319は、タグ待ち時間を非同期にモニタリングするように構成されてもよい。少なくとも1つの実施形態では、TMA319は、(たとえば、ビジターからウェブサイトへの)ウェブページをロードする要求から独立して、タグ待ち時間を非同期にモニタリングしてもよい。TMA319は、タグを要求してタグ待ち時間を判断するために、ブラウザをエミュレートしてもよい。少なくとも1つの実施形態では、TMA319は、エミュレートされたブラウザに要求されたタグをロードするのにかかる時間を計算することにより、タグ待ち時間を判断してもよい。いくつかの実施形態では、TMA319は、図1のTMSD112によって採用されてもよい。いずれにせよ、TMA319は、そのアクションのうちの少なくともいくつかを行なうために、図4〜7および図9A〜9Bとともに説明されるプロセスに似たプロセスまたはそれらの一部を採用してもよい。
TDA320は、タグをデプロイメントするように構成されてもよい。いくつかの実施形態では、TDA320は、要求(たとえば、ビジターからウェブサイトへの、ウェブページを見る要求)に応じてタグをウェブサイトに提供してもよい。少なくとも1つの実施形態では、TDA320は、ウェブページに関するデータを集めてもよく、デプロイメントされたタグに関する情報を記録してもよい。いくつかの実施形態では、TDA320は、図1のTDSD116によって採用されてもよい。いずれにせよ、TDA319は、そのアクションのうちの少なくともいくつかを行なうために、図4〜7および図9A〜9Bとともに説明されるプロセスに似たプロセスまたはそれらの一部を採用してもよい。
TCA321は、複数のタグの各々の状態を制御するように構成されてもよい。いくつかの実施形態では、TCA321は、モニタリングされる準備ができているかもしれない各タグを、TMA319に通知および/または提供するように構成されてもよい。いくつかの実施形態では、TCA321は、タグがチェックされた最終時間(すなわち、タグについてタグ待ち時間がいつ判断されるか)を記録してもよく、それは、タグをチェックする次の時間を判断するために利用されてもよい。少なくとも1つの実施形態では、TCA321は、TMA319から返されたタグ測定値(たとえば、タグ待ち時間)を記録してもよい。これらの測定値は、タグの状態を変化させるべきかどうか判断するためにTCA321によって利用されてもよく、または、履歴を報告する目的のために利用されてもよい。
少なくとも1つの実施形態では、TCA321は、タグの状態を変化させてもよい。いくつかの実施形態では、TCA321は、タグを所与の状態に追加するかまたは所与の状態から除去するために、状態テーブルを変更してもよい。いくつかの実施形態では、TCA321は、タグの状態に基づいて、利用可能なタグをデプロイメントのためにイネーブルにし、またはタグがデプロイメントされないように阻止する(すなわち、タグをディスエーブルにする)ように構成されてもよい。少なくとも1つの実施形態では、TCA321は、デプロイメントのために利用可能なタグをTDA320に提供および/または通知するように構成されてもよい。いくつかの実施形態では、TCA321は、図1のTCSD114によって採用されてもよい。いずれにせよ、TCA321は、そのアクションのうちの少なくともいくつかを行なうために、図4〜7および図9A〜9Bとともに説明されるプロセスに似たプロセスまたはそれらの一部を採用してもよい。
一般動作
この発明のいくつかの局面の動作を、図4〜7に関して以下に説明する。図4は、タグの待ち時間の非同期モニタリングに基づいてタグ状態を変化させ、タグの状態に基づいてタグをデプロイメントのためにイネーブルにするための全体プロセスの一実施形態を概して示す論理フロー図を示す。いくつかの実施形態では、図4のプロセス400は、単一の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または単一のネットワーク装置上で実行されてもよい。他の実施形態では、図4のプロセス400またはプロセス400の一部は、複数の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または複数のネットワーク装置上で実行されてもよい。さまざまな実施形態のうちの少なくとも1つでは、プロセス400は、複数のタグの各々について行なわれてもよい。
プロセス400は、開始ブロックの後、ブロック402で始まり、そこで、タグがモニタリングのために判断されてもよい。いくつかの実施形態では、複数のタグの各々がモニタリングされてもよく、各タグは、少なくとも1つのウェブページに関連付けられていてもよい。他の実施形態では、複数のタグの一部はモニタリングされてもよく、複数のタグの別の一部はモニタリングされなくてもよい。少なくとも1つの実施形態では、モニタリングすべきタグは、ユーザなどによって予め定められ、判断され、変更されてもよい。
いくつかの実施形態では、タグは、複数の異なる状態のうちの1つの状態にあってもよい。各状態は、タグがデプロイメントされることをイネーブルにしてもよく、または、タグがデプロイメントされないように阻止してもよい。タグの状態は、モニタリング、タグがある状態にある時間など、またはそれらの組合せに基づいて、ある状態から別の状態に変化し得る。いくつかの実施形態では、タグをある状態から別の状態に遷移させるために、異なるトリガ(すなわち、連続する時間待ちイベントの数)が採用されてもよい。タグの状態を変化させるためのプロセスの実施形態を、図7および図9A〜9Bとともに以下により詳細に説明する。少なくとも1つの実施形態では、タグは、NORMAL、FLAGGED、SUSPENSION_A、またはSUSPENSION_Bという状態のうちの1つの状態にあってもよい。これらの異なる状態の図形表示の一実施形態を、図8とともに以下により詳細に説明する。
しかしながら、実施形態はそのように限定されるものではなく、他の状態の数、状態のタイプ、状態変化用のアルゴリズム/メトリクスなどが採用されてもよい。たとえば、少なくとも1つの実施形態では、タグは、NORMAL、FLAGGED、PRE−SUSPENDED、SUSPENDED、またはPOST−SUSPENDEDという状態のうちの1つの状態にあってもよい。これらの異なる状態の図形表示の一実施形態を、図10とともに以下により詳細に説明する。別の実施形態では、状態の数および/または状態のタイプ、タグの状態を変化させるために利用されるメトリクスなどを変更するために、測定値(たとえば、タグ待ち時間)の履歴記録が利用されてもよい。たとえば、履歴記録は、タグが長時間の間、特定の状態のまま動かなくなり得ることを示す場合がある。そのような一例では、追加の状態が追加されてもよく、それは、タグをより頻繁にモニタリングするために利用されてもよい。別の例では、(たとえば、日常的なサーバメンテナンスのために)あるタグが所与の時間に時間待ちイベントを日常的にもたらすことを、履歴記録が示し得る場合、そのタグは、その所与の時間に異なる状態に先制して遷移されてもよい。
いずれにせよ、プロセス400はブロック404に進み、そこで、タグ待ち時間が非同期にモニタリングされてもよい。いくつかの実施形態では、モニタリングは、それがビジターからウェブページへの、そのウェブページに対する要求から独立している場合、非同期であってもよい。少なくとも1つの実施形態では、モニタリングは、少なくとも、モニタリングすべきタグの状態に基づいていてもよい。いくつかの実施形態では、タグの状態は、タグをモニタリングするレートおよび/または頻度を判断してもよい。いくつかの実施形態では、タグをモニタリングするレートは、個々の状態ごとに構成可能および/または変更可能であってもよい。一実施形態では、各状態は、タグを非同期にモニタリングするための異なる頻度に対応していてもよい。たとえば、NORMAL状態にあるタグは15分ごとにモニタリングされてもよく、FLAGGED状態にあるタグは5分ごとにモニタリングされてもよく、SUSPENSION_B状態にあるタグは毎分モニタリングされてもよく、一方、SUSPENSION_A状態にあるタグは、予め定められた量の時間の間、アイドル状態にあってもよく、モニタリングされなくてもよい。しかしながら、実施形態はそのように限定されるものではなく、タグ待ち時間を周期的にモニタリングするための他の頻度が採用されてもよい。
他のいくつかの実施形態では、タグをモニタリングする待ち時間が判断されてもよい。少なくとも1つの実施形態では、待ち時間は、タグ要求からサーバ応答の受信までの時間を測定することによって判断されてもよい。しかしながら、実施形態はそのように限定されるものではなく、より詳細に上述されたタグ待ち時間を判断するための他の方法が採用されてもよい。
プロセス400は次に、決定ブロック406に進み、そこで、タグ待ち時間が時間待ちイベントをもたらしたかどうか判断されてもよい。少なくとも1つの実施形態では、タグ待ち時間は、最大待ち時間しきい値と比較されてもよい。タグ待ち時間が最大待ち時間しきい値よりも大きい場合、タグモニタリングの結果は、時間待ちイベントが生じたことを示し得る。少なくとも1つの実施形態では、最大待ち時間しきい値は、各ユーザおよび/または各状態ごとに構成されてもよく、および/または変更可能であってもよい。したがって、最大待ち時間しきい値は、各ユーザおよび/または状態ごとに同じであってもよく、および/または異なっていてもよい。タグ待ち時間が最大待ち時間しきい値未満である場合、タグモニタリングの結果は、非時間待ちイベントが生じたことを示し得る。時間待ちイベントが生じた場合、処理はブロック408へとフローし得る。そうでない場合、非時間待ちイベントが生じたかもしれず、処理はブロック410へとフローし得る。
ブロック408で、時間待ちイベントに基づいてタグ状態を変化させてもよく、それを図5とともに以下により詳細に説明する。しかしながら、簡単に言えば、待ち時間(たとえば、連続する時間待ちイベント)およびタグの状態の判断が、状態に対する変更を示す場合、タグの状態は別の状態に変更されてもよい。いくつかの実施形態では、タグは、タグの現在の状態と、時間待ちイベントの数が時間待ちイベントしきい値を上回るかどうかとに基づいて、状態を変化させてもよい。たとえば、いくつかの実施形態では、時間待ちイベントのしきい値数を上回る場合、タグはNORMAL状態からFLAGGED状態に変化してもよい。他の実施形態では、時間待ちイベントのしきい値数を上回る場合、タグはFLAGGED状態からSUSPENSION_A状態に変化してもよい。さらに他の実施形態では、時間待ちイベントのしきい値数を上回る場合、タグはSUSPENSION_B状態からSUSPENSION_A状態に変化してもよい。いくつかの実施形態では、時間待ちイベントしきい値は、たとえば1〜3個の連続する時間待ちイベントといった、任意の好適な数の連続する時間待ちイベントであってもよい。他の実施形態では、時間待ちイベントしきい値は、所与の期間内に生じる任意の好適な数の時間待ちイベント(たとえば、5分で3個の時間待ちイベント)であってもよい。しかしながら、実施形態はそのように限定されるものではなく、時間待ちイベントしきい値は、タグが所与の状態から遷移されるかどうか、およびタグがどの状態に遷移されるかを判断するために、他のメトリクス/アルゴリズムに基づいていてもよい。
たとえば、タグは、時間待ちイベントの重度(severity)(たとえば、重度しきい値を上回るタグ待ち時間値)、重度しきい値を上回る連続する時間待ちイベントの数、予め定められた期間内の重度しきい値を上回る時間待ちイベントの数、タグが所与の状態にある持続時間など、またはそれらの任意の組合せに基づいて、ある状態から別の状態に変化してもよい。いくつかの実施形態では、各状態で採用された時間待ちイベントしきい値は、個々に構成可能および/または変更可能であってもよい。少なくとも1つの実施形態では、これらの時間待ちイベントしきい値の各々は、各ユーザごとに別々に構成されてもよい。処理は次に、決定ブロック412に進む。
決定ブロック406で、非時間待ちイベントが生じたと判断された場合、処理は決定ブロック406からブロック410へとフローし得る。ブロック410で、非時間待ちイベントに基づいてタグの状態を変化させてもよく、それを図6とともに以下により詳細に説明する。しかしながら、簡単に言えば、待ち時間(たとえば、連続する非時間待ちイベント)およびタグの状態の判断が、状態に対する変更を示す場合、タグの状態は別の状態に変更されてもよい。いくつかの実施形態では、タグは、タグの現在の状態と、時間待ちイベントの数が非時間待ちイベントしきい値を上回るかどうかとに基づいて、状態を変化させてもよい。
いくつかの実施形態では、非時間待ちイベントのしきい値数を上回る場合、タグはFLAGGED状態からNORMAL状態に変化してもよい。他の実施形態では、非時間待ちイベントのしきい値数を上回る場合、タグはSUSPENSION_B状態からFLAGGED状態に変化してもよい。いくつかの実施形態では、非時間待ちイベントしきい値は、たとえば1〜3個の連続する非時間待ちイベントといった、任意の好適な数の連続する非時間待ちイベントであってもよい。他の実施形態では、非時間待ちイベントしきい値は、所与の期間内に生じる任意の好適な数の非時間待ちイベント(たとえば、1分で3個の非時間待ちイベント)であってもよい。しかしながら、実施形態はそのように限定されるものではなく、非時間待ちイベントしきい値は、タグが所与の状態から遷移されるかどうか、およびタグがどの状態に遷移されるかを判断するために、他のメトリクス/アルゴリズムに基づいていてもよい。
たとえば、タグは、1つ以上の非時間待ちイベントの軽度(mildness)(たとえば、軽度しきい値を下回るタグ待ち時間値)、軽度しきい値を下回る連続する非時間待ちイベントの数、予め定められた期間内の軽度しきい値を下回る非時間待ちイベントの数、タグが所与の状態にある持続時間など、またはそれらの任意の組合せに基づいて、ある状態から別の状態に変化してもよい。いくつかの実施形態では、各状態で採用された非時間待ちイベントしきい値は、個々に構成可能および/または変更可能であってもよい。少なくとも1つの実施形態では、これらの非時間待ちイベントしきい値の各々は、各ユーザごとに別々に構成されてもよい。
プロセス400は次に、決定ブロック412に進み、そこで、タグの現在の状態に基づいてタグがデプロイメントされないように阻止されているかどうか判断されてもよい。いくつかの実施形態では、NORMAL状態および/またはFLAGGED状態にあるタグは、阻止されなくてもよく、デプロイメントされることを許可されてもよい。他の実施形態では、SUSPENSION_A状態および/またはSUSPENSION_B状態にあるタグは、阻止されてもよく、デプロイメントされることを許可されなくてもよい。タグがデプロイメントされないように阻止されている場合、処理は、ひき続きタグ待ち時間を非同期にモニタリングするために、ブロック404へとループし得る。そうでない場合、処理はブロック414へとフローし得る。
ブロック414で、タグは、デプロイメントされることをイネーブルにされてもよい。いくつかの実施形態では、タグがデプロイメントされることをイネーブルにすることは、ウェブページ要求が提供された場合、タグが要求されてウェブページにロードされ得ることを、ウェブページに通知することを含んでいてもよい。他の実施形態では、タグがデプロイメントされることをイネーブルにすることは、ウェブページに対する要求が提供された場合、タグを要求してロードするように、図1のTDSD116といったタグデプロイメント装置に通知することを含んでいてもよい。少なくとも1つの実施形態では、デプロイメントのためにイネーブルにされたタグは、デプロイメントのために利用可能なタグのテーブルまたはリストに含まれていてもよい。いくつかの実施形態では、(ブロック412によって判断されるような)タグの現在の状態の判断がデプロイメントを肯定的に示し、かつ、ウェブページが要求された場合、タグは、関連付けられたウェブページでデプロイメントされてもよい。
ブロック414の後、プロセス400は、ひき続きタグ待ち時間を非同期にモニタリングするために、ブロック404へとループし得る。
図5は、タグの時間待ちイベントおよびタグの現在の状態に基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図を示す。いくつかの実施形態では、図5のプロセス500は、単一の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または単一のネットワーク装置上で実行されてもよい。他の実施形態では、図5のプロセス500またはプロセス500の一部は、複数の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または複数のネットワーク装置上で実行されてもよい。
プロセス500は、開始ブロックの後、決定ブロック502で始まり、そこで、タグがNORMAL状態にあるかどうか判断されてもよい。少なくとも1つの実施形態では、各状態(すなわち、NORMAL状態、FLAGGED状態、SUSPENSION_A状態、および/またはSUSPENSION_B状態)は、その特定の状態にあるタグを識別するテーブルに対応していてもよい。たとえば、通常タグテーブルは、NORMAL状態にあるタグを識別してもよく、フラグ付きタグテーブルは、FLAGGED状態にあるタグを識別してもよく、SUSPENSION_Aタグテーブルは、SUSPENSION_A状態にあるタグを識別してもよく、SUSPENSION_Bタグテーブルは、SUSPENSION_B状態にあるタグを識別してもよい。いくつかの実施形態では、タグが通常タグテーブルに含まれている場合、そのタグはNORMAL状態にあると判断されてもよい。タグがNORMAL状態にある場合、処理は決定ブロック504へとフローし得る。そうでない場合、処理は決定ブロック510へとフローし得る。
決定ブロック504で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。いくつかの実施形態では、時間待ちイベントしきい値は、連続する時間待ちイベントの総数であってもよい。非限定的で非包括的な一例では、NORMAL状態についての時間待ちイベントしきい値は、1個の時間待ちイベントであってもよい。少なくとも1つのそのような実施形態では、時間待ちイベントしきい値を上回るかどうか判断することは、連続する時間待ちイベントの数を時間待ちイベントしきい値と比較することを含んでいてもよい。他の実施形態では、時間待ちイベントしきい値は、所与の期間内に生じた時間待ちイベントの総数であってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の時間待ちイベントしきい値が採用されてもよい。時間待ちイベントしきい値を上回る場合、処理はブロック506へとフローし得る。そうでない場合、処理はブロック508へとフローし得る。
ブロック506で、タグはFLAGGED状態に遷移されてもよい。少なくとも1つの実施形態では、タグをFLAGGED状態に遷移させることは、タグをNORMALタグテーブルから除去し、タグをFLAGGEDタグテーブルに追加することを含んでいてもよい。しかしながら、実施形態はそのように限定されるものではなく、タグ状態を識別して変化させる他の方法が採用されてもよい。いくつかの実施形態では、FLAGGED状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。少なくとも1つの実施形態では、タグがFLAGGED状態に遷移されたことを示すために、電子メール、テキストメッセージ、または他の通知がユーザに送信されてもよい。他のいくつかの実施形態では、タグのタグ待ち時間がモニタリングされた場合にタグがエラー(たとえば、HTTP 4xx|5xx応答)を返すと、タグはFLAGGED状態に遷移されてもよい。ブロック506の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック504で、時間待ちイベントしきい値を上回らないと判断された場合、処理は決定ブロック504からブロック508へとフローし得る。ブロック508で、タグはNORMAL状態のままであってもよい。少なくとも1つの実施形態では、NORMAL状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。ブロック506の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック502で、タグがNORMAL状態にないと判断された場合、処理は決定ブロック502から決定ブロック510へとフローし得る。決定ブロック510で、タグがFLAGGED状態にあるかどうか判断されてもよい。いくつかの実施形態では、タグがフラグ付きタグテーブルに含まれている場合、そのタグはFLAGGED状態にあると判断されてもよい。タグがFLAGGED状態にある場合、処理は決定ブロック512へとフローし得る。そうでない場合、処理は決定ブロック516へとフローし得る。
決定ブロック512で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック512は、時間待ちイベントしきい値を上回るかどうか判断するために、決定ブロック504の実施形態を採用してもよい。いくつかの実施形態では、FLAGGED状態についての時間待ちイベントしきい値は、NORMAL状態についての時間待ちイベントしきい値と同じであってもよく、または異なっていてもよい。非限定的で非包括的な一例では、FLAGGED状態についての時間待ちイベントのしきい値数は、3個の連続する時間待ちイベントであってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の時間待ちイベントしきい値が採用されてもよい。時間待ちイベントしきい値を上回る場合、処理はブロック524へとフローし得る。そうでない場合、処理はブロック514へとフローし得る。
ブロック514で、タグは、フラグ付き状態のままであってもよい。少なくとも1つの実施形態では、FLAGGED状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。ブロック514の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック510で、タグがFLAGGED状態にないと判断された場合、処理は決定ブロック510から決定ブロック516へとフローし得る。決定ブロック516で、タグがSUSPENSION_B状態にあるかどうか判断されてもよい。いくつかの実施形態では、タグがSUSPENSION_Bタグテーブルに含まれている場合、そのタグはSUSPENSION_B状態にあると判断されてもよい。タグがSUSPENSION_B状態にある場合、処理は決定ブロック518へとフローし得る。そうでない場合、タグはSUSPENSION_A状態にあるかもしれず、処理は決定ブロック520へとフローし得る。
ブロック520で、タグは、SUSPENSION_A状態のままであってもよい。少なくとも1つの実施形態では、SUSPENSION_A状態にあるタグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。いくつかの実施形態では、タグは、時間待ちイベントおよび/または非時間待ちイベントから独立して、予め定められた期間の間、SUSPENSION_A状態にとどまっていてもよい。ブロック520の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック516で、タグがSUSPENSION_B状態にあると判断された場合、処理は決定ブロック516から決定ブロック518へとフローし得る。決定ブロック518で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック518は、時間待ちイベントしきい値を上回るかどうか判断するために、決定ブロック504の実施形態を採用してもよい。いくつかの実施形態では、SUSPENSION_B状態についての時間待ちイベントしきい値は、NORMAL状態および/またはFLAGGED状態についての時間待ちイベントしきい値と同じであってもよく、または異なっていてもよい。非限定的で非包括的な一例では、SUSPENSION_B状態についての時間待ちイベントのしきい値数は、3個の連続する時間待ちイベントであってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の時間待ちイベントしきい値が採用されてもよい。時間待ちイベントしきい値を上回る場合、処理はブロック524へとフローし得る。そうでない場合、処理はブロック522へとフローし得る。
ブロック524で、タグはSUSPENSION_A状態に遷移されてもよい。少なくとも1つの実施形態では、タグをSUSPENSION_A状態に遷移させることは、タグをSUSPENSION_Aタグテーブルに追加し、タグをFLAGGEDタグテーブルまたはSUSPENSION_Bタグテーブルから除去することを含んでいてもよい。いくつかの実施形態では、SUSPENSION_A状態にあるタグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。ブロック524の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック518で、時間待ちイベントしきい値を上回らないと判断された場合、処理は決定ブロック518からブロック522へとフローし得る。ブロック522で、タグはSUSPENSION_B状態のままであってもよい。いくつかの実施形態では、SUSPENSION_B状態にあるタグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。ブロック522の後、プロセス500は、他のアクションを行なうために呼出しプロセスに戻り得る。
図6は、タグの非時間待ちイベントおよびタグの現在の状態に基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図を示す。いくつかの実施形態では、図6のプロセス600は、単一の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または単一のネットワーク装置上で実行されてもよい。他の実施形態では、図6のプロセス600またはプロセス600の一部は、複数の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または複数のネットワーク装置上で実行されてもよい。
プロセス600は、開始ブロックの後、決定ブロック602で始まり、そこで、タグがNORMAL状態にあるかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック602は、タグがNORMAL状態にあるかどうか判断するために、図5の決定ブロック502の実施形態を採用してもよい。タグがNORMAL状態にある場合、処理はブロック604へとフローし得る。そうでない場合、処理は決定ブロック606へとフローし得る。
ブロック604で、タグはNORMAL状態のままであってもよく、タグは、デプロイメントされることを許可されてもよい。少なくとも1つの実施形態では、ブロック604は、図5のブロック508の実施形態を採用してもよい。ブロック604の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック602で、タグがNORMAL状態にないと判断された場合、処理は決定ブロック602から決定ブロック606へとフローし得る。決定ブロック606で、タグがFLAGGED状態にあるかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック606は、タグがFLAGGED状態にあるかどうか判断するために、図5の決定ブロック510の実施形態を採用してもよい。タグがFLAGGED状態にある場合、処理は決定ブロック608へとフローし得る。そうでない場合、処理は決定ブロック610へとフローし得る。
決定ブロック608で、非時間待ちイベントしきい値を上回るかどうか判断されてもよい。いくつかの実施形態では、非時間待ちイベントしきい値は、連続する非時間待ちイベントの総数であってもよい。非限定的で非包括的な一例では、FLAGGED状態についての非時間待ちイベントしきい値は、3個の連続する非時間待ちイベントであってもよい。少なくとも1つのそのような実施形態では、非時間待ちイベントしきい値を上回るかどうか判断することは、連続する非時間待ちイベントの数を非時間待ちイベントしきい値と比較することを含んでいてもよい。他の実施形態では、非時間待ちイベントしきい値は、所与の期間内に生じた非時間待ちイベントの総数であってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の非時間待ちイベントしきい値が採用されてもよい。非時間待ちイベントしきい値を上回る場合、処理はブロック616へとフローし得る。そうでない場合、処理はブロック614へとフローし得る。
ブロック616で、タグはNORMAL状態に遷移されてもよい。少なくとも1つの実施形態では、タグをNORMAL状態に遷移させることは、タグをFLAGGEDタグテーブルから除去し、タグをNORMALタグテーブルに追加することを含んでいてもよい。しかしながら、実施形態はそのように限定されるものではなく、タグ状態を識別して変化させる他の方法が採用されてもよい。いくつかの実施形態では、NORMAL状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。他のいくつかの実施形態では、ユーザがタグ状態をリセットした場合、タグのHTMLフィールドが編集された場合、タグのモニタリングがディスエーブルにされた場合、および/または、タグをモニタリングする地理的領域が変更された(すなわち、ユーザは、タグをモニタリングするサーバの地理的位置を選択してもよい)場合に、タグはNORMAL状態に戻ってもよい。ブロック616の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック608で、非時間待ちイベントしきい値を上回らないと判断された場合、処理は決定ブロック608からブロック614へとフローし得る。ブロック614で、タグはFLAGGED状態のままであってもよい。少なくとも1つの実施形態では、ブロック614は、図5のブロック514の実施形態を採用してもよい。ブロック614の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック606で、タグがFLAGGED状態にないと判断された場合、処理は決定ブロック606から決定ブロック610へとフローし得る。決定ブロック610で、タグがSUSPENSION_B状態にあるかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック610は、タグがSUSPENSION_B状態にあるかどうか判断するために、図5の決定ブロック516の実施形態を採用してもよい。タグがSUSPENSION_B状態にある場合、処理は決定ブロック618へとフローし得る。そうでない場合、処理は決定ブロック612へとフローし得る。
ブロック612で、タグはSUSPENSION_A状態のままであってもよい。少なくとも1つの実施形態では、ブロック612は、図5のブロック520の実施形態を採用してもよい。ブロック612の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック610で、タグがSUSPENSION_B状態にないと判断された場合、処理は決定ブロック610から決定ブロック618へとフローし得る。決定ブロック618で、非時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック618は、非時間待ちイベントしきい値を上回るかどうか判断するために、決定ブロック608の実施形態を採用してもよい。いくつかの実施形態では、SUSPENSION_A状態についての非時間待ちイベントしきい値は、FLAGGED状態についての非時間待ちイベントしきい値と同じであってもよく、または異なっていてもよい。非限定的で非包括的な一例では、SUSPENSION_A状態についての非時間待ちイベントのしきい値数は、3個の連続する非時間待ちイベントであってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の非時間待ちイベントしきい値が採用されてもよい。非時間待ちイベントしきい値を上回る場合、処理はブロック622へとフローし得る。そうでない場合、処理はブロック620へとフローし得る。
ブロック622で、タグはFLAGGED状態に遷移されてもよい。少なくとも1つの実施形態では、ブロック622は、図5のブロック506の実施形態を採用してもよい。ブロック622の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
決定ブロック618で、非時間待ちイベントしきい値を上回らないと判断された場合、処理は決定ブロック618からブロック620へとフローし得る。ブロック620で、タグはSUSPENSION_B状態のままであってもよい。少なくとも1つの実施形態では、ブロック620は、図5のブロック522の実施形態を採用してもよい。ブロック620の後、プロセス600は、他のアクションを行なうために呼出しプロセスに戻り得る。
図7は、複数の状態のうちの1つの状態にあるタグを採用し、時間待ちイベントまたは非時間待ちイベントに基づいてタグ状態を変化させるためのプロセスの一実施形態を概して示す論理フロー図を示す。いくつかの実施形態では、図7のプロセス700は、単一の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または単一のネットワーク装置上で実行されてもよい。他の実施形態では、図7のプロセス700またはプロセス700の一部は、複数の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または複数のネットワーク装置上で実行されてもよい。
プロセス700は、開始ブロックの後、ブロック702で始まり、そこで、タグがNORMAL状態で採用されてもよい。少なくとも1つの実施形態では、NORMAL状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。(ブロック404で)上述したように、タグの待ち時間が非同期にモニタリングされてもよい。少なくとも1つの実施形態では、NORMAL状態にあるタグのタグ待ち時間は、15分ごとにモニタリングされてもよい。しかしながら、フラグ付き状態にあるタグをモニタリングするための他の頻度が採用されてもよい。
プロセス700は決定ブロック704に進み、そこで、タグについての時間待ちイベントが生じたかかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック704は、非同期にモニタリングされたタグ待ち時間に基づいて時間待ちイベントが生じたかどうか判断するために、図4の決定ブロック406の実施形態を採用してもよい。時間待ちイベントが生じた場合、処理は決定ブロック705へとフローし得る。そうでない場合、処理はブロック702へとループしてもよく、そこで、タグはNORMAL状態のままであってもよい。
決定ブロック705で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック705は、NORMAL状態にあるタグについて時間待ちイベントしきい値を上回るかどうか判断するために、図5の決定ブロック504の実施形態を採用してもよい。時間待ちイベントしきい値を上回る場合、タグはFLAGGED状態に遷移されてもよく、処理はブロック706へとフローし得る。そうでない場合、処理はブロック702へとループしてもよく、そこで、タグはNORMAL状態のままであってもよい。いくつかの実施形態では、プロセス700は、タグをFLAGGED状態に遷移させるために、図5のブロック506の実施形態を採用してもよい。
ブロック706で、タグはFLAGGED状態で採用されてもよい。少なくとも1つの実施形態では、FLAGGED状態にあるタグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。少なくとも1つの実施形態では、FLAGGED状態にあるタグのタグ待ち時間は、5分ごとにモニタリングされてもよい。しかしながら、FLAGGED状態にあるタグをモニタリングするための他の頻度が採用されてもよい。
いくつかの実施形態では、ユーザは、タグを「リセット」することによって、FLAGGED状態にあるタグをNORMALに手動で遷移させてもよい。少なくとも1つの実施形態では、ユーザは、「リセット」ボタンをクリックすることによって、タグをNORMAL状態に遷移させてもよい。しかしながら、実施形態はそのように限定されるものではなく、タグをリセットし、および/またはタグをNORMAL状態に手動で遷移させるための他の実施形態が採用されてもよい。少なくとも1つの実施形態では、タグを手動で遷移させることは、タグの待ち時間をモニタリングするためのプロセスから独立して生じてもよい。FLAGGED状態にあるタグがNORMAL状態に手動で「リセット」された場合、プロセス700はブロック702へとループし得る(図示せず)。少なくとも1つの実施形態では、任意の状態(および/または予め定められた状態)のタグが、NORMAL状態に「リセット」されてもよい。
いずれにせよ、プロセス700は決定ブロック710に進み、そこで、タグについての時間待ちイベントが生じたかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック710は、時間待ちイベントが生じたかどうか判断するために、決定ブロック704の実施形態を採用してもよい。時間待ちイベントが生じた場合、処理は決定ブロック712へとフローし得る。そうでない場合、処理は決定ブロック708へとフローし得る。
決定ブロック708で、非時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック708は、FLAGGED状態にあるタグについて非時間待ちイベントしきい値を上回るかどうか判断するために、図6の決定ブロック608の実施形態を採用してもよい。非時間待ちイベントしきい値を上回る場合、タグはNORMAL状態に遷移されてもよく、処理はブロック702へとフローし得る。そうでない場合、処理はブロック706へとループしてもよく、そこで、タグはFLAGGED状態のままであってもよい。いくつかの実施形態では、プロセス700は、タグをNORMAL状態に遷移させるために、図6のブロック616の実施形態を採用してもよい。
決定ブロック710で、時間待ちイベントが生じた場合、処理は決定ブロック710から決定ブロック712へとフローし得る。決定ブロック712で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック712は、FLAGGED状態にあるタグについて時間待ちイベントしきい値を上回るかどうか判断するために、図5の決定ブロック512の実施形態を採用してもよい。時間待ちイベントしきい値を上回る場合、タグはSUSPENSION_A状態に遷移されてもよく、処理はブロック714へとフローし得る。そうでない場合、処理はブロック706へとループしてもよく、そこで、タグはFLAGGED状態のままであってもよい。いくつかの実施形態では、プロセス700は、タグをSUSPENSION_A状態に遷移させるために、図5のブロック524の実施形態を採用してもよい。
ブロック714で、タグはSUSPENSION_A状態で採用されてもよい。いくつかの実施形態では、SUSPENSION_A状態にあるタグは、予め定められた期間の間、SUSPENSION_A状態のままであってもよい。少なくとも1つの実施形態では、タグがSUSPENSION_A状態にある間、タグ待ち時間はモニタリングされなくてもよい。いくつかの実施形態では、SUSPENSION_A状態にあるタグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。
いくつかの実施形態では、ユーザは、タグを「リセット」することによって、SUSPENSION_A状態にあるタグをNORMALに手動で遷移させてもよい。少なくとも1つの実施形態では、ブロック714は、タグを「リセット」するために、ブロック706の実施形態を採用してもよい。SUSPENSION_A状態にあるタグがNORMAL状態に手動で「リセット」された場合、プロセス700はブロック702へとループし得る(図示せず)。
プロセス700は決定ブロック716に進み、そこで、タグがSUSPENSION_A状態のままであるべき期間が経過したかどうか判断されてもよい。少なくとも1つの実施形態では、この期間は、ユーザによって判断され、および/または変更されてもよい。いくつかの実施形態では、この期間は20分であってもよい。しかしながら、実施形態はそのように限定されるものではなく、他の期間が採用されてもよい。期間が経過した場合、タグはSUSPENSION_B状態に遷移されてもよく、処理はブロック718へとフローし得る。そうでない場合、処理はブロック714へとループしてもよく、そこで、タグはSUSPENSION_A状態のままであってもよい。
ブロック718で、タグはSUSPENSION_B状態で採用されてもよい。少なくとも1つの実施形態では、SUSPENSION_B状態にあるタグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。少なくとも1つの実施形態では、SUSPENSION_B状態にあるタグのタグ待ち時間は、毎分モニタリングされてもよい。しかしながら、SUSPENSION_B状態にあるタグをモニタリングするための他の頻度が採用されてもよい。
いくつかの実施形態では、ユーザは、タグを「リセット」することによって、SUSPENSION_B状態にあるタグをNORMALに手動で遷移させてもよい。少なくとも1つの実施形態では、ブロック718は、タグを「リセット」するために、ブロック706の実施形態を採用してもよい。SUSPENSION_B状態にあるタグがNORMAL状態に手動で「リセット」された場合、プロセス700はブロック702へとループし得る(図示せず)。
プロセス700は次に、決定ブロック720に進み、そこで、タグについての時間待ちイベントが生じたかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック720は、時間待ちイベントが生じたかどうか判断するために、決定ブロック704の実施形態を採用してもよい。時間待ちイベントが生じた場合、処理は決定ブロック722へとフローし得る。そうでない場合、処理は決定ブロック724へとフローし得る。
決定ブロック722で、時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック722は、SUSPENSION_B状態にあるタグについて時間待ちイベントしきい値を上回るかどうか判断するために、図5の決定ブロック518の実施形態を採用してもよい。時間待ちイベントしきい値を上回る場合、タグはSUSPENSION_A状態に遷移されてもよく、処理はブロック714へとフローし得る。そうでない場合、処理はブロック718へとループしてもよく、そこで、タグはSUSPENSION_B状態のままであってもよい。いくつかの実施形態では、プロセス700は、タグをSUSPENSION_A状態に遷移させるために、図5のブロック524の実施形態を採用してもよい。
決定ブロック720で、時間待ちイベントが生じていない場合、処理は決定ブロック720から決定ブロック724へとフローし得る。決定ブロック724で、非時間待ちイベントしきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック724は、SUSPENSION_B状態にあるタグについて非時間待ちイベントしきい値を上回るかどうか判断するために、図6の決定ブロック618の実施形態を採用してもよい。非時間待ちイベントしきい値を上回る場合、タグはFLAGGED状態に遷移されてもよく、処理はブロック706へとフローし得る。そうでない場合、処理はブロック718へとループしてもよく、そこで、タグはSUSPENSION_B状態のままであってもよい。いくつかの実施形態では、プロセス700は、タグをFLAGGED状態に遷移させるために、図5のブロック506の実施形態を採用してもよい。
フローチャート図の各ブロック、およびフローチャート図のブロックの組合せは、コンピュータプログラム命令によって実現可能である、ということが理解されるであろう。これらのプログラム命令は、プロセッサ上で実行される命令が、フローチャートのブロックで特定されたアクションを実現するための手段を作り出すように、プロセッサに提供されてマシンを作成してもよい。コンピュータプログラム命令は、プロセッサ上で実行される命令が、フローチャートのブロックで特定されたアクションを実現するためのステップを提供するように、コンピュータが実現するプロセスを作成するために、プロセッサによって実行され、一連の動作ステップがプロセッサによって行なわれるようにしてもよい。コンピュータプログラム命令はまた、フローチャートのブロックに示す動作ステップのうちの少なくともいくつかが並行して行なわれるようにしてもよい。また、ステップのうちのいくつかは、マルチプロセッサコンピュータシステムで生じるように、2つ以上のプロセッサにわたって行なわれてもよい。加えて、フローチャート図の1つ以上のブロックまたはブロックの組合せはまた、この発明の範囲または精神から逸脱することなく、他のブロックまたはブロックの組合せと同時に行なわれてもよく、もしくは、さらには説明されたものとは異なる順序で行なわれてもよい。
したがって、フローチャート図のブロックは、特定されたアクションを行なうための手段の組合せ、特定されたアクションを行なうためのステップの組合せ、および特定されたアクションを行なうためのプログラム命令手段をサポートする。また、フローチャート図の各ブロック、およびフローチャート図のブロックの組合せは、特定されたアクションまたはステップを行なう専用ハードウェアベースのシステム、もしくは専用ハードウェアとコンピュータ命令との組合せによって実現可能である、ということが理解されるであろう。前述の例は限定的および/または包括的であると解釈されるべきではなく、むしろ、この発明のさまざまな実施形態の少なくとも1つについての一実現化例を示す例示的な使用事例であると解釈されるべきである。
図8は、複数のタグ状態と状態変化をトリガし得るイベントとの図形表示を示す使用事例の一実施形態を示す。図示されているように、タグは、NORMAL状態802、FLAGGED状態804、SUSPENSION_A状態806、またはSUSPENSION_B状態808という、システム800の5つの状態のうちの1つの状態にあってもよい。いくつかの実施形態では、NORMAL状態802、FLAGGED状態806、SUSPENSION_A状態806、および/またはSUSPENSION_B状態808にあるタグはそれぞれ、図7のブロック702、ブロック706、ブロック714、および/またはブロック718の実施形態と同様に採用されてもよい。
NORMAL状態802にあるタグは、作動されることを許可されてもよい。少なくとも1つの実施形態では、タグを作動させることを許可することは、タグがデプロイメントされるために利用可能であると判断し、タグがデプロイメントされることをイネーブルにすることを含んでいてもよい。いくつかの実施形態では、NORMAL状態802にあるタグは、そのタグについて1個の時間待ちイベントがモニタリングされた場合、FLAGGED状態804に遷移されてもよい。しかしながら、実施形態はそのように限定されるものではなく、むしろ、タグがNORMAL状態802から遷移されるかどうか判断するために、他のメトリクスが採用されてもよく、それを以下により詳細に説明する。
FLAGGED状態804にあるタグは、作動されることを許可されてもよい。いくつかの実施形態では、FLAGGED状態804にあるタグは、そのタグについて3個の連続する時間待ちイベントがモニタリングされた場合、SUSPENSION_A状態806に遷移されてもよい。他の実施形態では、FLAGGED状態804にあるタグは、そのタグについて3個の連続する非時間待ちイベントがモニタリングされた場合、NORMAL状態802に遷移されてもよい。しかしながら、実施形態はそのように限定されるものではなく、むしろ、タグがFLAGGED状態804から遷移されるかどうか判断するために、他のメトリクスが採用されてもよく、それを以下により詳細に説明する。
SUSPENSION_A状態806にあるタグは、作動しないように阻止されてもよい。少なくとも1つの実施形態では、タグを作動しないように阻止することは、タグがデプロイメントされるために利用できないと判断し、タグがデプロイメントされることをイネーブルにしないことを含む。いくつかの実施形態では、SUSPENSION_A状態806にあるタグは、20分間SUSPENSION_A状態のままであった後で、SUSPENSION_B状態808に遷移されてもよい。しかしながら、実施形態はそのように限定されるものではなく、むしろ、タグがSUSPENSION_A状態806から遷移されるかどうか判断するために、他のメトリクスが採用されてもよく、それを以下により詳細に説明する。
SUSPENSION_B状態808にあるタグは、作動しないように阻止されてもよい。いくつかの実施形態では、SUSPENSION_B状態808にあるタグは、そのタグについて3個の連続する時間待ちイベントがモニタリングされた場合、SUSPENSION_A状態806に遷移されてもよい。他の実施形態では、SUSPENSION_B状態808にあるタグは、そのタグについて3個の連続する非時間待ちイベントがモニタリングされた場合、FLAGGED状態804に遷移されてもよい。しかしながら、実施形態はそのように限定されるものではなく、むしろ、タグがSUSPENSION_B状態808から遷移されるかどうか判断するために、他のメトリクスが採用されてもよく、それを以下により詳細に説明する。
なお、図8は、複数の状態とある状態から別の状態へのタグの遷移との一実施形態を示している。しかしながら、実施形態はそのように限定されるものではない。たとえば、いくつかの実施形態では、異なる数の状態が採用されてもよい。他の実施形態では、タグは、図8に示されていないような態様である状態から別の状態に遷移してもよく、たとえば、タグは、NORMAL状態802からSUSPENSION_A状態806に変化してもよい。さらに他の実施形態では、タグが所与の状態から遷移されるかどうか、およびタグがどの状態に遷移されるかを判断するために、各状態は異なるメトリクスを採用してもよい。いくつかの実施形態では、これらのメトリクスは、各ユーザごとに予め定められ、構成可能であり、および/または変更可能であってもよい。採用され得るメトリクスの異なる実施形態は、連続する時間待ちイベントの数、予め定められた期間内の時間待ちイベントの数、時間待ちイベントの重度(たとえば、重度しきい値を上回るタグ待ち時間値)、重度しきい値を上回る連続する時間待ちイベントの数、予め定められた期間内の重度しきい値を上回る時間待ちイベントの数、連続する非時間待ちイベントの数、予め定められた期間内の非時間待ちイベントの数、1つ以上の非時間待ちイベントの軽度(たとえば、軽度しきい値を下回るタグ待ち時間値)、軽度しきい値を下回る連続する非時間待ちイベントの数、予め定められた期間内の軽度しきい値を下回る非時間待ちイベントの数、タグが所与の状態にある持続時間など、またはそれらの任意の組合せを含むもののそれらに限定されない。
代替的な実施形態
図9A〜9Bは、複数の状態のうちの1つの状態にあるタグを採用し、タグ待ち時間に基づいてタグ状態を変化させるためのプロセスの代替的な一実施形態を概して示す論理フロー図を示す。いくつかの実施形態では、図9A〜9Bのプロセス900は、単一の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または単一のネットワーク装置上で実行されてもよい。他の実施形態では、図9A〜9Bのプロセス900またはプロセス900の一部は、複数の、図3のネットワーク装置300などのネットワーク装置によって実現され、および/または複数のネットワーク装置上で実行されてもよい。
プロセス900は、開始ブロックの後、ブロック902で始まり、そこで、タグがNORMAL状態で採用されてもよい。少なくとも1つの実施形態では、ブロック902は、NORMAL状態にあるタグを採用するために、図7のブロック702の実施形態を採用してもよい。いくつかの実施形態では、NORMAL状態にあるタグは、モニタリング頻度が15分であってもよい。
プロセス900は決定ブロック904に進み、そこで、タグのモニタリングされたタグ待ち時間が中断しきい値を上回ったかどうか判断されてもよい。少なくとも1つの実施形態では、中断しきい値は、予め定められたタグ待ち時間(すなわち、予め定められた量の時間)であってもよい。少なくとも1つの実施形態では、中断しきい値は、ユーザによって判断され、および/または変更されてもよい。タグ待ち時間が中断しきい値を上回る場合、タグはPRE−SUSPENSION状態に遷移されてもよく、処理はブロック912へとフローし得る。そうでない場合、処理は決定ブロック906へとフローし得る。
決定ブロック906で、タグのタグ待ち時間が警告しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、警告しきい値は、予め定められたタグ待ち時間であってもよい。少なくとも1つの実施形態では、警告しきい値は、ユーザによって判断され、および/または変更されてもよい。いくつかの実施形態では、警告しきい値は、ユーザの所望のタグ待ち時間よりも大きく、中断しきい値未満であってもよい。タグ待ち時間が警告しきい値を上回る(ものの、中断しきい値を上回らない)場合、タグはFLAGGED状態に遷移されてもよく、処理はブロック908へとフローし得る。そうでない場合、処理はブロック902へとループしてもよく、そこで、タグはNORMAL状態のままであってもよい。
ブロック908で、タグはFLAGGED状態で採用されてもよい。少なくとも1つの実施形態では、ブロック908は、FLAGGED状態にあるタグを採用するために、図7のブロック706の実施形態を採用してもよい。いくつかの実施形態では、FLAGGED状態にあるタグは、モニタリング頻度が5分であってもよい。少なくとも1つの実施形態では、FLAGGED状態にあるタグは、タグ待ち時間が(決定ブロック910などで)中断しきい値を上回るまで、または(決定ブロック914などで)警告しきい値を上回らなくなるまで、FLAGGED状態のままであってもよい。いくつかの実施形態では、タグがFLAGGED状態にあることを示すために、電子メール、テキストメッセージ、または他の通知がユーザに送信されてもよい。
プロセス900は決定ブロック910に進み、そこで、タグのタグ待ち時間が中断しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック910は、中断しきい値を上回るかどうか判断するために、決定ブロック904の実施形態を採用してもよい。タグ待ち時間が中断しきい値を上回る場合、タグはPRE−SUSPENDED状態に遷移されてもよく、処理はブロック912へとフローし得る。そうでない場合、処理は決定ブロック914へとフローし得る。
決定ブロック914で、タグのタグ待ち時間が警告しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック910は、警告しきい値を上回るかどうか判断するために、決定ブロック904の実施形態を採用してもよい。タグ待ち時間が警告しきい値を上回る(ものの、中断しきい値を上回らない)場合、タグはFLAGGED状態のままであってもよく、処理はブロック908へとフローし得る。そうでない場合、タグはNORMAL状態に遷移されてもよく、処理はブロック902へとループし得る。
決定ブロック910で、タグ待ち時間が中断しきい値を上回る場合、処理は決定ブロック910からブロック912へとフローし得る。ブロック912で、タグはPRE−SUSPENDED状態で採用されてもよい。少なくとも1つの実施形態では、タグは、阻止されなくてもよく、デプロイメントされることをイネーブルにされてもよい。いくつかの実施形態では、PRE−SUSPENDED状態にあるタグは、モニタリング頻度が1分であってもよい。少なくとも1つの実施形態では、PRE−SUSPENDED状態にあるタグは、5分という期間の間、PRE−SUSPENDED状態のままであってもよい。
プロセス900は次に、決定ブロック916に進み、そこで、タグのタグ待ち時間が中断しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック916は、中断しきい値を上回るかどうか判断するために、決定ブロック904の実施形態を採用してもよい。タグ待ち時間が中断しきい値を上回る場合、処理は決定ブロック918へとフローし得る。そうでない場合、タグはFLAGGED状態に遷移されてもよく、処理はブロック908へとループし得る。
決定ブロック918で、連続する数の中断しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、連続する中断しきい値は、中断しきい値を上回る、モニタリングされた2個の連続するタグ待ち時間であってもよい。連続する中断しきい値を上回る場合、タグはSUSPENDED状態に遷移されてもよく、処理は図9Bのブロック920へとフローし得る。そうでない場合、処理はブロック912へとループしてもよく、そこで、タグはPRE−SUSPENDED状態のままであってもよい。
プロセス900は、図9Bのブロック920に進み、そこで、タグはSUSPENDED状態で採用されてもよい。少なくとも1つの実施形態では、タグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。いくつかの実施形態では、SUSPENDED状態にあるタグは、モニタリングされなくてもよい。少なくとも1つの実施形態では、SUSPENDED状態にあるタグは、30分という期間の間、SUSPENDED状態のままであってもよい。いくつかの実施形態では、タグがFLAGGED状態にあることを示すために、電子メール、テキストメッセージ、または他の通知がユーザに送信されてもよい。
プロセス900は次に、決定ブロック922に進み、そこで、中断状態限界を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、中断状態限界は30分であってもよい。中断状態限界を上回る場合、タグはPOST−SUSPENDED状態に遷移されてもよく、処理はブロック924へとフローし得る。そうでない場合、処理はブロック920へとループしてもよく、そこで、タグはSUSPENDED状態のままであってもよい。
ブロック924で、タグは、POST−SUSPENDED状態で採用されてもよい。少なくとも1つの実施形態では、タグは、阻止されてもよく、デプロイメントされることをイネーブルにされなくてもよい。いくつかの実施形態では、POST−SUSPENDED状態にあるタグは、モニタリング頻度が5分であってもよい。少なくとも1つの実施形態では、POST−SUSPENDED状態にあるタグは、5分という期間の間、POST−SUSPENDED状態のままであってもよい。
プロセス900は決定ブロック926に進み、そこで、タグのタグ待ち時間が中断しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック926は、中断しきい値を上回るかどうか判断するために、決定ブロック904の実施形態を採用してもよい。タグ待ち時間が中断しきい値を上回る場合、処理は決定ブロック928へとフローし得る。そうでない場合、処理は決定ブロック930へとフローし得る。
決定ブロック928で、連続する数の中断しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック928は、連続する中断しきい値を上回るかどうか判断するために、図9Aの決定ブロック918の実施形態を採用してもよい。少なくとも1つの実施形態では、連続する中断しきい値は、中断しきい値を上回る、モニタリングされた2個の連続するタグ待ち時間であってもよい。連続する中断しきい値を上回る場合、タグはSUSPENDED状態に遷移されてもよく、処理はブロック920へとループし得る。そうでない場合、処理はブロック924へとループしてもよく、そこで、タグはPOST−SUSPENDED状態のままであってもよい。
決定ブロック926で、タグ待ち時間が中断しきい値を上回らない場合、処理は決定ブロック926から決定ブロック930へとフローし得る。決定ブロック930で、タグのタグ待ち時間が警告しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、決定ブロック930は、警告しきい値を上回るかどうか判断するために、決定ブロック904の実施形態を採用してもよい。タグ待ち時間が警告しきい値を上回る(ものの、中断しきい値を上回らない)場合、処理は決定ブロック932へとフローし得る。そうでない場合、タグは通常状態に遷移されてもよく、処理は図9Aのブロック902へとループし得る。
決定ブロック932で、連続する数の警告しきい値を上回るかどうか判断されてもよい。少なくとも1つの実施形態では、連続する警告しきい値は、警告しきい値を上回る、モニタリングされた2個の連続するタグ待ち時間であってもよい。連続する警告しきい値を上回る場合、タグはFLAGGED状態に遷移されてもよく、処理は図9Aのブロック922へとループし得る。そうでない場合、処理はブロック924へとループしてもよく、そこで、タグはPOST−SUSPENDED状態のままであってもよい。
図10は、複数のタグ状態と状態変化をトリガし得るイベントとの図形表示を示す使用事例の代替的な一実施形態を示す。図示されているように、タグは、NORMAL状態1002、FLAGGED状態1004、PRE−SUSPENDED状態1006、SUSPENDED状態1008、またはPOST−SUSPENDED状態1010という、システム1000の5つの状態のうちの1つの状態にあってもよい。いくつかの実施形態では、NORMAL状態1002、FLAGGED状態1004、PRE−SUSPENDED状態1006、SUSPENDED状態1008、および/またはPOST−SUSPENDED状態1010にあるタグはそれぞれ、図9のブロック902、ブロック908、ブロック912、ブロック920、および/またはブロック924の実施形態と同様に採用されてもよい。
ステップ1:特定された警告しきい値を上回る、NORMAL状態1002にあるタグは、FLAGGED状態1004に遷移されてもよい。待ち時間の数が低下する場合(すなわち、モニタリングされたタグ待ち時間が警告しきい値未満である場合)、FLAGGED状態1004にあるタグは、NORMAL状態1002に戻ってもよい。
ステップ2:特定された中断しきい値を上回る、NORMAL状態1002にあるタグは、PRE−SUSPENDED状態1006に遷移されてもよい。少なくとも1つの実施形態では、中断しきい値は警告しきい値よりも大きくてもよい。非限定的で非包括的な一例では、警告しきい値は500ミリ秒であってもよく、中断しきい値は800ミリ秒であってもよい。
ステップ3:中断しきい値を上回る、FLAGGED状態1004にあるタグは、PRE−SUSPENDED状態1006に遷移されてもよい。待ち時間の数が低下する場合(すなわち、モニタリングされたタグ待ち時間が中断しきい値未満である場合)、PRE−SUSPENDED状態1006にあるタグは、FLAGGED状態1004に戻ってもよい。
ステップ4:2個の連続する試みについて中断しきい値を上回る、PRE−SUSPENDED状態1006にあるタグは、SUSPENDED状態1008に遷移されてもよい。
ステップ5:中断状態限界(たとえば30分)に達した、SUSPENDED状態1008にあるタグは、POST−SUSPENDED状態1010に遷移されてもよい。POST−SUSPENDED状態1010にあるタグは、それらが2個の連続する試みについて中断しきい値を上回る場合、SUSPENDED状態1008に戻ってもよい。いくつかの実施形態では、タグをいつ、ある状態から別の状態に遷移させるべきかを判断するために採用される中断しきい値は、同じしきい値であっても、または異なるしきい値であってもよい。
ステップ6:POST−SUSPENDED状態1010にあるタグは、それらが2個の連続する試みについて警告しきい値を上回る場合、FLAGGED状態1004に遷移可能である。POST−SUSPENDED状態1010にあるタグは、それらが2個の連続する試みについて警告しきい値または中断しきい値を上回らない場合、NORMAL状態1002に遷移可能である。
使用事例動作環境
図11は、タグ待ち時間をモニタリングし、タグ状態変化およびデプロイメントを制御するために利用され得るシステムのシステム図を示す使用事例の一実施形態を示す。図示されているように、システム1100は、複数のモニターサーバと、制御サーバと、データベースと、タグサーバとを含んでいてもよい。いくつかの実施形態では、複数のモニターサーバは、図1のTMSD112の実施形態と同様であってもよい。複数のモニターサーバは、中断後タグ用モニターサーバと、中断タグ用モニターサーバと、中断前タグ用モニターサーバと、フラグ付きタグ用モニターサーバと、通常タグ用モニターサーバとを含む、異なる状態にあるタグをモニタリングするための複数のグループのモニターサーバを含んでいてもよい。モニターサーバのグループの各々は、北米(North America:NA)、ヨーロッパ(Europe:EU)、アジア(すなわち、アジアおよび太平洋(Asia and Pacific:APAC))、および南米(South America:SA)といった、異なる地理的位置に物理的に位置していてもよい。いくつかの実施形態では、ユーザは、どの地理的位置のモニターサーバがタグをモニタリングするか選択することを可能にされてもよい。
データベースは、すべてのタグのリスト(すなわち、全タグテーブル)を含んでいてもよい。データベースはまた、中断タグテーブルと、中断前タグテーブルと、中断後タグテーブルと、通常タグテーブルと、フラグ付きタグテーブルとを含む、複数のタグ状態の各々のための複数のテーブルを含んでいてもよい。
制御サーバは、どのタグをモニタリングするか、およびいつモニタリングするか判断するために、データベースにアクセスしてもよい。いくつかの実施形態では、制御サーバは、図1のTCSD114の実施形態と同様であってもよい。タグをモニタリングすべき場合、制御サーバは、選択された地理的位置のモニターサーバに、タグの現在の状態について通知してもよい(たとえば、タグ識別子を送信してもよい)。たとえば、ユーザがヨーロッパのモニターサーバを選択し、かつ、FLAGGED状態にあるタグをモニタリングすべき場合、制御サーバは、ヨーロッパのフラグ付きタグ用モニターサーバに通知してもよい。複数のモニターサーバの各々は、モニタリングされたタグのタグ待ち時間を制御サーバに提供してもよい。タグ待ち時間に基づいて、制御サーバは、タグの状態を変化させるかどうか判断してもよい。タグ状態が変化すると、制御サーバは、変化した状態を反映するように、データベース内の適切なテーブルを変更してもよい。いくつかの実施形態では、タグが特定の状態(たとえば、フラグ付き、中断など)に変化すると、制御サーバは、電子メールまたは他の通知をユーザに送信してもよい。加えて、制御サーバは、デプロイメントのために利用可能なタグを識別するために(すなわち、デプロイメントのためにタグをイネーブルにするために)プッシュサービスと通信してもよい。
プッシュサービスは、タグをタグサーバに提供するように構成されてもよい。少なくとも1つの実施形態では、プッシュサービスは、制御サーバから受信された利用可能なタグについての最新情報を、タグサーバに提供してもよい。プッシュサービスによって提供された情報に基づいて、タグサーバは、クライアントブラウザのウェブページにタグをデプロイメントしてもよい。いくつかの実施形態では、タグサーバは、図1のTDSD116の実施形態と同様であってもよい。少なくとも1つの実施形態では、制御サーバおよびモニタリングサーバは、ウェブページ要求に対して非同期に実行されてもよい(プッシュサービスおよびタグサーバを含む)。
いくつかの実施形態では、タグがデプロイメントを阻止されている場合(たとえば、図8のSUSPENSION_A状態806および/またはSUSPENSION_B状態808、もしくは、図10のSUSPENDED状態1008および/またはPOST−SUSPENDED状態1010)、制御サーバは、阻止されたタグの代わりに、デプロイメントのための「不活性(inert)」タグをイネーブルにしてもよい。少なくとも1つの実施形態では、不活性タグは、阻止されたタグの実行不能バージョンであってもよい。いくつかの実施形態では、不活性タグは、阻止されたタグがデプロイメントされたかもしれないものの、(阻止されたために)デプロイメントされなかった回数を判断するために、利用されてもよい。少なくとも1つの実施形態では、制御サーバは不活性タグをプッシュサービスに、および最終的にはタグサーバに提供してもよい。いくつかの実施形態では、タグサーバは不活性タグを、タグに関する統計情報を集めるための本物のタグとして扱ってもよいが、不活性タグをデプロイメントしなくてもよい。
上述の明細書、例、およびデータは、この発明の構成、製造、および使用の完全な説明を提供する。この発明の多くの実施形態は、この発明の精神および範囲から逸脱することなく作成できるため、この発明は、添付された請求項内に存在する。

Claims (30)

  1. ネットワークを通してウェブページのためにタグを管理するための方法であって、少なくとも1つのネットワーク装置が、前記方法を実現するアクションが行なわれることを可能にし、前記方法は、
    少なくとも1つのウェブページに関連付けられた、モニタリングすべき少なくとも1つのタグを判断するステップを含み、前記少なくとも1つのタグは、複数の状態のうちの1つの状態にあり、前記方法はさらに、
    前記少なくとも1つのタグの状態に少なくとも基づいて、前記少なくとも1つのタグをモニタリングするステップを含み、モニタリングは、前記少なくとも1つのウェブページについての各要求に対して非同期であり、前記方法はさらに、
    前記少なくとも1つのタグをモニタリングするための待ち時間を判断するステップと、
    待ち時間および前記少なくとも1つのタグの状態の判断が、状態に対する変更を示す場合、前記少なくとも1つのタグの状態を別の状態に変更するステップと、
    前記少なくとも1つのタグの現在の状態の判断がデプロイメントを肯定的に示し、かつ、前記少なくとも1つのウェブページが要求された場合、前記少なくとも1つのタグを、関連付けられた前記少なくとも1つのウェブページでデプロイメントするステップとを含む、方法。
  2. 前記複数の状態は、通常状態と、フラグ付き状態と、少なくとも1つの中断状態とを少なくとも含む、請求項1に記載の方法。
  3. 前記少なくとも1つのタグをデプロイメントするステップは、
    前記少なくとも1つのタグが通常状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにするステップと、
    前記少なくとも1つのタグがフラグ付き状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにするステップと、
    前記少なくとも1つのタグが中断状態にある場合、前記少なくとも1つのタグのデプロイメントを阻止するステップとをさらに含む、請求項1に記載の方法。
  4. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間結果が、連続する時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、重度しきい値を上回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させるステップをさらに含む、請求項1に記載の方法。
  5. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間結果が、連続する非時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の非時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、軽度しきい値を下回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させるステップをさらに含む、請求項1に記載の方法。
  6. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間が、前記少なくとも1つのタグについての時間待ちイベントをもたらす場合において、
    待ち時間結果が時間待ちイベントのしきい値数を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    待ち時間結果が時間待ちイベントの別のしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    予め定められた期間の後、第1の中断状態にある前記少なくとも1つのタグを第2の中断状態に遷移させること、および
    待ち時間結果が時間待ちイベントのさらに別のしきい値数を上回る場合、第2の中断状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    を含むさらなるアクションを行なうステップをさらに含む、請求項1に記載の方法。
  7. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間が、前記少なくとも1つのタグについての非時間待ちイベントをもたらす場合において、
    非時間待ちイベントが非時間待ちイベントのしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させること、および
    非時間待ちイベントが非時間待ちイベントの別のしきい値数を上回る場合、中断状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    を含むさらなるアクションを行なうステップをさらに含む、請求項1に記載の方法。
  8. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間が警告しきい値を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させるステップと、
    待ち時間が中断しきい値を上回る場合、通常状態にある前記少なくとも1つのタグを中断前状態に遷移させるステップとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更するステップはさらに、
    待ち時間が中断しきい値を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを中断前状態に遷移させるステップと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断前状態にある前記少なくとも1つのタグを中断状態に遷移させるステップと、
    予め定められた期間の後、中断状態にある前記少なくとも1つのタグを中断後状態に遷移させるステップと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断後状態にある前記少なくとも1つのタグを中断状態に遷移させるステップとを含む、請求項1に記載の方法。
  9. 前記少なくとも1つのタグの状態を変更するステップは、
    待ち時間が警告しきい値未満である場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させるステップと、
    待ち時間が中断しきい値未満である場合、中断前状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させるステップとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更するステップはさらに、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値を上回り、かつ中断しきい値未満である場合、中断後状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させるステップと、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値未満である場合、中断後状態にある前記少なくとも1つのタグを通常状態に遷移させるステップとを含む、請求項1に記載の方法。
  10. 前記少なくとも1つのタグの状態を変更するステップは、前記少なくとも1つのタグが状態を変化させたことを示すために、少なくとも1人のユーザに通知を提供するステップをさらに含む、請求項1に記載の方法。
  11. ネットワークを通してウェブページのためにタグを管理するためのシステムであって、
    サーバ装置からウェブページを要求することを含むアクションを行なうように構成されたクライアント装置と、
    アクションを行なうように構成された制御サーバ装置とを含み、前記アクションは、
    少なくとも1つのウェブページに関連付けられた、モニタリングすべき少なくとも1つのタグを判断することを含み、前記少なくとも1つのタグは、複数の状態のうちの1つの状態にあり、前記アクションはさらに、
    前記少なくとも1つのタグをモニタリングするための待ち時間を判断することと、
    待ち時間および前記少なくとも1つのタグの状態の判断が、状態に対する変更を示す場合、前記少なくとも1つのタグの状態を別の状態に変更することとを含み、前記システムはさらに、
    アクションを行なうように構成された少なくとも1つのモニタリングサーバ装置を含み、前記アクションは、
    前記少なくとも1つのタグの状態に少なくとも基づいて、前記少なくとも1つのタグをモニタリングすることを含み、モニタリングは、前記少なくとも1つのウェブページについての各要求に対して非同期であり、前記システムはさらに、
    アクションを行なうように構成された少なくとも1つのデプロイメントサーバ装置を含み、前記アクションは、
    前記少なくとも1つのタグの現在の状態の判断がデプロイメントを肯定的に示し、かつ、前記少なくとも1つのウェブページが要求された場合、前記少なくとも1つのタグを、クライアント装置で、関連付けられた前記少なくとも1つのウェブページでデプロイメントすることを含む、システム。
  12. 前記複数の状態は、通常状態と、フラグ付き状態と、少なくとも1つの中断状態とを少なくとも含む、請求項11に記載のシステム。
  13. 前記少なくとも1つのタグをデプロイメントすることは、
    前記少なくとも1つのタグが通常状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにすることと、
    前記少なくとも1つのタグがフラグ付き状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにすることと、
    前記少なくとも1つのタグが中断状態にある場合、前記少なくとも1つのタグのデプロイメントを阻止することとをさらに含む、請求項11に記載のシステム。
  14. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間結果が、連続する時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、重度しきい値を上回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させることをさらに含む、請求項11に記載のシステム。
  15. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間結果が、連続する非時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の非時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、軽度しきい値を下回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させることをさらに含む、請求項11に記載のシステム。
  16. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が、前記少なくとも1つのタグについての時間待ちイベントをもたらす場合において、
    待ち時間結果が時間待ちイベントのしきい値数を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    待ち時間結果が時間待ちイベントの別のしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    予め定められた期間の後、第1の中断状態にある前記少なくとも1つのタグを第2の中断状態に遷移させること、および
    待ち時間結果が時間待ちイベントのさらに別のしきい値数を上回る場合、第2の中断状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    を含むさらなるアクションを行なうことをさらに含む、請求項11に記載のシステム。
  17. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が、前記少なくとも1つのタグについての非時間待ちイベントをもたらす場合において、
    非時間待ちイベントが非時間待ちイベントのしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させること、および
    非時間待ちイベントが非時間待ちイベントの別のしきい値数を上回る場合、中断状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    を含むさらなるアクションを行なうことをさらに含む、請求項11に記載のシステム。
  18. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が警告しきい値を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることと、
    待ち時間が中断しきい値を上回る場合、通常状態にある前記少なくとも1つのタグを中断前状態に遷移させることとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更することはさらに、
    待ち時間が中断しきい値を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを中断前状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断前状態にある前記少なくとも1つのタグを中断状態に遷移させることと、
    予め定められた期間の後、中断状態にある前記少なくとも1つのタグを中断後状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断後状態にある前記少なくとも1つのタグを中断状態に遷移させることとを含む、請求項11に記載のシステム。
  19. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が警告しきい値未満である場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させることと、
    待ち時間が中断しきい値未満である場合、中断前状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更することはさらに、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値を上回り、かつ中断しきい値未満である場合、中断後状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値未満である場合、中断後状態にある前記少なくとも1つのタグを通常状態に遷移させることとを含む、請求項11に記載のシステム。
  20. 制御サーバ装置は、
    前記少なくとも1つのタグがデプロイメントを阻止されている場合、
    阻止されたタグの実行不能なコピーである不活性タグを生成すること、および
    阻止されたタグに関する統計情報を集めるために、不活性タグを少なくとも1つのデプロイメントサーバに提供すること、
    を含むさらなるアクションを行なうこと、を含むさらなるアクションを行なうように構成されている、請求項11に記載のシステム。
  21. 前記少なくとも1つのタグの状態を変更することは、前記少なくとも1つのタグが状態を変化させたことを示すために、少なくとも1人のユーザに通知を提供することをさらに含む、請求項11に記載のシステム。
  22. ネットワークを通してウェブページのためにタグを管理するための命令を含む、プロセッサ読取可能な非一時的記憶媒体であって、プロセッサによる命令の実行がアクションを可能にし、前記アクションは、
    少なくとも1つのウェブページに関連付けられた、モニタリングすべき少なくとも1つのタグを判断することを含み、前記少なくとも1つのタグは、複数の状態のうちの1つの状態にあり、前記アクションはさらに、
    前記少なくとも1つのタグの状態に少なくとも基づいて、前記少なくとも1つのタグをモニタリングすることを含み、モニタリングは、前記少なくとも1つのウェブページについての各要求に対して非同期であり、前記アクションはさらに、
    前記少なくとも1つのタグをモニタリングするための待ち時間を判断することと、
    待ち時間および前記少なくとも1つのタグの状態の判断が、状態に対する変更を示す場合、前記少なくとも1つのタグの状態を別の状態に変更することと、
    前記少なくとも1つのタグの現在の状態の判断がデプロイメントを肯定的に示し、かつ、前記少なくとも1つのウェブページが要求された場合、前記少なくとも1つのタグを、関連付けられた前記少なくとも1つのウェブページでデプロイメントすることとを含む、媒体。
  23. 前記少なくとも1つのタグをデプロイメントすることは、
    前記少なくとも1つのタグが通常状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにすることと、
    前記少なくとも1つのタグがフラグ付き状態にある場合、前記少なくとも1つのタグのデプロイメントをイネーブルにすることと、
    前記少なくとも1つのタグが中断状態にある場合、前記少なくとも1つのタグのデプロイメントを阻止することとをさらに含む、請求項22に記載の媒体。
  24. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間結果が、連続する時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、重度しきい値を上回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させることをさらに含む、請求項22に記載の媒体。
  25. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間結果が、連続する非時間待ちイベントのしきい値数を上回ること、
    待ち時間結果が、所与の期間内の非時間待ちイベントのしきい値数を上回ること、および
    待ち時間結果が、軽度しきい値を下回ること、
    のうちの少なくとも1つを待ち時間がもたらす場合、第1の状態にある前記少なくとも1つのタグを第2の状態に遷移させることをさらに含む、請求項22に記載の媒体。
  26. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が、前記少なくとも1つのタグについての時間待ちイベントをもたらす場合において、
    待ち時間結果が時間待ちイベントのしきい値数を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    待ち時間結果が時間待ちイベントの別のしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    予め定められた期間の後、第1の中断状態にある前記少なくとも1つのタグを第2の中断状態に遷移させること、および
    待ち時間結果が時間待ちイベントのさらに別のしきい値数を上回る場合、第2の中断状態にある前記少なくとも1つのタグを第1の中断状態に遷移させること、
    を含むさらなるアクションを行なうことをさらに含む、請求項22に記載の媒体。
  27. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が、前記少なくとも1つのタグについての非時間待ちイベントをもたらす場合において、
    非時間待ちイベントが非時間待ちイベントのしきい値数を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させること、および
    非時間待ちイベントが非時間待ちイベントの別のしきい値数を上回る場合、中断状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させること、
    を含むさらなるアクションを行なうことをさらに含む、請求項22に記載の媒体。
  28. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が警告しきい値を上回る場合、通常状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることと、
    待ち時間が中断しきい値を上回る場合、通常状態にある前記少なくとも1つのタグを中断前状態に遷移させることとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更することはさらに、
    待ち時間が中断しきい値を上回る場合、フラグ付き状態にある前記少なくとも1つのタグを中断前状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断前状態にある前記少なくとも1つのタグを中断状態に遷移させることと、
    予め定められた期間の後、中断状態にある前記少なくとも1つのタグを中断後状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて中断しきい値を上回る場合、中断後状態にある前記少なくとも1つのタグを中断状態に遷移させることとを含む、請求項22に記載の媒体。
  29. 前記少なくとも1つのタグの状態を変更することは、
    待ち時間が警告しきい値未満である場合、フラグ付き状態にある前記少なくとも1つのタグを通常状態に遷移させることと、
    待ち時間が中断しきい値未満である場合、中断前状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることとをさらに含み、中断しきい値は警告しきい値よりも大きく、前記変更することはさらに、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値を上回り、かつ中断しきい値未満である場合、中断後状態にある前記少なくとも1つのタグをフラグ付き状態に遷移させることと、
    待ち時間が複数の連続するモニタリングの試みについて警告しきい値未満である場合、中断後状態にある前記少なくとも1つのタグを通常状態に遷移させることとを含む、請求項22に記載の媒体。
  30. 前記少なくとも1つのタグの状態を変更することは、前記少なくとも1つのタグが状態を変化させたことを示すために、少なくとも1人のユーザに通知を提供することをさらに含む、請求項22に記載の媒体。
JP2015523220A 2012-07-20 2013-07-17 向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム Active JP6262229B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/554,500 2012-07-20
US13/554,500 US8706871B2 (en) 2012-07-20 2012-07-20 Tag latency monitoring and control system for enhanced web page performance
PCT/US2013/050867 WO2014015025A1 (en) 2012-07-20 2013-07-17 Tag latency monitoring and control system for enhanced web page performance

Publications (3)

Publication Number Publication Date
JP2015530639A true JP2015530639A (ja) 2015-10-15
JP2015530639A5 JP2015530639A5 (ja) 2016-07-07
JP6262229B2 JP6262229B2 (ja) 2018-01-17

Family

ID=49947504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015523220A Active JP6262229B2 (ja) 2012-07-20 2013-07-17 向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム

Country Status (6)

Country Link
US (3) US8706871B2 (ja)
EP (1) EP2875444B1 (ja)
JP (1) JP6262229B2 (ja)
CN (1) CN104584000B (ja)
RU (1) RU2015101336A (ja)
WO (1) WO2014015025A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9723057B2 (en) 2014-09-25 2017-08-01 Oracle International Corporation Reducing web page load latency by scheduling sets of successive outgoing HTTP calls
US9906423B2 (en) 2012-07-20 2018-02-27 Blue Kai, Inc. Tag latency monitoring and control system for enhanced web page performance
US10666533B2 (en) 2012-07-20 2020-05-26 Oracle International Corporation Tag latency monitoring and control system for enhanced web page performance

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140075026A1 (en) * 2012-09-13 2014-03-13 Lung Cheng Technology Ltd. Cloud database management method
US20140280480A1 (en) * 2013-03-15 2014-09-18 Edgecast Networks, Inc. Dynamic Tag Management for Optimizing Content Delivery
US9037643B2 (en) 2013-03-15 2015-05-19 Edgecast Networks, Inc. Dynamic tag management for optimizing content delivery
US9552438B2 (en) * 2013-05-17 2017-01-24 Paypal, Inc. Systems and methods for responsive web page delivery based on network bandwidth
CN104133686B (zh) * 2014-08-06 2017-06-27 浪潮通用软件有限公司 一种可快速模块化配置的web界面构建方法
US10580032B2 (en) 2014-09-25 2020-03-03 Oracle International Corporation Evaluating page content to determine user interest
US11379776B2 (en) * 2015-07-27 2022-07-05 Innovian Corporation System and method for validating data
US10977597B2 (en) * 2015-07-27 2021-04-13 Innovian Corporation System and method for validating data
US10315116B2 (en) * 2015-10-08 2019-06-11 Zynga Inc. Dynamic virtual environment customization based on user behavior clustering
US11037190B2 (en) * 2017-11-09 2021-06-15 Microsoft Technology Licensing, Llc Web page performance improvement system
US10579446B2 (en) 2018-04-13 2020-03-03 Microsoft Technology Licensing, Llc Per-request event detection to improve request-response latency

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003157173A (ja) * 2001-11-20 2003-05-30 Nec Corp レスポンス計測における計測モジュールを配布するアクセス管理システム、及びアクセス管理プログラム
JP2004206634A (ja) * 2002-12-26 2004-07-22 Osaka Gas Co Ltd 監視方法、稼動監視装置、監視システム及びコンピュータプログラム
JP2006195709A (ja) * 2005-01-13 2006-07-27 Hitachi Ltd Webサービスシステム
US20070192701A1 (en) * 2006-01-17 2007-08-16 International Business Machines Corporation Managing portal response times
US20110083031A1 (en) * 2009-10-07 2011-04-07 Yahoo! Inc. System and method for slow ad detection

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5787254A (en) * 1997-03-14 1998-07-28 International Business Machines Corporation Web browser method and system for display and management of server latency
US6192382B1 (en) 1997-09-24 2001-02-20 Mediaone Group, Inc. Method and system for web site construction using HTML fragment caching
US6992983B1 (en) * 2000-05-05 2006-01-31 Macromedia, Inc. Bandwidth detection in a heterogeneous network with parallel and proxy modes
US7600014B2 (en) 2000-11-16 2009-10-06 Symantec Corporation Method and system for monitoring the performance of a distributed application
US7440953B2 (en) * 2001-01-25 2008-10-21 Content Directions, Inc. Apparatus, method and system for directory quality assurance
US20020184363A1 (en) * 2001-04-20 2002-12-05 Steven Viavant Techniques for server-controlled measurement of client-side performance
US6990498B2 (en) * 2001-06-15 2006-01-24 Sony Corporation Dynamic graphical index of website content
JP2004020663A (ja) 2002-06-12 2004-01-22 Ricoh Co Ltd プリント装置
US6792460B2 (en) * 2002-10-02 2004-09-14 Mercury Interactive Corporation System and methods for monitoring application server performance
US7194531B2 (en) * 2002-12-02 2007-03-20 International Business Machines Corporation System and method for determining the availability of a web page
US20050197164A1 (en) * 2004-03-08 2005-09-08 Chan Brian K.K. Method for providing services via advertisement terminals
US20070271375A1 (en) * 2004-09-27 2007-11-22 Symphoniq Corporation Method and apparatus for monitoring real users experience with a website capable of using service providers and network appliances
JP2008521100A (ja) 2004-11-17 2008-06-19 ザ リージェンツ オブ ザ ユニバーシティ オブ カリフォルニア ウェブページを生成するシステム及び方法
US7536417B2 (en) * 2006-05-24 2009-05-19 Microsoft Corporation Real-time analysis of web browsing behavior
US9231858B1 (en) * 2006-08-11 2016-01-05 Dynatrace Software Gmbh Completeness detection of monitored globally distributed synchronous and asynchronous transactions
US7634562B2 (en) 2006-10-27 2009-12-15 Cyscape, Inc. Method and apparatus for determining application responsiveness over a network
US7644315B2 (en) * 2006-10-30 2010-01-05 Google Inc. Diagnostics and error reporting for common tagging issues
US8775603B2 (en) 2007-05-04 2014-07-08 Sitespect, Inc. Method and system for testing variations of website content
CN101359394A (zh) * 2007-07-31 2009-02-04 北京清大世纪教育投资顾问有限公司 网络远程教育平台测评监控方法
US20090106099A1 (en) * 2007-10-23 2009-04-23 Yahoo! Inc. Personal targeted advertising
US8356247B2 (en) * 2008-12-16 2013-01-15 Rich Media Worldwide, Llc Content rendering control system and method
US8078691B2 (en) * 2009-08-26 2011-12-13 Microsoft Corporation Web page load time prediction and simulation
US20110197124A1 (en) 2010-02-05 2011-08-11 Bryan Eli Garaventa Automatic Creation And Management Of Dynamic Content
US9430581B2 (en) * 2010-06-02 2016-08-30 Paypal, Inc. Method and system for detecting slow page load
US20120144288A1 (en) 2010-12-02 2012-06-07 International Business Machines Corporation Web page content display priority and bandwidth management
US20120143693A1 (en) * 2010-12-02 2012-06-07 Microsoft Corporation Targeting Advertisements Based on Emotion
CN102316536B (zh) * 2011-09-16 2018-01-12 中兴通讯股份有限公司 一种调整网页内容的方法及网关
CN102347864B (zh) * 2011-11-02 2013-10-30 网宿科技股份有限公司 基于内容分发网络的服务质量监控系统
US8706871B2 (en) 2012-07-20 2014-04-22 Blue Kai, Inc. Tag latency monitoring and control system for enhanced web page performance
US9015348B2 (en) 2013-07-19 2015-04-21 Limelight Networks, Inc. Dynamically selecting between acceleration techniques based on content request attributes
US9723057B2 (en) 2014-09-25 2017-08-01 Oracle International Corporation Reducing web page load latency by scheduling sets of successive outgoing HTTP calls

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003157173A (ja) * 2001-11-20 2003-05-30 Nec Corp レスポンス計測における計測モジュールを配布するアクセス管理システム、及びアクセス管理プログラム
JP2004206634A (ja) * 2002-12-26 2004-07-22 Osaka Gas Co Ltd 監視方法、稼動監視装置、監視システム及びコンピュータプログラム
JP2006195709A (ja) * 2005-01-13 2006-07-27 Hitachi Ltd Webサービスシステム
US20070192701A1 (en) * 2006-01-17 2007-08-16 International Business Machines Corporation Managing portal response times
US20110083031A1 (en) * 2009-10-07 2011-04-07 Yahoo! Inc. System and method for slow ad detection

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9906423B2 (en) 2012-07-20 2018-02-27 Blue Kai, Inc. Tag latency monitoring and control system for enhanced web page performance
US10666533B2 (en) 2012-07-20 2020-05-26 Oracle International Corporation Tag latency monitoring and control system for enhanced web page performance
US9723057B2 (en) 2014-09-25 2017-08-01 Oracle International Corporation Reducing web page load latency by scheduling sets of successive outgoing HTTP calls

Also Published As

Publication number Publication date
CN104584000B (zh) 2020-03-20
WO2014015025A1 (en) 2014-01-23
RU2015101336A (ru) 2016-09-10
JP6262229B2 (ja) 2018-01-17
US9906423B2 (en) 2018-02-27
EP2875444B1 (en) 2018-09-19
CN104584000A (zh) 2015-04-29
EP2875444A4 (en) 2016-03-30
EP2875444A1 (en) 2015-05-27
US8930533B2 (en) 2015-01-06
US20170366432A9 (en) 2017-12-21
US20140189113A1 (en) 2014-07-03
US8706871B2 (en) 2014-04-22
US20140025807A1 (en) 2014-01-23
US20150229553A1 (en) 2015-08-13

Similar Documents

Publication Publication Date Title
JP6262229B2 (ja) 向上したウェブページ性能のためのタグ待ち時間モニタリングおよび制御システム
US10678671B2 (en) Triggering the increased collection and distribution of monitoring information in a distributed processing system
US9569233B2 (en) Elastic offload of prebuilt traffic management system component virtual machines
US11568447B2 (en) Tunable statistical IDs
US9590879B2 (en) Cloud application scaling framework
US9417907B1 (en) Impact management of system tasks
US9400607B1 (en) Stateless processing of replicated state for distributed storage systems
CA2901042C (en) Non-precise garbage collection in non-cooperative systems
US9053114B1 (en) Extensible data path
US10162692B2 (en) Rainbow event drop detection system
WO2015183705A1 (en) Assisting application classification using predicted subscriber behavior
US10666533B2 (en) Tag latency monitoring and control system for enhanced web page performance
US9081611B1 (en) System for iteratively identifying available next higher priority tracks when identified track matching the task's native track priority is unavailable
US11768720B2 (en) Auto pause incident notification
RU2763000C2 (ru) Мониторинг задержки тега и система управления для повышения производительности веб-страницы
Tharmakulasingam et al. Command-driven Decentralized Event Processing Approach for Monitoring Networked Android & Windows Devices

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160516

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160516

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170404

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170704

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171213

R150 Certificate of patent or registration of utility model

Ref document number: 6262229

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250