PHP Entwickler, die Cloud Services schreiben, fragen sich zu Recht, welches der Cloud Angebote verschiedener Hersteller nun das bestgeeignete für das konkrete Projekt ist. Zu Recht deshalb, weil die Entscheidung für ein Cloud Angebot aufgrund häufig proprietärer Schnittstellen eine nur schwer revidierbare Entscheidung ist.

Einen Ansatz, dieses Problem zu lösen und PHP-basierte Cloud Anwendungen portabel zu machen, d.h. leicht und ohne Code-Änderungen von einer Cloud zu einer anderen transferieren zu können, ist die Simple Cloud API von Zend Technologies.

Zend Technologies hat für verschiedene Cloud Angebote PHP Provider entwickelt, die bestimmte Cloud Funktionalitäten verschiedener Cloud Anbieter auf einen gemeinsamen Satz an Funktionsaufrufen abbilden. Zend verfolgt hierbei einen pragmatischen Weg. Im ersten Schritt liegt der Fokus auf Funktionalitäten, die von allen unterstützten Cloud Angeboten abgedeckt werden. Dazu gehören:

  • File Storage Services, für die Ablage beliebiger Dateien
  • Document Storage Services, zur Speicherung strukturierter Daten in tabellarischer Form
  • Simple Queue Services, zum Warteschlangen-basierten Versenden von Nachrichten

Unterstützung von Windows Azure Storage

Kenner von Windows Azure wissen, dass dies Funktionalitäten sind, die vom Windows Azure Storage angeboten werden. Demzufolge werden die Simple Storage API-Aufrufe auf Aufrufe der Windows Azure Storage Funktionsblöcke abgebildet.

Simple Storage API Service Windows Azure Storage Service
File Storage Blob Storage
Document Storage Table Storage
Simple Queue Queue Storage

Abbildung 1 zeigt die Struktur einer Anwendung, die über die Simple Storage API auf Windows Azur Storage zugreift.

BLD08_XX Simple Cloud API zum Zugriff auf Windows Azure Storage 
Abb 1: Zugriff auf den Windows Azure Storage über die Simple Cloud API

Die Anwendung selbst ist in PHP geschrieben und kann sowohl auf Windows Azure als auch außerhalb ausgeführt werden. Durch Nutzung der Simple Storage API kann sie ohne Änderung auf andere Clouds transferiert werden. Lediglich der passende Zend Cloud Adapter muss vorhanden sein.

Weitere Informationen

clip_image001clip_image002clip_image003clip_image004