プログラミング初心者です。
質問内容に分かりにくい点があるかもしれませんので、足りない部分は聞いていただけると幸いです。
railsで作成したアプリをAWSにVPCを作成してEC2でデプロイしました。
(nginxとunicornを使用)
routes53で独自ドメインを取得しELBのALBを使い、elasticIPに紐づけています。
データべースはRDSインスタンスのmysqlを使用。
公開したアプリが順調だったが、アクセスが多く重くなることがあるため、サーバーの負荷分散を試みました。
イメージからEC2を複製し(同一AZ内)、ターゲットグループに追加したところ、複製元と複製後のインスタンスにアクセスが交互に振り分けられ、アプリも問題なく起動しました。
ところが、EC2をもう一台複製し(同一AZ内)ターゲットグループに追加したところ、トップページには問題なくいけるのですが、アプリの一部の機能が正常に作動しなくなりました(3台とも)
2台稼働の状態では間違いなく正常に動作しているのに、3台にすると動作しません、、、理由に検討がつかず困っています。
うまく動作しない部分は、非常にコードが長いので、一部抜粋しますと、
inputで送信された画像を、gemのminimagick処理した後、
image.write("public/user_images/#{@user.image}")で保存し、その画像を表示するという動作です。
3台体制にすると、ページ自体は遷移するのですが、その画像が表示されません。(2台体制の時は確実に表示されます、、、ちなみにストレージは使用していません。)
画像は一時的に表示されればよく、保存不要なので、ストレージは使用していないのですが、これが原因だったりするのでしょうか、、、
原因や改善方法について御回答いただけると幸いです。
【追記】ちなみにアプリの構成は3ページで
①http~.com
②http~.com/users/:id
③http~.com/users/:id/show
①でuserを新規作成し、②で画像を選択③で画像処理を行い、その画像を表示。
この際に、EC23台体制にすると画像が表示されません、、、
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/11/04 04:37 編集
2019/11/04 04:36
2019/11/04 07:40