Alvine PHP-Framework

Das Alvine PHP-Framwork ist grundlegend so ausgelegt, das unterschiedliche Speichermöglichkeiten für die verschiedenen Einsatzmöglichkeiten verwendet werden können und sollen. So gibt es für Session-Daten mit einer geringen Haltbarkeit andere Anforderungen als für Buchhaltungsdaten.

Unterschiedliche Anforderungen

Für ein Unternehmen ist die Datenhaltung eines der entscheidenden Faktoren, da die Daten oft deutlich länger leben müssen, als die verwendeten Programme. So muss man in Deutschland sicherstellen, das der Zugriff auf bestimmte steuerrelevante Dokumente auch noch in zehn Jahren gewährleistet werden kann. Für Sessiondaten eines Benutzers hineggend muss nur eine begrenzte Lebensdauer gewährleistet werden. Allerdings sollte der Zugriff auf diese Daten - um einen schnellen Zugriff auch bei hoher Last zu gewährleisten - möglichst einfach skalierbar sein. In der nachfolgenden Tabelle sind die einzelnen Produkte den Anforderungen zugeordnet.

Bei der Entwicklung einer Alvine2 Anwendung muss man für seinen Daten eine Optimale Balance aus Wartungsaufwand durch unterschiedliche Systeme und perfektem Einsatz der entsprechenden Technologie entscheiden.

Daten Anforderungen Produkte
Finanzdaten Lange Speicherzeit, transaktionsfähig, Sicherheit der Daten RDBS: MySQL, Postgres, OracleDB
Sitzungsdaten hohe Verfügbarkeit, skalierbar, geringe Lebensdauer, hohe Geschwindigkeit für lesende und schreibende ZugriffFür eine höhere Haltbarkeit der Daten, können die Datentransparent auf ein weiteres Medium geschrieben werden. Redis, Riak, Memcache
Warenkorbdaten hohe Verfügbarkeit, skalierbar Redis, Riak
Stammdaten hohe Lesegeschwindigkeit, bei geringen Schreibvorgängen mongoDB, Noe4J
Logdateien große Datenmengen, lange Lebenszeit, hohe Geschwindigkeit für Auswertung Casandra
Suchindex Skalierbarkeit, hohe Geschwindigkeit bei Suchanfragen Solr

Die aktuelle Version des Frameworks kann auf der Download-Seite download.alvine.io heruntergeladen werden.

Unsere Designziele sind

Die Entwicklung von Alvine setzt auf der neusten Version von PHP (aktuell 7) auf und wird streng objektorientiert entwickelt. Die obersten Ziele sind:

  • Gut getestet
  • Objektorientierung
  • hohe Performance
  • gut dokumentiert