У меня под управлением монолитный веб-сайт электронной коммерции, и я хотел бы расширить его до нескольких серверов, используя балансировщик нагрузки и один сервер базы данных.
load balancer -> server 1 -> db server
| ^
L-> server 2 |
и на каждом сервере есть веб-приложение для электронной коммерции, и исходные коды этих веб-приложений идентичны.
Эти идентичные исходные коды заставляют меня думать, что я могу использовать хранилище AWS EFS для совместного использования одного и того же исходного кода на нескольких серверах, так что мне нужно управлять только одним исходным кодом.
Однако я не совсем уверен, что такая структура сервера хороша или плоха.
Пожалуйста, дайте мне знать что-нибудь получше или что нужно учесть, прежде чем внедрять эту структуру сервера.
Спасибо!!
Почему у вас на сервере исходный код? Это PHP или интерпретируемый язык? Если это скомпилированный язык, держите исходный код подальше от серверов.
Я думаю, что лучшей практикой будет держать ваш код в системе контроля версий, например AWS CodeCommit, а затем создавать / развертывать с помощью CodeBuild и CodePipeline. Затем у вас есть два основных варианта развертывания, если вы хотите автоматическое масштабирование: