質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

1回答

1489閲覧

NiftyCloudによる通信速度

seri

総合スコア422

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

0クリップ

投稿2017/04/03 18:02

編集2017/04/03 18:10

現在Monacaでチャットアプリを作っています。

NiftyClouを仲介役にユーザーの入室や新規チャットメッセージが有った場合には入室しているユーザ全員にデータを送信しようかと思っています。

http://mb.cloud.nifty.com/doc/current/script/basic_usage_monaca.html

この時、多くて1000人ぐらいの利用者がいたとして、通信速度での欠点はありますでしょうか?

コードと送受信進行を乗せさせていただきます。

//クライアント処理 ncmb=new NCMB(L_AppKey,L_ClientKey); //チャットに新規に入室した時のFunction function InChat(){ //自身のIDとチャット部屋のIDをクラウド側のClass”ID”に格納 var Class = ncmb.DataStore("ID"); var _class = new Class(); _class.set("UserID", UserID).set("ChatID",ChatID) .save() .then(){}.catch(){} //Nifty側にアップロードしたスクリプトを呼び出し ncmb.Script.data({"UserID":UserID}) .exec("POST", "NiftyScript.js") .then(){}.catch(){}; }

↓ クラウド処理

////Nifty側スクリプト NiftyScript.js module.exports = function(req) { var ncmb = new NCMB(YOUR_APPLICATION_KEY, YOUR_SECRET_KEY);//割愛 var Users = ncmb.DataStore('ID'); var Debug; queries = {:count => "1", :limit => "1000", :order => "ChatID", :skip => "0"} var data=Users.get queries; //dataに取得した同じ部屋のユーザにプッシュ通知を送る(まだ未実装です、http://mb.cloud.nifty.com/doc/current/rest/push/pushRegistration.html) }

他の情報を調べてみるとSocket.IOとゆう通信機能を組み込んでの実装が主流のようですね、理由はサーバーの負荷が少なく実装出来るからとの事でしたが、NiftyCloudの場合はどうなのか気になり質問させていただきました。

Niftyでのスクリプトで検索機能を使っていますが、以下の方法でも実装が可能なようでして、、どう違うのかも解りません。
http://mb.cloud.nifty.com/doc/current/rest/datastore/objectSearch.html

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

現在の NCMB では、Socket.IO などに対応して、サーバ側からアプリ側にデータをプッシュすることはできません。上記に書かれている NCMB の「プッシュ通知」とは、Android/iOS のアプリ通知機能(通知画面にぴろんと出てくるアレです)のことなので、即時通知には向いていません。

アプリから定期的にデータストアをチェックするやり方のほうが現実的に思えます。

投稿2017/04/26 10:18

koyhoge

総合スコア268

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問