-3

注: これは意見に基づいた質問に見えるかもしれませんが、技術的な回答が必要です。

インターネット接続が不安定で、ほとんどの場合遅い国を対象としたアプリケーションを構築しています (約 1/2 Mbps と想定しています)。

ここヨーロッパでは、Meteor は非常に迅速なライブ更新により、ほとんど常に非常に優れたパフォーマンスを発揮します。ただし、レガシー ネットワーク (高遅延/不安定) でどのように機能するかはわかりません。

別の方法は、Django をフルスタック フレームワークとして使用することです。これは、私が理解している限り、リアルタイムではありません。

ご意見 (おそらく技術データに裏付けられたもの) は大歓迎です。

4

1 に答える 1

-1

私は反対票を獲得していません。誰かが始めるための正当な質問のようです。私は現在メキシコに住んでおり、Meteor の前は Django を使用していました。私は間違いなく関係することができます。

まず、「fullstack django」が存在しません。サーバー言語です。angular/react/blaze のようなフロントエンド フレームワークが必要です。次に、django を REST バックエンドに設定します。そこから、websockets、http longpolling、またはプル スタイルの更新 (ユーザー クリックが要求を開始) を使用できます。Meteor は WebSocket を使用します。

どのオプションを選択したとしても、頻繁な停止に備えて開発するのはあなた次第です。たとえば、遅延ロードされるアイコン フォントがあるとします。ユーザーが切断されたときに初めてそれを表示しようとすると、その奇妙なボックス文字が表示され、反応的に更新されません。

その他のあまり目立たない例として、データベースの変更があります。meteor はローカル コピーを保持するため、レイテンシー補正で競合他社を圧倒します。切断されてデータベースを編集すると、Meteor は楽観的にクライアントでこれらの変更を行い、それらをキューに入れてサーバーに送信します。次に、再接続時に、それらをサーバーに送信し、正当な結果を読み取ります。Djangoでこれを行うことができますか?もちろん。しかし、それをコーディングするのはあなた自身です。

さらに、ユーザーは、ページの読み込みが速くないと感じると、ページを更新します。サーバー側のレンダリング + ajax を行う場合、大量の html コードを送信しています。Meteor を使用している場合、ユーザーはキャッシュからアプリを読み込んでおり、純粋なデータを再サブスクライブしているだけで、コンテキストはありません。つまり、ページの読み込みが速くなります。

最終的な考えは、ユーザー エクスペリエンスです。Websocket を使用すると、切断されたことをユーザーに知らせるメッセージをすぐに表示できます (例: https://github.com/meteor/react-packages/blob/9b6f0f2677fa782b14a2684f1261ca5ab322a730/examples/react-todos/client/components/AppBody.jsx)。繰り返しますが、ロングポーリングでも同じことができますが、実装を楽しんでください。

于 2015-08-22T20:12:13.017 に答える