Akamai IoT エッジ プラットフォームをベースにしたサーバーレス位置情報共有アプリケーションの構築方法

Akamai IoT エッジ プラットフォームをベースにしたサーバーレス位置情報共有アプリケーションの構築方法

地理的位置に関連するアプリケーションについては、誰もがよくご存知だと思います。 IMソフトウェアでの位置情報の共有、電子商取引や食品配達アプリケーションでの配達先住所の照合など、私たちはほぼ毎日同様の機能やサービスを使用しています。しかし、開発するアプリに同様の機能を埋め込む方法について考えたことはありますか?

この記事では、 Akamai がエッジ コンピューティング テクノロジーを使用して、独自のアプリケーションで高速かつスムーズでスケーラブルな位置情報と共有機能を実現するアイデアを提供します。この方法全体は、サーバーレス形式で完全に実装されています。これは、位置情報共有関連の機能のためにアプリケーションの既存のバックエンドを拡張したり調整したりする必要がなく、単純な統合だけですべてがスムーズに実行されることも意味します。

Akamai Linode について詳しくご覧ください。

1. 100%サーバーレス

多くのサービスやアプリケーションにとって、実際の位置情報か仮想位置情報かを問わず、位置情報は不可欠です。交通、ゲーム、エンターテインメント、物流これらの業界のアプリケーションやサービスに位置情報が組み込まれなければ、私たちの実生活は大きな影響を受けることになるでしょう。

以下に説明するユースケースとデモは、 Akamai が最近ウェビナー イベント用に提供したアプリケーションのものです。これを「発見と発表」と名付けたのは、顧客が世界を探索し、周囲の興味のあるものについて学び、(オプションで)現在地の公共放送チャンネルで自分の存在を世界と共有するのに役立つからです。

何よりも素晴らしいのは、このアプリケーションは完全にサーバーレス テクノロジーに基づいて構築されており、 Akamaiエッジ プラットフォームを通じて完全に実行できることです

つまり、このアプリケーションには次の機能があります。

  1. ユーザー クライアントは、位置情報を含むAkamai IoT Edge Connect上のMessage Queue Telemetry Transport ( MQTT ) トピックを読み書きします。
  2. World Editorサービスは、対応するトピックの位置情報を更新するMQTTクライアントでもあります
  3. Analyticsサービスは、ユーザー クライアントから送信されたAnnounceメッセージを読み取ることで、周囲の世界 (特定の場所に何人のユーザーがいるかなど) についてさらに詳しく理解することができます。

2.軍事グリッド参照スクエア:世界の骨格

まず、 MQTTトピックを特定の地理的な場所に割り当てるのに役立つマッピング システムから始めます幸いなことに、 Military Grid Reference Squares ( MGRS ) の助けを借りれば、これを簡単に行うことができます。 MGRS は1メートル、 10メートル、 100メートル、 1000メートル、さらには10キロメートルのグリッドに座標を割り当てることができるグローバルな地理的位置コーディング システムです

次の座標を例に挙げます。

16TFQ 4104 8222

対応する位置は米国ミシガン州ベレアのショーツ醸造所の近くで、精度は10メートル四方です。 1km四方の場所を指定したい場合は、東経(最初の整数セット)と北緯(2番目の整数セット)の値を切り捨てるだけです。

16TFQ 41 82

MGRS は、以下で紹介するJavaScriptを含む多くのプラットフォームで利用可能な簡単な数式を使用して、緯度と経度から導き出すことができます

当社のIoT Edge Connectトピック構造は、 MGRSの地理位置情報エンコーディングを反映しています。デモ アプリでは、両方の場所のテーマは次のようになります。

/16FTQ/4104-8222/

/16FTQ/41-82/

また、 MQTTワイルドカードを使用して、任意の精度で見たいものを見ることができる、より豊富で複雑な設計もありますたとえば、最初のMGRSトピックは次のように記述できます。

/16FTQ/4/1/0/4/x/8/2/2/2/x/

その後、 MQTTワイルドカードを通じて真にインテリジェントなクエリを実現できます。次のクエリを使用すると、 1 km四方の範囲内に含まれるすべての情報を取得できます

購読 /16FTQ/4/1/+/+/+/8/2/+/+/+/

(上記の構造は、よりエレガントで効率的な形で構築することもできますが、この方法は、現時点ではこの記事の目的に視覚的に適しています)

3.ワールドエディター

さまざまなオブジェクト世界地図を更新するクライアントを開発しましたこれにより、オブジェクトを作成し、ワールド エディターマップ上で名前を付け、マップ上でオブジェクトをドラッグして位置を調整できるようになります。オブジェクトをドラッグ アンド ドロップすると、現在の位置のMGRS値がIoT Edge Connect上の対応するMQTTトピックに送信されます World Editor はMGRS JavaScriptライブラリを使用して、経度と緯度をMGRSエンコーディングに変換します。

追加のロジックを使用すると、多角形や円を認識したり、固有の場所の形状を定義して、現実世界の不規則な形状の場所をより適切に表現したりすることもできます。

クライアントも同様のサービスを使用して自分の存在を知らせることもできます。ウェビナーでは、公園内の場所間を移動するキャラクターの例を使用しました。これらのキャラクターは、新しい場所に到着した後、クライアントを使用して自分の位置をアナウンスできます。

4. ユーザークライアント

ユーザーは次の 2 つの操作を実行できます。

1 つ目:ユーザーはさまざまな場所に対応するトピックを購読して、周囲の世界について学ぶことができます。 MQTTワイルドカードを使用すると、広い範囲の関心領域を指定することもできます。

このサンプル アプリケーションは、 iOSデバイスから提供されるGPS座標を毎秒照会しますこれらの座標値はローカルでMGRSコードに変換され、前の秒の結果と比較して値が変化した場合、クライアントは新しい位置に対応するトピックをサブスクライブします。

この場合、経度と緯度以外のオプションを提供することは、アプリケーションにとって大きなメリットになります。 GPS信号が利用できない屋内環境をサポートする必要があります。一般的なアプローチは、Bluetooth ビーコンを使用してクライアントの位置を表すことです。ローカルまたはAkamai EdgeKVに保存されたフラット データセットは、ビーコン値をMGRS の場所にマッピングできます。これにより、当社のアプリはさまざまな位置情報共有タイプやシナリオと互換性を持つようになります。

2 番目:ユーザーは自分の情報を公開することを選択できます。 MGRSトピック構造を使用することで、ユーザーは自分の位置情報を10km 1km 100m 10mまたは1m のトピック レベルで公開するかどうかを決定できますこの方法により、ユーザーは自分の位置情報の正確さを軽視することもできます。

もちろん、ユーザーは通知で何を送信するか、送信しないかを選択することもできます。デモ アプリケーションでは、ユーザー クライアントは単に自分自身をユーザーと呼び、個人情報は含まれません。

また、ユーザーの位置とユーザーが発見したオブジェクトを地図上に表示するサンプルのユーザー クライアント インターフェイスも構築しました。ユーザーは、ワールド エディターを使用してオブジェクトに関するその他の情報を追加することもできます。

5. リアルタイム分析

Analyticsサービスの機能は、その名前が示すように、分析を実行することです。このサービスには、公開されたメッセージを読み取り、ログに記録して処理できるMQTTクライアントが含まれています。サンプル アプリケーションでは、マップ上にリアルタイム データを表示できるように、分析データ ソースをワールド エディターに追加しました(この場合、リアルタイム データはユーザー クライアントの場所です)。

リアルタイムのデータを使えるのは素晴らしいですね。たとえば、各場所のユーザー密度を 1 秒ごとに判断して更新できるようになります。

6. グローバル化

位置情報は、ゲームやシミュレーションなどの仮想世界や、物流倉庫や工場などの閉鎖環境でも同様に重要であり、上記の構造はそのような環境にも適用でき、同様の利点を提供します。

7. Akamaiを選ぶ理由

上記のデモ アプリケーションでは、このアプリケーションが、世界中のさまざまなモバイル オペレータのネットワーク サービスを使用する何千人もの観光客が集まる公園などの大規模な環境で使用される可能性があることを考慮しました。ピーク時のメッセージの総数は、1 時間あたり数十億を超える可能性があります。したがって、この規模のトラフィックやさらに大きなボリュームを処理できる、シンプルで信頼性が高く、スケーラブルで安全なプラットフォームを提供する必要があります。オリジン サービスはどこでも実行でき、顧客の需要を満たすために拡張する必要はありません。デモシナリオでは、 Akamai Edge が面倒な作業を処理してくれるので、お客様は当社のプラットフォーム上で機能豊富なアプリケーションを構築し、ユーザーにさらなる喜びと感動を与えることに集中できます

これらのアプリケーション コンポーネントは、ほぼすべての種類のコンテナーを使用して、あらゆるクラウド環境で実行できます。アプリについて詳しく知りたい場合は、 https://developer.akamai.com/iot-edge-connectにアクセスして、無料トライアルにサインアップしてください。また、ユーザーが1 台または1,000 台のクライアントを直接起動して、新しいアイデアを検証および磨くのに役立つデモ環境も提供できます

この記事の内容は大丈夫でしょうか?今すぐLinodeプラットフォームで試してみませか?今すぐ登録すると、 100ドル相当の無料クレジットを獲得できることをお忘れなく。早速、この記事で紹介した機能やサービスを実際に体験してみましょう↓↓↓

効率的なクラウド サービスには Akamai Linode をお選びください。

フォローを歓迎します Akamai では、高可用性MySQL/MariaDBリファレンス アーキテクチャと豊富なアプリケーション例について最初に知ることができます。

<<:  ネットワーク セキュリティ エンジニアがクラウド コンピューティングについて知っておくべきこと

>>:  Kubernetes におけるサービス登録と検出の原則の分析

推薦する

リバースホスト - 年間 6.99 ドル / メモリ 128 個 / トラフィック 500g

科学的にインターネットをサーフィンしたり、トラフィックを増やしたり、採掘したり、VG を掛けたりする...

タオバオ鬼足七:Tmallのパーソナライズ検索の解釈

@天猫逍遥子はWeiboで、Tmall検索にパーソナライズ要素が追加されたと発表した。興奮する人もい...

エッジコンピューティングとは何ですか? 5Gをどのように補完するのでしょうか?

私たちはスマートデバイスに囲まれて暮らしています。ただし、電子メールにアクセスしたり、コンテンツのス...

検索エンジンのランキングに影響を与える要因は何ですか?

検索エンジンにおけるウェブサイトのランキングは、多くの要因によって決まります。すべてをまとめることは...

KubeSphere DevOps システム機能の実践

序文Jenkins ベースの KubeSphere DevOps システムは、Kubernetes ...

サイト障害の原因を突き止め、解決する方法

おいしい料理を作るには、すべての調味料を適切に混ぜる必要がありますが、まずい料理を作るには、たった ...

小紅書でブランドマーケティングを促進する6つの方法

今日は、小紅書について私がまとめたちょっとした知識のポイントと、友人がよく困惑する質問、そしてノート...

国家ラジオ・映画・テレビ総局はテレビボックスを禁止する断固たる措置を講じた。

最近、スマートテレビやスマートボックスを常に嫌ってきたラジオ・テレビ業界が再び行動を起こし、最初の8...

テンセントは自らの過失によりWeChatアカウントを禁止した。誰のためなのか?

WeChatの現在の状況では、WeChatが行うあらゆる行動やジェスチャーがあらゆる階層から注目を集...

Think 2020 専門家による解説 - インターネットバンキングの建築家 Wei Sheng

IBM Think 2020 テクノロジーカンファレンスにオンラインで参加する機会をいただき、大変感...

ウェブサイト運営は全体の状況を把握してこそ成功できる

ウェブサイトの運営は、一つのコンテンツだけに頼っていては成功しません。ウェブサイトの運営は、ウェブサ...

「Baiduのクローリングとページインデックス分析」を読んで、Baiduの価値の傾向を確認してください。

Baidu がウェブマスター プラットフォームを立ち上げて以来、ますます多くの人々がこのプラットフォ...

究極のパフォーマンスを追求するために、Kafkaには11の主要な最適化があります

Kafka はパフォーマンスを最適化するためにどのような対策を講じましたか?これは Kafka の面...