![Page 1: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/1.jpg)
Konzeption und prototypische Realisierung einer einfachen, hochgradig skalierbaren
Multi-Mandanten-Architektur auf Basis der Google Cloud Services
Abschlussvortrag Bachelorarbeit
Sebastian Wenninger
17.10.2011
Betreuer: Prof. Dr. Florian Matthes
1
1Montag, 17. Oktober 11
![Page 2: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/2.jpg)
2
Agenda
1. Motivation
2. Kontext
3. Realisierung
4. Demo
5. Ausblick
2Montag, 17. Oktober 11
![Page 3: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/3.jpg)
3
1. Motivation
Über commercetools:
Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service eCommerce-Lösung an. Kunden wie Red Bull, Burton und Brita betreiben internationale Shop-Lösungen auf der geclusterten Technologie.Neben dem Hauptprodukt erweitert commercetools stetig das Produktsortiment und evaluiert verschiedene Plattform- und Cloud-Konzepte. commercetools hat seinen Sitz mit aktuell 25 Mitarbeitern in München.
3Montag, 17. Oktober 11
![Page 4: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/4.jpg)
4
• iPhone-Shop Lösung vorhanden, aber kein Backend zur Verwaltung der Daten• Ziel der Arbeit: Prototypische Entwicklung eines Backends
• Anforderungen: - hoch skalierend- multi-tenant- nicht auf der eigenen Infrastruktur
➡ Nutzung von Platform-as-a-Service in der Cloud➡ Evaluierung der Google-App-Engine (GAE) und der beteiligten Technologien
1. Motivation
4Montag, 17. Oktober 11
![Page 5: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/5.jpg)
5
2. Kontext - GAE
Quelle: http://www.byteonic.com/2009/overview-of-java-support-in-google-app-engine/
5Montag, 17. Oktober 11
![Page 6: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/6.jpg)
6
2. Kontext - Multi-Tenancy
Single-Tenant Multi-Tenant
Quelle: http://www.itwissen.info/definition/lexikon/Multi-Tenancy-Architektur-multitenancy-architecture.html
6Montag, 17. Oktober 11
![Page 7: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/7.jpg)
7
3. Realisierung3-Schichten-Architektur:
7Montag, 17. Oktober 11
![Page 8: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/8.jpg)
8
Datenmodell:
3.1 Persistenzschicht
8Montag, 17. Oktober 11
![Page 9: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/9.jpg)
Probleme:
• Einschränkungen des GAE-Datastore:
• Entities < 1MB (z.B. bei Produktbildern)
• Keine LIKE-Queries
• Umsetzung der Relationships, z.B. Produkte - Varianten
9
3.1 Persistenzschicht
9Montag, 17. Oktober 11
![Page 10: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/10.jpg)
• Interaktion mit der Persistenzschicht in Entity-spezifischen Services
• CRUD + Validierung
10
3.2 Applikationsschicht
Probleme:
• Kommunikation mit User Interface (GWT-RequestFactory) über Proxy-Interfaces
➡ Bei Änderungen manuelle Synchronisation von Code notwendig
• Automatische Validierung durch die RequestFactory
• Referenzielle Integrität
10Montag, 17. Oktober 11
![Page 11: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/11.jpg)
Zwei Ausprägungen:
• Webservice (Restlet):
- Kommunikation über JSON-Objekte
- Absicherung durch OAuth mit Bearer-Tokens + HTTPS
• AdminPanel, UserPanel (GWT)
- Programmierung in Java, keine größeren HTML / Javascript / CSS Kenntnisse notwendig
- Model-View-Presenter (Activities & Places)
11
3.3 Präsentationsschicht
11Montag, 17. Oktober 11
![Page 12: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/12.jpg)
Probleme:• Komplizierte Dokumentation von Restlet (nur Minimalbeispiele)
• Eigene OAuth-Implementierung (+Wechsel der Tokens)
• GWT Aufwändig zu testen
• Kommunikation mit der Applikationsschicht nicht trivial (RequestFactory)
• Einarbeiten in Activities & Places
• Aufteilung der Website in mehrere Teilbereiche mit Activities & Places
12
3.3 Präsentationsschicht
12Montag, 17. Oktober 11
![Page 13: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/13.jpg)
DEMO
13
4. Demo
13Montag, 17. Oktober 11
![Page 14: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/14.jpg)
Kurzfristig:
• Implementierung einer Warenkorb-Logik
• Steigerung der Performance
Langfristig:
• Entwicklung von Standard-Applikationen
• Kompletter Shop-Baukasten (evtl. inklusive CMS)
14
5. Ausblick
14Montag, 17. Oktober 11
![Page 15: Konzeption und prototypische Realisierung einer einfachen ......Über commercetools: Die commercetools GmbH wurde 2006 gegründet und bietet ihren Kunden eine Software-as-a- Service](https://reader033.vdokument.com/reader033/viewer/2022053022/604df462056c472c24548be0/html5/thumbnails/15.jpg)
Vielen Danke für Ihre Aufmerksamkeit.
Fragen?
15
Q & A
15Montag, 17. Oktober 11