2019年4月8日月曜日

ミドルクライアント


サーバー系のコンピューティングは、シンクライアントとリッチクライアントの両極端を、時代と共に行き来してきた。そろそろ中間的なクライアントに落ち着くようなブームが来ても良さそうに思うのだが、どうだろう。

従来のリッチクライアントというのは、できるだけ処理をクライアント側でしてしまう、というものだ。シンクライアントはこの逆で、できるだけサーバ側で行う。これらに対して提案するミドルクライアントは、サーバの負荷とクライアントの能力によって、どちらで処理するかを最適化する。クライアントは基本的にゼロ知識で動かすところは一緒だ。

例えばこんな感じだ。Webページを表示すると、クライアントサイドJavaScriptをダウンロードするところまでは同じだが、このJavaScriptは単純にクライアントで動かすものではない。その内部には、まずクライアントのスペックと負荷をサーバに返す仕掛けがある。単純にメモリやCPUの有無だけでなくて、例えばAIチップの有無やGPUの使用可否などが含まれている。これをサーバ側が判断して、可能な処理はクライアントで行わせ、自らは残りを処理する、というわけだ。

この仕掛けが上手くいけば、PCでもスマホでもレスポンスがほぼ変わらない、端末を変えても体感が変わらない、という経験が得られる。それでは端末を新しくするモチベーションにはならないのでは、というと、通信量は減るのと、ローカルでの学習結果の精度が上がるといったメリットは出る。出先で止むを得ない時はスマホで、普段はPCやChromebookで、などの使い分けは、成立するわけだ。

これは、サーバ側の開発ツールに新たなライブラリなりフレームワークなりが増えるだけでよく、クライアントは従来通りWebサーバでよい。これで新しいサーバクライアントコンピューティングの流れができないだろうか、と思う。

0 件のコメント:

コメントを投稿

注目の投稿:

砂の船

  免震構造については過去いくつか提案しているが、これの新しい版である。 以前、難燃性の油の上に浮かべた船の構造を提案したことがある。あれの砂版である。つまり、砂のプールを作っておいて、その上に浮かべるというものだ。砂が抵抗となって振動を軽減する。 ただし、油や水と違って砂の...

人気の投稿: