Frage

Ich möchte eine Website auf Amazon-Servern, das veröffentlichen:

  1. Läuft CakePHP
  2. Verwendet MySQL um Daten zu speichern
  3. Ermöglicht Benutzern das Hochladen von Audio über Flash (zur Zeit mit einem Flash Media Server gehostet) und hören später auf die Dateien

Benötige ich Amazon EC2 für die Website, RDS für die MySQL-Datenbank und Cloudfront für die FMS? Ich würde wirklich wie eine Komplettlösung, welche Dienste ich verwenden soll.

Danke.

War es hilfreich?

Lösung

Zunächst müssen Sie EC2-Service, um eine virtuelle Maschine zu haben, wo Sie Apache, PHP und Ihre Web-Anwendung installieren können.

Dann müssen Sie auch einen Datenbankserver und Datenspeicher für die Medien-Dateien. Der empfohlene Weg ist genau das, was Sie vorschlagen. RDS für MySQL und Cloudfront als Datei-Repository

Zunächst keine der oben genannten Dienste (RDS, Cloudfront und sogar EBS) zur Verfügung stand. Entwickler haben keine Möglichkeit, eine MySQL-Datenbank zu verwenden, denn selbst wenn es in einer EC2-Instanz installiert wurde, wird die Instanz nicht bleiben und läuft garantiert und wenn die Instanz verloren geht, werden die Daten ebenfalls verloren. Aus diesem Grunde wurde EBS eingeführt. Es erstellt eine Lagerung mit garantierter Ausdauer montiert, dass Sie von der EC2-Instanz zugreifen. Theoretisch könnte man MySQL dort installieren und verwenden, um die Flash-Dateien zu speichern. Wenn Sie nur Dateien über das HTTP-Protokoll dienen wollen, gibt es kein Problem mit der EBS.

Cloudfront hat jedoch einige Vorteile:

  • Benutzer zum nächstgelegenen Rand Standort automatisch weitergeleitet werden für hohe Leistung Lieferung Ihrer Inhalte.
  • Sie können auch Inhalte über das das RTMP-Protokoll zu streamen verwenden.
  • Sie haben keine Sorgen zu machen über die Größe des Speichers. Mit EBS erstellen Sie einen Speicher mit einer bestimmten Größe. Dies könnte ein Problem sein, wenn Sie später herausfinden, dass Sie mehr Speicherplatz benötigen. Mit Cloudfront werden die Dateien in S3 installiert und Sie nicht Sorge über ihre Größe benötigen.
  • Sie haben keine Web-Server-Kapazität verschwenden. Wenn Sie EBS verwenden, werden die Dateien vom Server in EC2 serviert werden.

Sie können auch S3 verwenden, aber Sie würden das RTMP-Protokoll verwenden, nicht in der Lage, und Sie müßten manuell Links zu Dateien erstellen. Auch wäre es nicht möglich sein, Ihren Domain-Namen für die Dateien zu verwenden.

RDS hat auch einige Vorteile gegenüber der Installation von MySQL in EC2, EBS:

  • automatisierte Datenbanksicherungen
  • Sie können Ihre Datenbank mit Amazon Cloudwatch (kostenloser Service)
  • überwachen

Andere Tipps

Sie müssen EC2 Start-Instanz und Ihren LAMP-Server erstellen. RDS ist gut, wenn Sie nicht db selbst zu verwalten MySql brauchen, aber ein limitierender Faktor von RDS ist, kann man nicht DB-Replikation hat.

Für persistente Speicher, können Sie für die Datendatei verwenden, EBS oder S3 machen.

Eine Sache, nicht in eine dieser Antworten erwähnt ist die Sicherheit, dass kann (oder auch nicht), müssen die Dateien Zugang zu gehen um. Cloud-Netzwerke sind gut für die öffentlich zugängliche Daten, aber ich habe nicht ein Cloud-Netzwerk noch, dass liefert einen granularen Ebene des Dateizugriffs auf einer Basis pro Benutzer gesehen. Während Sie in der Lage sein können, die URL zu verschleiern ist, um Zugriff auf Dateien, so dass es nicht leicht ist, sequentiell Audiodatei-IDs zu erraten, die nicht genug sein können, wenn die Menschen privat Audio halten. Nicht tut es nicht zu sagen, nur die Entscheidung, mit Vorsicht machen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top