2014-08-27 2 views
0

В настоящее время у нас есть приложение, которое работает на одном выделенном сервере. Я бы хотел переместить его в OpenShift. Он имеет:Как лучше всего развернуть это многоуровневое приложение?

  1. Публичный стороне веб-приложение написано в филиппинских
  2. Java, приложение для администраторов, работающих на Wildfly
  3. База данных Mysql
  4. Файловая система, содержащая множество изображений и документов, которые должны быть доступны как для приложений Java, так и для PhP. Третий участник ftp - это файл данных на сервер каждый день, а perl-скрипт загружает его в db и файловую систему.
  5. Perl скрипт иногда запускает ffmpeg для создания видео, чтения изображений и записи видео в файловую систему.

Является OpenShift хорошим решением для этого, или было бы лучше использовать AWS непосредственно вместо этого (например, потому что они посвятили компоненты файловой системы?)

Благодаря Майкл Дэвис Оттава

ответ

1

Общая файловая система, безусловно, будет самой большой проблемой здесь. Вы можете обойти это, настроив ваши приложения на использование Amazon S3 или какой-либо другой общей файловой системы Cloud, хотя довольно легко.

Что касается остальной части приложения, если бы я устанавливал это, я бы: Настроить масштабированное приложение PHP, даже если вы установите масштабирование только для использования 1 передачи, это позволит вам разместить базу данных MySQL на ней и даже выбрать для него другой размер, например, иметь средние сетевые передачи (которые запускают php) и большую передачу, которая запускает базу данных MySQL. Это также позволит вашему механизму wildfly получить доступ к базе данных, поскольку у него будет полное доменное имя (полное доменное имя), доступное любому из ваших приложений в вашей учетной записи. Однако имейте в виду, что он будет использовать нестандартный порт вместо 3306.

Тогда вы можете настроить сервер WildFly как любой размер, который вы хотите, но помните, что переменные соединения MySQL не будут там, вам придется вручную вводить их в свое приложение Java.

Что касается скрипта perl, в зависимости от того, насколько он интенсивный, вы можете запускать его на своем собственном механизме любого размера с некоторым дополнительным хранилищем, или вы можете найти его с помощью приложения php или java в качестве задания cron , Вы можете хранить файлы на Amazon S3 и вытаскивать их/загружать, так как на них работают ffmpeg. Поскольку OpenShift также размещен на Amazon (в регионе США-ВОСТОК), эти операции должны быть довольно быстрыми, если вы также поместите свой ведро S3 в регион US-EAST.

Это мои мысли, надеюсь, что это поможет. Не стесняйтесь задавать вопросы, если они у вас есть. Вы также можете посетить http://help.openshift.com и в разделе «Свяжитесь с нами» нажмите «Отправить запрос» и убедитесь, что вы ссылаетесь на этот вопрос StackOverflow, чтобы я знал, о чем вы говорите, вы можете задать любые вопросы, которые могут возникнуть, и мы можем обсудить их решения ,

+0

Это очень полезно, спасибо. Одной из частей, о которой я не понимал, была файловая система - мне не приходило в голову смешивать OpenShift с AWS, но почему бы и нет? –

+0

Каждый механизм OpenShift имеет собственную файловую систему, даже если он находится в масштабированном приложении, и они не могут получить доступ к файлам других файлов в OPENSHIFT_DATA_DIR или файлам, которые загружаются пользователями. Таким образом, взаимодействие вашего кода с Amazon S3 было бы таким. Для него уже много библиотек, например paperclip для Rails. – 2014-08-27 18:04:17

Смежные вопросы