15

0.6.5 リリースでは、非 Web アプリケーションを meteor で開発できます。ARM プロセッサ用にゼロから再構築しましたが、DB のサポートはまったく必要ありません。(Mongo はプロセッサ キラーであり、フットプリントが大きく、必要ありません)

ARM は DDP クライアントとしてのみ動作するはずです。これを念頭に置いて、mongo を使用せずに手動でビルドします。

そして、開始時に1つのパッケージのみを可能な限り単純なアプリを構築しようとしました(すべての標準パッケージが削除されました)

meteor

サーバーフォルダー内の1つのファイル

main = function(argv){
  return "DAEMON"
}

Meteor.setInterval(function(){
  console.log("HellOnWorld");
},1000);

meteor が完全にインストールされたマシンでは期待どおりに動作しますが、mongo がインストールされていないとエラーが発生しました

Unexpected mongo exit code 127. Restarting.
Unexpected mongo exit code 127. Restarting.
Initializing mongo database... this may take a moment.
Unexpected mongo exit code 127. Restarting.
Can't start mongod

明らかに、私はモンゴを持っていませんし、欲しがっています。

mongo db を待たずに流星を開始する方法はありますか?

Meteor チームは他のデータベースをサポートする予定であるため、遅かれ早かれ実装する必要があります。

4

6 に答える 6

21

アップデート

mongoMeteor の新しいバージョンでは、パッケージを削除する必要があります。mongo パッケージはパッケージに組み込まれていmeteor-platformます。したがって、それを削除して残りをすべて追加する必要があります ( https://github.com/meteor/meteor/tree/devel/packages/meteor-platformから):

meteor remove meteor-platform
meteor add  meteor webapp logging tracker session ddp blaze spacebars templating check underscore jquery random ejson templating check underscore jquery random ejson

その後、アプリはもう Mongo を使用しません :)。

MONGO_URLdev モードでは、環境変数を別のものに設定して meteor を開始することで、mongo を取り除くことができます。例えば:MONGO_URL=mongodb://nowhere meteor

于 2013-08-31T09:46:39.740 に答える
2

奇妙な可能性として、正しいポートにモック mongo サーバーを作成し、それにアクセスするように環境変数を設定します。いくつかのハンドシェイク ルーチンを実装するだけで済み、その後はトラフィックが発生しなくなるはずです。私の能力を超えていますが、状況が変化してもコードの変更に適応する必要がないという利点があります。

于 2013-08-31T22:55:35.177 に答える
0

リストされた回答は Meteor 1.x では機能しません。以下は、mongodbなしで流星を実行する私の方法であり、流星で何も変更する必要はありません(ソースコードもパッケージ構成も)。

  1. git クローンhttps://github.com/solderzzc/mongodb-fs
  2. cd mongodb-fs && npm install && node samples/test-server.js

    すべてがうまくいけば、次のコンソールログが表示されます

    ここに画像の説明を入力

  3. meteor create --例のリーダーボード && cd リーダーボード

    MONGO_URL=mongodb://localhost:27027/fakedb 流星

プレーヤーにポイントを追加し、mongo コマンド ラインで確認します: mongo localhost:27027/fakedb

ここに画像の説明を入力

于 2015-07-17T00:03:58.130 に答える