1

私のインフラストラクチャは次のとおりです。gandi ドメイン、aws dns、route53 api.domain cname は、自己署名の ssl 対応 elb を指しています (elasticbeanstalk インスタンスが 1 つあります)。Elasticbeanstalk インスタンスは Docker ベースです。つまり、nginx は docker インスタンスに転送されます。Docker インスタンスには、静的ファイルを提供する nginx と、golang へのリバース プロキシ (ポート 3000 への fastcgi) があります。データは Amazon RDS に保存され、go-sql-driver を使用してアクセスされます。

複雑すぎるように見えますが、単純化するための最良の方法は何ですか?

4

1 に答える 1

2

ヘッダーの質問「ベンチマーク (ping、traceroute、pingdom を試して) を実行し、速度を改善するにはどうすればよいですか?」に対する回答です。「ウェブサイト ベンチマーク」などで検索すると、おそらく最もよく答えられます。Web サイトのベンチマーク ツールは数多くあります。( Siegeabboomboom in Go、またはvegetaを見てください。他にもたくさんありますが、それで始めることができます。)

「複雑すぎるように見えます。単純化するための最良の方法は何ですか?」に対する答え。は:

何をする必要がありますか?

シンプルで静的なサイトの場合、セットアップは非常に複雑です。分散型、障害冗長、高可用性サイトの場合、これでは不十分です。インフラストラクチャをニーズに合わせる必要があります。

「route53 api.domain cname は、自己署名された ssl 対応の elb (elasticbeanstalk インスタンスを 1 つ持つ) を指しています:」ロードバランサーが必要ですか? エンドポイントをさらに追加しますか? アプリケーションはこの方法で負荷分散をサポートしていますか? (リクエストはアトミックに処理されるか、すべてのリクエストは一意かなど)

"nginx forwards to docker instance:" Go アプリまたは NginX 構成で SSL 証明書を管理しますか? 現在実行している方法はおそらく今のところ最も単純ですが、繰り返しになりますが、それはニーズによって異なります。

「Dockerインスタンスには、静的ファイルを提供するnginxと、golangへのリバースプロキシ(ポート3000へのfastcgi)があります:」これは非常に複雑に聞こえます(ただし、必要に応じて異なります)。これを、そのパス上の静的ファイルのディレクトリを提供するだけのnginxに置き換えることはできますか? ここで fastCGI が必要ですか?

「データは Amazon RDS に保存され、go-sql-driver を使用してアクセスされます:」要件 (パフォーマンス、コンプライアンスなど) によっては、これも AWS で問題ありません。

それが役立つことを願っています。

于 2015-01-08T13:20:03.063 に答える