2012-03-29 22 views
-1

私はアプリケーションの負荷テストで少しのジレンマを打ちました。私のアプリケーションは、ログインしているユーザーに対応するシャドウレコードを作成するため、有効なFacebookログインに依存しています。Facebookアプリケーションの負荷とパフォーマンスのテスト

Facebookコールを使用中に(無効にするのではなく)アプリケーションのテストをロードする方法を教えてください。

私は、少なくとも100,000人のユーザーがうごめくことなく接続できるようにする必要があります。

負荷が平均で100 ミリ秒のプリキャッシュのため、私のコードはこれまでのところかなり高速に動作します。しかし、キャッシュをオンにする前に、もう少し負荷テストをしたいと思います。

どうすればいいですか?

私が遭遇したことから、誰もがアプリケーションが正規のサイトであるかのように、Facebookコールをオフにして負荷テストを行うと言うようです。また、私の問題の解決策と思われるfriendrunnerというものを見つけました。まだそこから誰も私に戻って来なかった。

答えて

2

できません。または、むしろ、あなたは本当にすべきではないし、おそらくそれはできないはずです。 Facebookは、合成(スクリプトによる)対話を防ぐための対策を導入する場合、より積極的なサイトの1つです。これらの対策を回避しようとすると、Facebookはあなたに対抗する措置を取るリスクがあります(おそらく合法ではありませんが、彼らとの企業合意があれば恥ずかしくなるかもしれません)。

しかし、これはパフォーマンステストの問題ではありません。 Facebookの呼び出しを偽装し、テストをロードするサーバーだけを呼び出すスクリプトを作成するだけで済みます。これはどのプロジェクトでもベストプラクティスです。以前は、FacebookのアカウントIDをシミュレートするために単純にランダムな文字列を使用していましたが、アプリケーションでアカウントの特定のユーザー情報が必要な場合は、少し独創的なものにする必要があります。私が知る限りでは、friendrunnerはそれだけで、Facebookスタブです。

+0

よく私がいない、非常に私は、ユーザーの数のように何を期待しかしFacebookは免除し、何かを発見し、スパムや「偽アカウント」なしでアプリごとに最大500人のユーザーを許可 http://developers.facebook.com/docs/test_users/ – Thillypickle

+0

これは明確にするために、通常のチェックの対象外の500人の「テスト」ユーザーを作成できる新しい機能です。これは昨年末に導入されたようです。ただし、事実上のテストユーザーはサイロになり、実際のユーザーと対話することはできません。つまり、FBをスタブアウトする方が簡単だと思いますが、主に自分のアプリに焦点を当てていてFBではなく、それらを式から外すのが理にかなっています。 –

+0

私はFacebookの開発者の一人と話をしていました。彼らは、facebookは、アプリケーションが生産にリリースされた後に負荷の壁に当たる必要がないように、より良いテスト方法を実装している可能性があると言いました。私はFacebookの通話をオフにしてあなたの提案を取った、すべては大丈夫だった。私はまた、特定の使用量に達すると新しいサーバーを自動的に起動するようにクラウドプールを設定しました。あなたの答えに感謝します。 – Thillypickle

関連する問題