• ポートフォリオ機能


ポートフォリオを新規に作成して保存
既存のポートフォリオに追加保存

  • この表をプリントする
PDF PDFをダウンロード
審決分類 審判 査定不服 2項進歩性 特許、登録しない(前置又は当審拒絶理由) G06F
管理番号 1337625
審判番号 不服2016-16313  
総通号数 220 
発行国 日本国特許庁(JP) 
公報種別 特許審決公報 
発行日 2018-04-27 
種別 拒絶査定不服の審決 
審判請求日 2016-11-01 
確定日 2018-02-22 
事件の表示 特願2012- 95045「流量制御機能を有するシステム」拒絶査定不服審判事件〔平成25年10月28日出願公開、特開2013-222407〕について、次のとおり審決する。 
結論 本件審判の請求は、成り立たない。 
理由
第1 手続の経緯

本件審判請求に係る出願(以下,「本願」という。)は,平成24年4月18日の出願であって,その手続の経緯は以下のとおりである。

平成26年11月14日 :出願審査請求書の提出
平成27年 6月 3日付け :拒絶理由の通知
平成27年 7月24日 :意見書,手続補正書の提出
平成28年 2月 1日付け :拒絶理由(最後)の通知
平成28年 3月23日 :意見書,手続補正書の提出
平成28年 8月 9日付け :平成28年3月23日の手続補正に
ついての補正却下の決定,拒絶査定
平成28年11月 1日 :審判請求書,手続補正書の提出
平成29年 1月25日 :前置報告
平成29年 9月22日付け :拒絶理由の通知(当審)
平成29年10月18日 :意見書,手続補正書の提出

第2 本願発明

本願の請求項に係る発明は,上記平成29年10月18日付け手続補正により補正された特許請求の範囲の請求項1に記載されたとおりのものであると認められるところ,その請求項1に係る発明(以下,「本願発明」という。)は,以下のとおりのものである。

「 【請求項1】
サービスに対する複数の処理待ちデータを保持するキューと,
前記キューから提供される前記処理待ちデータを同時に処理する複数のスレッドと,
を有し,
前記スレッドの個数は前記サービスに対するリクエストの数量及び/又は頻度に応じて,変動するように設定され,前記キューの長さは前記スレッドの個数に基づき規定される流量制御システム。」

第3 引用例

1 引用例1に記載されている技術的事項および引用発明

(1)本願の出願前に頒布又は電気通信回線を通じて公衆に利用可能となり,当審による平成29年9月22日付けの拒絶理由通知において引用された,特開2006-221516号公報(平成18年8月24日出願公開,以下,「引用例1」という。)には,以下の技術的事項が記載されている。
(当審注:下線は,参考のために当審で付与したものである。)

A 「【0007】
まず,図1に示すブロック図を用いて,本発明の実施形態に係る通信サーバ設定値決定装置X(以下,単に決定装置Xという)の概略構成について説明する。
前記決定装置Xは,一般的なパーソナルコンピュータ等の計算機であり,インターネット等のネットワーク9(所定の通信回線の一例)を介して複数の端末装置(不図示)から受信される処理要求(例えば,所望のコンテンツの送信要求等)に応じて処理を実行するサーバ装置Yについて,複数の前記処理要求が受信された場合の前記サーバ装置Yにおける前記処理要求の最大並列処理数の設定値と,最大待ち行列数の設定値とを決定するための装置である。従って,前記端末装置とネットワーク接続されて実際のシステム運用がなされる前に,前記サーバ装置Yとネットワーク接続されて所定のテスト通信を行うものであり,前記最大並列処理数と前記最大待ち行列数の各設定値が決定され,その設定値が前記サーバ装置Yに設定された後のシステム運用段階では,前記決定装置Xと前記サーバ装置Yとの間で通信は行われない。
…(中略)…
【0009】
次に,図2に示すフローチャートを用いて,前記決定装置Xが実行する前記サーバ装置Yにおける前記最大並列処理数及び前記最大待ち行列数の各設定値を決定する処理の手順について説明する。本処理は,前述したように,前記演算部1が前記サーバ設定値決定プログラムを実行することにより具現される。
まず,前記決定装置Xは,所定の変数iを初期化(1を代入)した上で(S1),その変数iの値を順次インクリメントしながら(S4)その値が予め定められた設定値N_(max)を超えるまで以下に示すステップS2及びS3の処理を繰り返し(即ち,N_(max)回)実行する。
まず,ステップS2では,前記決定装置Xは,前記ネットワーク9を介して前記サーバ装置Yに対し,前記通信制御部3を通じてi個の前記処理要求をスレッド処理やマルチタスク処理等により同時に送信するとともに,その応答を前記サーバ装置Yから受信する(S2)。本処理は,前記要求通信処理部11により具現される。
ここで,前記設定値N_(max)は,前記サーバ装置Yが並列処理可能な数(例えば,前記サーバ装置YにおけるOS等の制約上の最大数,或いは経験上現実的と考えられる最大の並列処理数)に設定されている。従って,このステップS2では,前記サーバ装置Yが並列処理可能な数(i≦N_(max)であるので)の1又は複数の前記処理要求が同時に送信される。これにより,前記サーバ装置Yでは,ステップS2において同時送信された前記処理要求各々に応じた処理が並列処理されることになる。なお,前記サーバ装置Yは,その並行処理数が特に制限されていない状態,或いは前記設定値N_(max)以上の範囲で制限されている状態であることはいうまでもない。
また,前記処理要求の同時送信とは,実質的な同時送信をいうものであり,スレッド処理におけるジョブスケジューリングや前記ネットワーク9におけるトークン衝突の制約等により送信タイミングが多少ずれることも同時送信に含まれる概念である。」

B 「【0011】
次に,ステップS3では,前記決定装置Xは,ステップS2における全ての前記処理要求の送信からそれらの応答の受信完了までの時間である応答時間を測定し,その測定結果を前記処理要求の同時送信数に対応させて前記記憶部2に記憶させる(S3)。本処理は,前記応答時間測定処理部12により具現される。
そして,前記決定装置Xは,前記変数iをインクリメントしながら(S4),即ち,同時送信する前記処理要求の数を変えながら,前記変数iがN_(max)以下であると判別(S5)されている間,1又は複数の前記処理要求の同時送信及びその応答の受信を行う処理(S2)と,その処理ごとに前記応答時間を測定する処理(S3,応答時間測定処理の一例)とを複数回(N_(max)回)実行する(S2,S4,S5が要求通信処理の一例)。
なお,図2に示すフローチャートでは,同時送信する前記処理要求の個数ごとに1回ずつステップS2及びS3の処理を行う例を示しているが,これに限るものでなく,S1?S5の処理を同1条件下で,或いは異なる条件下(例えば,前記処理要求の内容が異なる条件下)で複数回繰り返すことも考えられる。この場合,以降の処理で用いる前記応答時間として,前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いればよい。
【0012】
次に,前記決定装置Xは,ステップS3(応答時間測定処理)の測定結果に基づいて,前記サーバ装置Yにおける並列処理数ごとの処理効率を推定する(処理効率推定処理)。本処理は,前記処理効率推定処理部13により具現される。
ここでは,推定する前記処理効率として,例えば,前記サーバ装置Yにおける前記処理要求に応じた処理の並列処理数ごと(即ち,前記処理要求の同時送信数iごと)に,1つの前記処理要求当たりの応答時間(即ち,ステップS3で得られた前記応答時間を,同時送信した前記処理要求の数iで割った値,以下,単位応答時間T_(P)という)を求める。もちろん,その時間を正規化する等により前記単位応答時間T_(P)を表す指標を求めるようにしてもよい。
【0013】
次に,前記決定装置Xは,ステップS6で推定された前記処理効率に基づいて,前記サーバ装置Yにおける前記最大並列処理数の設定値を決定する(S7,最大並列処理数決定処理)。本処理は,前記最大並列処理数決定部14により具現される。
図3は,前記サーバ装置Yにおける並列処理数(即ち,前記処理要求の同時送信数:横軸)とステップS6の処理により推定された前記サーバ装置Yの処理効率の一例である前記単位応答時間T_(P)(1要求当たり応答時間:縦軸)との関係を表すグラフである。なお,横軸は対数軸である。
図3に示すように,前記並列処理数が少なすぎる(例えば1)状態では,処理のオーバーヘッド等の影響により,前記単位応答時間T_(P)が長くなる(即ち,処理効率が悪い)。そして,前記並列処理数が増えるにつれて,徐々に処理効率が向上する(前記単位応答時間T_(P)が短くなる)が,前記並列処理数が多すぎると,前記サーバ装置Yの処理効率が再び低下する(前記単位応答時間T_(P)が長くなる)。
従って,前記決定装置Xは,ステップS7の処理において,前記処理効率が最も高くなるときの前記サーバ装置Yにおける並列処理数(即ち,前記処理要求の同時送信数)を,前記サーバ装置Yにおける前記最大並列処理数の設定値N_(S)に決定する。図3に示す例では,前記最大並列処理数の設定値N_(S)は「5」となる。
もちろん,前記サーバ装置Yにおける他の処理用に余裕を持たせる等のために,前記処理効率が最も高くなるときの並列処理数よりもあえて若干少ない数を前記最大並列処理数の設定値N_(S)とすることも考えられる。」

C 「【0014】
次に,前記決定装置Xは,前記サーバ装置Yの設計条件として与えられる前記処理要求に対する応答許容時間T_(spec)と,ステップS7の処理(最大並列処理数決定処理)により決定された前記最大並列処理数の設定値N_(S)と,ステップS7での推定結果である前記単位応答時間T_(P)(処理効率の一例)のうち前記最大並列処理数の設定値N_(S)に対応するものである最小単位応答時間T_(PN)(図3参照)とに基づいて,前記サーバ装置Yにおける前記処理要求の最大待ち行列数の設定値q_(S)を決定し(S8,最大待ち行列数決定処理),その後処理を終了させる。本処理は,前記最大待ち行列数決定部15により具現される。
本処理で決定された前記最大並列処理数の設定値N_(S)及び前記最大待ち行列数の設定値q_(S)は,前記記憶部2への記憶や前記表示部4への表示がなされ,別途,その設定値が前記サーバ装置Yに設定される。或いは,当該決定装置Xから前記サーバ装置Yに前記ネットワーク9を通じて送信し,これに応じて前記サーバ装置Yにおいて自動設定されるよう構成してもよい。
ここで,前記サーバ装置YにおいてN_(S)個の前記処理要求に応じた処理(以下,1個の前記処理要求に対応する処理をジョブという)をスレッド処理やマルチタスク処理等により並列処理した場合,同一のジョブ(ステップS2で送信した前記処理要求に対応するジョブ或いはこれと同等の演算負荷のジョブ)が一様に進行していると仮定すると,ある時点でのN_(S)個のスレッド或いはタスク各々における前記ジョブの残処理時間は,残処理時間の少ないものから順に(T_(PN)/N_(S),2T_(PN)/N_(S),3T_(PN)/N_(S),…,T_(PN))であるといえる。その結果,前記サーバ装置Yは,時間(T_(PN)/N_(S))の経過ごとに1つの前記ジョブを処理することになる。これは,前記サーバ装置Yにおける待ち行列内にある前記処理要求のジョブは,時間(T_(PN)/N_(S))の経過ごとに1つのジョブが処理されていくことを表す。従って,前記サーバ装置Yにおける最大待ち行列数をqとすると,その待ち行列の最後尾に加えられた前記処理要求のジョブがその待ち行列内に滞在する時間である最大滞在時間T_(WMAX)は,次の(1)式で表される。
T_(WMAX) = q・T_(PN)/N_(S) …(1)
従って,前記端末装置が前記サーバ装置Yに対して前記処理要求を送信したときの最大の応答待ち時間は,1つのジョブの処理に要する時間T_(PN)に前記最大滞在時間T_(WMAX)を加えた時間となるので,次の(2)式を満足する最大待ち行列数qを前記最大待ち行列数の設定値q_(S)として設定すれば,前記応答許容時間T_(spec)を保証できる。
T_(spec) ≧ T_(PN)+q・T_(PN)/N_(S) …(2)
この(2)式を変形すると,次の(3)式になる。
q ≦ N_(S)(T_(spec)-T_(PN))/T_(PN) …(3)
【0015】
ここで,(3)式(或いは(2)式)を満たすq(整数)の最小値,即ち,左辺と右辺とが等しくなるようなq(qが小数となるときは,小数点第1位以下を切り捨てた整数)を前記最大待ち行列数の設定値q_(S)として設定すれば,前記応答許容時間T_(spec)を保証できる。即ち,次の(4)式を満たすq_(S)を前記最大待ち行列数の設定値とする。
q_(S) ≒ N_(S)(T_(spec)-T_(PN))/T_(PN) …(4)
この(4)式を満たすq_(S)を前記最大待ち行列数の設定値とするということは,即ち,前記サーバ装置YによりステップS7(最大並列処理数決定処理)で決定された前記最大並列処理数の設定値N_(S)の下で,その設定値N_(S)に対応する前記最小単位応答時間T_(PN)(1つの前記処理要求当たりの応答時間)で処理がなされたとしたときに,最大の応答時間が前記応答許容時間T_(spec)と等しく(或いはほぼ等しく)なるように前記最大待ち行列数の設定値q_(S)を決定するということである。
例えば,前述のステップS6で得られた前記最小単位応答時間T_(PN)が2.25sec,ステップS7で得られた前記最大並列処理数の設定値N_(S)が5であり,前記応答許容時間T_(spec)が7secである場合,(4)式に従えば前記最大待ち行列数の設定値q_(S)は10となる。
これにより,前記応答許容時間T_(spec)を満たす範囲で,最大の前記最大待ち行列数の設定値q_(S)が決定され,前記処理要求の受け付が拒否される頻度が極力少なくなるような決定がなされる。」

(2)ここで,引用例1に記載されている事項を検討する。

ア 上記Aの段落【0007】の「前記決定装置Xは,一般的なパーソナルコンピュータ等の計算機であり,インターネット等のネットワーク9(所定の通信回線の一例)を介して複数の端末装置(不図示)から受信される処理要求(例えば,所望のコンテンツの送信要求等)に応じて処理を実行するサーバ装置Yについて,複数の前記処理要求が受信された場合の前記サーバ装置Yにおける前記処理要求の最大並列処理数の設定値と,最大待ち行列数の設定値とを決定するための装置である。」との記載,上記Cの段落【0014】の「ここで,前記サーバ装置YにおいてN_(S)個の前記処理要求に応じた処理(以下,1個の前記処理要求に対応する処理をジョブという)をスレッド処理やマルチタスク処理等により並列処理した場合,」との記載からすると,「サーバ装置」は,ネットワークを介して複数の端末装置から受信される処理要求(例えば,所望のコンテンツの送信要求等)に応じて,複数の「スレッド」で処理を実行する態様が読み取れ,また,「決定装置」はそのような「サーバ装置」における処理要求に対する「スレッド」の「最大並列処理数」の設定値と,「最大待ち行列数」の設定値とを決定することが読み取れるから,引用例1には,
“ネットワークを介して複数の端末装置から受信される処理要求に応じて,複数のスレッドで処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求に対するスレッドの最大並列処理数の設定値と,最大待ち行列数の設定値とを決定するための決定装置”
が記載されていると解される。

イ 上記Bの段落【0011】の「この場合,以降の処理で用いる前記応答時間として,前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いればよい。」との記載,段落【0012】の「次に,前記決定装置Xは,ステップS3(応答時間測定処理)の測定結果に基づいて,前記サーバ装置Yにおける並列処理数ごとの処理効率を推定する(処理効率推定処理)。」との記載からすると,「決定装置」は「サーバ装置」の「応答時間測定処理」の測定結果に基づいて,「サーバ装置」における「並列処理数」ごとの「処理効率」を推定するものであって,「応答時間」は,処理要求の同時送信数ごとの「平均応答時間」や「最大応答時間」等を使用できることが読み取れ,また,上記アでの検討より,「サーバ装置」は,処理要求に応じて複数の「スレッド」で処理を実行する態様を含むことから,引用例1には,“決定装置”が
“前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて,前記サーバ装置におけるスレッドの並列処理数ごとの処理効率を推定”すること
が記載されていると解される。

ウ 上記Bの段落【0013】の「次に,前記決定装置Xは,ステップS6で推定された前記処理効率に基づいて,前記サーバ装置Yにおける前記最大並列処理数の設定値を決定する(S7,最大並列処理数決定処理)。」との記載,同段落の「従って,前記決定装置Xは,ステップS7の処理において,前記処理効率が最も高くなるときの前記サーバ装置Yにおける並列処理数(即ち,前記処理要求の同時送信数)を,前記サーバ装置Yにおける前記最大並列処理数の設定値N_(S)に決定する。」との記載からすると,「サーバ装置」における「並列処理数」ごとの「処理効率」に基づいて,「決定装置」は「サーバ装置」における「最大並列処理数」の「設定値N_(S)」を決定することが読み取れるから,引用例1には,“決定装置”が
“前記処理効率が最も高くなるときの前記サーバ装置におけるスレッドの並列処理数を,前記サーバ装置における前記最大並列処理数の設定値N_(S)に決定”すること
が記載されていると解される。

エ 上記Cの段落【0014】の「次に,前記決定装置Xは,前記サーバ装置Yの設計条件として与えられる前記処理要求に対する応答許容時間T_(spec)と,ステップS7の処理(最大並列処理数決定処理)により決定された前記最大並列処理数の設定値N_(S)と,ステップS7での推定結果である前記単位応答時間T_(P)(処理効率の一例)のうち前記最大並列処理数の設定値N_(S)に対応するものである最小単位応答時間T_(PN)(図3参照)とに基づいて,」との記載からすると,「決定装置」は,「サーバ装置」の設計条件として与えられる処理要求に対する「応答許容時間T_(spec)」と,最大並列処理数決定処理により決定された「最大並列処理数」の「設定値N_(S)」と,最大並列処理数決定処理での推定結果である単位応答時間T_(P)のうち「最大並列処理数」の「設定値N_(S)」に対応するものである「最小単位応答時間T_(PN)」とを用いることが読み取れる。
そして,同段落の「前記サーバ装置Yにおける前記処理要求の最大待ち行列数の設定値q_(S)を決定し(S8,最大待ち行列数決定処理),その後処理を終了させる。」との記載からすると,「決定装置」は,「応答許容時間T_(spec)」と,「最大並列処理数」の「設定値N_(S)」と,「最小単位応答時間T_(PN)」とを用いて,「サーバ装置」における処理要求の「最大待ち行列数」の「設定値q_(S)」を決定することが読み取れるから,引用例1には,“決定装置”が
“前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間T_(spec)と,最大並列処理数決定処理により決定されたスレッドの前記最大並列処理数の設定値N_(S)と,最大並列処理数決定処理での推定結果である単位応答時間T_(P)のうちスレッドの前記最大並列処理数の設定値N_(S)に対応するものである最小単位応答時間T_(PN)とに基づいて,前記サーバ装置における前記処理要求の最大待ち行列数の設定値q_(S)を決定する”こと
が記載されていると解される。

(3)以上,ア乃至エの検討によれば,引用例1には次の発明(以下,「引用発明」という。)が記載されているものと認める。

「ネットワークを介して複数の端末装置から受信される処理要求に応じて,複数のスレッドで処理を実行するサーバ装置について,複数の前記処理要求が受信された場合の前記サーバ装置における前記処理要求に対するスレッドの最大並列処理数の設定値と,最大待ち行列数の設定値とを決定するための決定装置であって,
前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて,前記サーバ装置におけるスレッドの並列処理数ごとの処理効率を推定し,
前記処理効率が最も高くなるときの前記サーバ装置におけるスレッドの並列処理数を,前記サーバ装置における前記最大並列処理数の設定値N_(S)に決定し,
前記サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間T_(spec)と,最大並列処理数決定処理により決定されたスレッドの前記最大並列処理数の設定値N_(S)と,最大並列処理数決定処理での推定結果である単位応答時間T_(P)のうちスレッドの前記最大並列処理数の設定値N_(S)に対応するものである最小単位応答時間T_(PN)とに基づいて,前記サーバ装置における前記処理要求の最大待ち行列数の設定値q_(S)を決定する決定装置。」

2 引用例2に記載されている技術的事項

本願の出願前に頒布又は電気通信回線を通じて公衆に利用可能となり,当審による平成29年9月22日付けの拒絶理由通知において引用された,特開2011-159107号公報(平成23年8月18日出願公開,以下,「引用例2」という。)には,以下の技術的事項が記載されている。
(当審注:下線は,参考のために当審で付与したものである。)

D 「【0002】
コンピュータ処理を効率的に実行するための技術としてマルチスレッドがある。マルチスレッドは,一つのプログラムで複数のスレッドを生成し,複数のスレッドで並行してプログラムを処理する手法である。このようなマルチスレッド機能を有するプロセスは,スレッドを複数生成することで処理効率を向上させることができるが,必要以上にスレッドを生成するとメモリ容量が不足するなど処理効率が低下する要因となる。下記特許文献1には,プロセスにおける処理待ちのリクエスト数が増加しているときにはスレッド数を増加させ,処理待ちのリクエスト数が減少しているときにはスレッド数を減少させるシステムが開示されている。」

3 参考文献1に記載されている技術的事項

本願の出願前に頒布又は電気通信回線を通じて公衆に利用可能となった,特開平3-40034号公報(平成3年2月20日出願公開,以下,「参考文献1」という。)には,以下の技術的事項が記載されている。
(当審注:下線は,参考のために当審で付与したものである。)

E 「〔概要〕
待ち要求の数等の変化に応じて実行多重度を変更するプロセスの実行多重度制御処理方式に関し,
プロセスについての待ち要求の数及び空きスレッドの数の変化に応じてプロセスの実行多重度を動的に変更可能と
することを目的とし,
プロセスについての待ち要求の数と空きスレッドの数とをフィードバック機構部において求められた監視時間間隔で監視するモニタリング機構部と,前記監視の結果に基づいてスレッドの増減数と新たな監視時間間隔とを求めるフィードバック機構部と,前記スレッドの増減数に従って前記スレッドの数を変更することによって,実行多重度を変更する多重度変更部とを設け,前記待ち要求の数の増加又は減少若しくは空きスレッドの数に応じて,前記多重度変更部が前記スレッドの数を増加又は減少させることにより前記実行多重度を大きく又は小さくすると共に,前記モニタリング機構部がより短い又はより長い監視時間間隔で前記監視を行うように構成する。」(第1頁右下欄第12行-第2頁左上欄第13行)

F 「〔作用〕
モニタリング機構部2による監視の結果,待ち要求の数が増加している時(又は多い時)には,フィードバック機構部3はスレッドの数を増し監視時間間隔を短くするようにこれらの値を求める。これにより,多重度変更部4がスレッドの数を増加させて実行多重度を大きくすると共に,モニタリング機構部2がより短い監視時間間隔でプロセス5の監視をする。従って,プロセス5の負荷が大きい(要求7の数が多い)場合であっても,スループットの低下を防ぎ,システム全体のスループットを略一定に保つことができる。また,急激な負荷の増加にも十分対応できる。
逆に,待ち要求の数が減少している時(又は少ない時)若しくは空きスレッドが存在している時には,スレッドの数が減少させられることにより実行多重度が小さくされると共に,より長い監視時間間隔での監視が行われるようにされる。これにより,被監視プロセス5の持つ不要なスレッド(又は空きスレッド)が解放されるので,これらに割当てられていたシステム資源も解放され有効利用が可能となる。また,負荷が小さい場合における必要以上のモニタリング機構部2の動作を抑え,オペレーティングシステム1のオーバヘッドを削減できる。」(第3頁左下欄第2行-右下欄第7行)

第4 対比

1 本願発明と引用発明とを対比する。

(1)引用発明の「決定装置」は,「サーバ装置」における処理要求に対する「スレッド」の「並列処理数」と,「待ち行列数」とを決定するところ,本願発明の「流量制御システム」は「スレッドの個数」を設定し,「キュー」の個数を規定すると認められる。
そうすると,引用発明の「決定装置」は本願発明の「流量制御システム」に対応し,両者は“流量制御システム”である点で一致するといえる。

(2)引用発明では,「サーバ装置における前記処理要求に対するスレッドの最大並列処理数の設定値と,最大待ち行列数の設定値とを決定する」ところ,引用発明の「サーバ装置」は「処理要求」に応じて「処理」を実行し,「処理」は「処理要求」応じて実行される“サービス”とみることができ,また,引用発明の「待ち行列」が,「サーバ装置」で実行される「処理」に対する複数の「処理要求」を保持することは明らかであるから,引用発明の「処理」,「処理要求」,「待ち行列」はそれぞれ,本願発明の「サービス」,「処理待ちデータ」,「キュー」に相当する。
そうすると,引用発明と本願発明とは,“サービスに対する複数の処理待ちデータを保持するキュー”を有している点で一致しており,実質的な違いはないといえる。

(3)引用発明では,「サーバ装置」は,「ネットワークを介して複数の端末装置から受信される処理要求に応じて,複数のスレッドで処理を実行する」ところ,「処理要求」が「待ち行列」を形成し,「処理要求」は複数の「スレッド」により並列処理されることは自明であるから,引用発明と本願発明とは,“キューから提供される処理待ちデータを同時に処理する複数のスレッド”を有している点で一致しており,実質的な違いはないといえる。

(4)引用発明の「スレッドの並列処理数」は,処理効率が最も高くなるときの「サーバ装置」における「最大並列処理数」に決定されるところ,引用発明の「スレッド」の「最大並列処理数」は「処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて」設定され,同時に「処理」することが可能な「処理要求」の最大数であると認められる。
一方,本願明細書の発明の詳細な説明の段落【0030】の「また,当該サービスに対するリクエストの数量及び/又は頻度が大きい場合,スレッド140の個数を大きく設定することによって,単位時間当たりにより多くのリクエストを処理することが可能となり,また,サービスを提供するまでのユーザの待ち時間をユーザが許容できる程度の遅延に抑える。」との記載からすると,本願発明において,「処理待ちデータ」が「キュー」に十分保持されている場合には,「スレッドの個数」を最大にして処理することは明らかであるから,本願発明において設定される「スレッドの個数」は,「キューから提供される前記処理待ちデータを同時に処理する」ことが可能な「スレッド」の最大数であるといえる。
そうすると,引用発明における「スレッドの並列処理数」は本願発明の「スレッドの個数」に相当するといえる。

(5)引用発明では,「処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果」に基づいて,「サーバ装置における前記最大並列処理数の設定値N_(S)」を決定するところ,引用発明の「応答時間測定処理の測定結果」と本願発明の「サービスに対するリクエストの数量及び/又は頻度」とは,上位概念において,“サービスに対するリクエストに係る測定値”とみることができる。
そうすると,引用発明の「前記処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて,前記サーバ装置におけるスレッドの並列処理数ごとの処理効率を推定し,前記処理効率が最も高くなるときの前記サーバ装置におけるスレッドの並列処理数を,前記サーバ装置における前記最大並列処理数の設定値N_(S)に決定」することと,
本願発明の「スレッドの個数は前記サービスに対するリクエストの数量及び/又は頻度に応じて,変動するように設定され」ることとは,
“前記スレッドの個数は前記サービスに対するリクエストに係る測定値に応じて設定され”る点で共通する。

(6)引用発明では,「サーバ装置の設計条件として与えられる前記処理要求に対する応答許容時間T_(spec)と,最大並列処理数決定処理により決定されたスレッドの前記最大並列処理数の設定値N_(S)と,最大並列処理数決定処理での推定結果である前記単位応答時間T_(P)のうちスレッドの前記最大並列処理数の設定値N_(S)に対応するものである最小単位応答時間T_(PN)とに基づいて,前記サーバ装置における前記処理要求の最大待ち行列数の設定値q_(S)を決定する」ところ,「処理要求の最大待ち行列数の設定値q_(S)」は「スレッドの最大並列処理数の設定値N_(S)」に基づき規定されるとみることができることから,本願発明の「キューの長さは前記スレッドの個数に基づき規定される」ことと実質的な違いはない。

2 以上から,本願発明と引用発明とは,以下の点で一致し,また,以下の点で相違する。

<一致点>

「サービスに対する複数の処理待ちデータを保持するキューと,
前記キューから提供される前記処理待ちデータを同時に処理する複数のスレッドと,
を有し,
前記スレッドの個数は前記サービスに対するリクエストに係る測定値に応じて設定され,前記キューの長さは前記スレッドの個数に基づき規定される流量制御システム。」

<相違点1>
処理待ちデータを同時に処理するスレッドの個数の設定に関し,本願発明では,「スレッドの個数」が,「サービスに対するリクエストの数量及び/又は頻度に応じて,変動するように設定され」るのに対して,引用発明では,スレッドの個数(並列処理数)は,「処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて」設定される点。

第5 当審の判断

上記相違点1について検討する。

引用発明では,処理待ちデータを同時に処理するスレッドの個数(並列処理数)は,「処理要求の同時送信数ごとの平均応答時間や最大応答時間等を用いた応答時間測定処理の測定結果に基づいて」,「処理効率が最も高くなるときの前記サーバ装置における並列処理数」を設定するところ,リクエストに係る測定値に基づいて,処理効率が向上するようスレッドの個数を変動させて,設定するといえる。
また,リクエストを複数のスレッドで処理するマルチスレッド処理システムおいて,処理効率向上を目的として,サービスに対する処理待ちリクエストの数量の変化に応じて,スレッドの個数を変動させて設定することは,例えば,引用例2(上記Dを参照),参考文献1(上記E,Fを参照)に記載されるように,本願出願前には当該技術分野における周知技術であった。
そして,マルチスレッド処理システムおいて,処理効率の向上のために,スレッドの個数を適切に設定するという点で,引用発明,引用例2及び参考文献1に記載の上記周知技術とは共通の課題を有しているといえる。
そうすると,引用発明において上記周知技術を適用し,処理待ちデータを同時に処理するスレッドの個数を,リクエストの数量に応じて,変動するように設定することは,当業者が容易に想到し得たことである。

上記で検討したごとく,相違点1に係る構成は当業者が容易に想到し得たものであり,そして,本願発明の奏する作用効果は,引用発明,及び,引用例2,参考文献1に記載の当該技術分野の周知技術の奏する作用効果から予測される範囲内のものにすぎず,格別顕著なものということはできない。

第6 むすび

以上のとおり,本願の請求項1に係る発明は,特許法第29条第2項の規定により特許を受けることができないものであるから,本願は拒絶すべきものである。

よって,結論のとおり審決する。
 
審理終結日 2017-12-18 
結審通知日 2017-12-19 
審決日 2018-01-10 
出願番号 特願2012-95045(P2012-95045)
審決分類 P 1 8・ 121- WZ (G06F)
最終処分 不成立  
前審関与審査官 三坂 敏夫  
特許庁審判長 高木 進
特許庁審判官 佐久 聖子
辻本 泰隆
発明の名称 流量制御機能を有するシステム  
代理人 伊東 忠彦  
代理人 伊東 忠重  

プライバシーポリシー   セキュリティーポリシー   運営会社概要   サービスに関しての問い合わせ