2

私はherokuとnode.jsを初めて使用します。私は小さなnode.jsアプリを持っており、herokuツールベルトのFOREMANを使用して、ローカルマシンで正常に起動して実行できます。ただし、アプリを最適にデバッグする方法がわかりません。

node.jsとnode-inspectorプロジェクト用のEclipseデバッガーがあることがわかります。しかし、私はこれらをFOREMANで機能させることができないようです。

foreman start

フォアマンによって起動されたアプリをデバッグできない場合、フォアマンの目的は何ですか?

4

2 に答える 2

12

さらに、Procfileは次のようになります。

web: node web.js
webDebug: node --debug-brk=5858 web.js`

したがって、デバッグを開始するには、を呼び出すだけでforeman start webDebug、必要に応じて構成を呼び出すことができます。

デバッガーはポート5858でリッスンするため、 http:// localhost:5000ではなくhttp:// localhost:5100からアプリを呼び出す必要があります。

于 2015-03-16T07:52:52.740 に答える
0

Foremanの目的は、複数のプロセスで構成される可能性のある複雑なアプリケーションを簡単に実行できるようにすることです。Foremanに関する著者のブログ投稿をチェックしてください:

最近、自分のWebアプリの実行が複雑になっていることに気づきました。私のアプリはもはや単一のWebプロセスで構成されていません。私は通常、さまざまなタイプのジョブを実行するための1つ以上のタイプのバックグラウンドワーカーと、スケジューリングを処理するためのクロックプロセスを持っています。このようにアプリを分割すると、パフォーマンスとスケーラビリティが向上します。ただし、欠点は、アプリとそのすべての部分を実行するのがはるかに複雑になることです。

フォアマンはこれを簡単にする試みです。フォアマンを使用すると、Procfileを使用してアプリケーションを実行するために必要なさまざまなプロセスを宣言できます。

フォアマンを活用することで、Herokuは、Railsアプリ、Sinatraアプリ、Node.jsアプリなど、基本的に必要なあらゆる種類のプロセスを実行できるようにしました。Procfileフォアマンが読み取って実行するyour 。

Foremanでは、この単純なProcfileを取得し、UpstartやInitなどのツールを使用して本番環境にエクスポートすることもできます。デバッグ機能は提供しません(また、そうすることを意図したものでもありません)。

于 2012-05-21T01:46:51.310 に答える