アプリケーションを実行してから約5分後に、恐ろしい「開いているファイルが多すぎます」というエラーが表示されます。これは私にとってのショートッパーです。256のオープンファイル制限があることを私は知っています。リークがある場合は、lsofを実行して追跡しました。開いているハンドルの多くは、Tomcatや他のプロセスが作成する必要のある接続にすぎないことがわかりました。「nginx」プロセスは変動する唯一のプロセスのようですが、それでも最大で約81になります。私のアプリケーションはファイル記述子をリークしていないようです。私はCloudFoundryが大好きです。これは、アプリケーションをリファクタリングして機能させる必要がなかった最初のPAASです。ファイル制限はいつ引き上げられますか?テストにはMicroCloudFoundryを使用していますが、できるだけ早くHostedCloudFoundryで実行したいと考えています。両方のバージョンでこのエラーが発生します。これを回避する方法はありますか?Micro Cloudインスタンスの制限を変更しようとしましたが、そのような変更を行う権限がないというエラーが表示されます。これに関するヘルプや提案はありますか?
2 に答える
新しいファイル記述子のクォータは、次のデータベース移行に含まれています。
185行目。
この特定の設定は、ベータステータスから抜け出し、「次世代」コンポーネントが本番環境に移行する4月の時間枠までhttp://cloudfoundry.comで有効になりません。
独自のバージョンのCloudFoundryを実行している場合は、cloud_controller_ngを使用していると仮定して、この移行を実行できます。
開発のために社内で使用しているMicroCloudFoundryには、新しいクラウドコントローラーが含まれています。ここで、私たちが自分たちの目的のためにそれを実行する方法を読むことができます:
レガシービットを廃止し、これらのNGコンポーネントに移行するため、私たちは少し移行期にあります。ヒッチについてはお詫びしますが、コストに見合う価値があります。お待ち頂きまして、ありがとうございます。
一番、
MattReiderプロダクトマネージャーCloudFoundry
rootユーザーとしてログインしました。/var/vcap/packages/dea/dea/lib/dea/agent.rbファイルと/etc/security/limits.confファイルの両方を変更しました。
agent.rbファイルについては、次の手順に従いました:http: //mdahlman.wordpress.com/2012/04/20/micro_cloud_foundry/
Limits.confファイルについては、次の手順に従いました:http: //myadventuresincoding.wordpress.com/2010/10/09/ubuntu-increasing-the-maximum-number-of-open-files/
どちらの修正が役に立ったか、または両方のファイルを変更する必要があるかどうかはわかりません。アプリケーションは現在機能しているようですので、次に進みます。誰かがより良い解決策を持っているなら、私はそれを聞いてうれしいです。
これにより、セルフホストのマイクロクラウドファウンドリでのみアプリケーションを実行できます。誰かがホストされたバージョンの解決策を持っていれば、はるかに良いでしょう。残念ながら、256個のファイル記述子で使用するようにアプリを制限する方法を見つける必要がありますが、それは起こりそうにありません。