AWS CloudFront для PHP-хостинга

Я новичок в AWS, и у меня есть некоторые трудности с пониманием CloudFront. Я начал с одного экземпляра EC2 с NGINX, MySQL и некоторыми файлами PHP в общедоступной папке, чтобы представить API миру. Затем мне сказали, что CloudFront можно использовать для защиты инстанса от вредоносных атак. Я понял, что CloudFront требуется Elastic Load Balancer. Итак, я создал ELB, еще один экземпляр EC2 (всего два экземпляра EC2), создал «целевую группу», объединяющую эти два экземпляра EC2. Я также создал корзину S3, которая, казалось, была необходима для CloudFront, хотя я не думал, что она мне нужна, поскольку в моем приложении нет статического содержимого. При поиске в Интернете общая идея показалась, что файлы PHP должны находиться в EBS экземпляров EC2, а не в корзине CloudFront S3, поскольку файлы PHP необходимо выполнять. (и что S3 не может выполнять никакие файлы)

  • В этом случае нужно ли развертывать файлы PHP на обоих инстансах EC2?
  • Как сделать так, чтобы экземпляры EC2 указывали на одну и ту же базу данных, чтобы все данные хранились в одном месте? В настоящее время каждый инстанс EC2 содержит собственную базу данных MySQL в собственном хранилище EBS.
  • Как выглядит сквозной поток запросов? например Клиент обращается к CloudFront. CloudFront ведет переговоры с ELB. ELB общается с одним из моих инстансов EC2. Экземпляр EC2 подключается к общей базе данных MySQL и получает данные. Данные ответа возвращаются в обратном порядке.

Я правильно понимаю это?

Вам следует обратить внимание на Elastic Beanstalk, который позаботится обо всех сервисах AWS, необходимых для самовосстанавливающейся и масштабируемой среды. Как только вы запустите свое первое приложение, вы сможете глубоко погрузиться в настройку и ознакомиться с компонентами.

George Rushby 13.12.2020 08:40
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
3
1
240
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я понял, что CloudFront требуется Elastic Load Balancer.

ELB не требуется для использования CF, но он упрощает несколько вещей, таких как использование HTTPS между CF и вашими серверами.

мне нужно развернуть мои файлы PHP на обоих экземплярах EC2?

Да, но это не делается "вручную". Вместо этого это обычно делается с помощью пользовательских данных (или пользовательских AMI) и групп автоматического масштабирования. Таким образом, вы должны были бы прочитать на этих темах, как это сделать.

Экземпляр EC2 содержит собственную базу данных MySQL в собственном хранилище EBS.

Ваша БД должна быть за пределами ваших веб-серверов. Если вы хотите разместить его самостоятельно, то это будет выделенный экземпляр. Если вы хотите использовать управляемое решение, вы можете перенести свой MySQL на RDS MySQL.

Как выглядит сквозной поток запросов?

Как вы описали.

Еще раз спасибо! Ты жжешь.

KoreanDude 13.12.2020 19:25

@KoreanDude Нет проблем. Рад, что ответ оказался полезным :-)

Marcin 13.12.2020 23:43

Другие вопросы по теме