Web Shop mit Xojo

hallo,

kann man mit Xojo “Online Shop” programmieren? Wurde schon mal so was gemacht?

danke

Kommt drauf an was Du als Kundenstamm gedenkst.
Je nach Umsatz mußt Du Steuern abdrücken an andere Länder
bzw. mit dem Finanzamt rum ärgern.
Und verschiedene Bezahlarten unterstützen.
Datenschutz beachten etc.
Generell selbst absichern.
Würde da wenn zu einem fertigen OpenSource Shop tendieren,
auf einem VPS oder bereit gestellt.
Einfach gesehen hat man Artikel mit Preis X und Menge, einen Warenkorb,
Kundendaten, Bezahl Verlauf und eine Rechnung als PDF.
Als Datenbank z.B. PostgreSQL.
Könnte man 0815 in einer Woche fertig haben.

wie viele gleichzeitige Zugriffe kann so ein Xojo Web App erlauben?

Ich meine die Port Nummern sind je IP4 auf 16 Bit beschränkt, also theoretisch 65535 wenn alle frei wären.
Bei TCP lauscht ein Port und läßt Verbindungen zu oder lehnt die ab.
Der Datenverkehr ist dann typisch über zwei ausgehandelte Ports wie ein Strohhalm.
Habe noch nie ein Last Test gemacht, kann ich Dir nicht beantworten.
Wenn die Web App hinter einem MS IIS genutzt wird bist Du abhängig von MS Lizenzen was die Anzahl der Verbindungen anbelangt.

um die 150 Session pro App. Wobei ein Benutzer schnell mehr als eine Session belegt. Mit einem Workloadbalancer könntest Du aber den Traffic auf mehrere Apps verteilen. Ich mache sehr viel mit Web 2.0. Ein WebShop wäre allerdings das Letzte woran ich denken würde. Es sei denn es ist was individuelles im Sinne von “self service” für einen Verein z.B. der nur über Login zugänglich ist. Für einen Webshop der offen im Netz hängt, ist es meines Erachtens jetzt und absehbar das falsche Tool.

1 Like

Warum dieser Wert?
Hat das was mit Speicher zu tun oder wird es dann instabil oder langsam oder so?

Steht hier unter “Connections and Sessions”: https://documentation.xojo.com/topics/web/web_app_optimization.html

Ich vermute es liegt am eingebauten Server und was der sinnvollweise mit einer CPU erledigen kann.

1 Like

was auch immer hiermit gemeint ist konnte ich auf die schnelle nicht finden

For instance, you can specify a command line option to increase the number of simultaneous connections.

1 Like

ja, aber es gilt eben auch

“A Xojo web app has its own web server built-in, but it is not as full-featured as a dedicated web server such as Apache. Tests suggest that a Xojo web app should handle a couple hundred users without a problem, depending on what the app is doing.”

Und das ist meistens zu wenig für ein Web Shop ;-). Und mit loadbalancing wird der Spass dann schnell sehr teuer, entweder großer Server oder mehrere … Aber ich denke dafür ist es auch nicht gebaut. Wie Du richtig sagst, gibt es dafür bessere Tools. Für einen kleinen Shop, Wordpress mit Plugins oder eben Cloud-Lösungen und SaaS-WebShops.

1 Like

hier
https://documentation.xojo.com/api/web/webapplication.html

z.B.
–MaxSockets=300

1 Like

Bitte, bitte, bitte, schreib deinen Webshop nicht in Xojo.

Xojo ist ein gutes Tool für Anwendungen aber es hat auch erhebliche Nachteile für das was du vorhast.

Hier ein paar Dinge, die eine Entwicklung unnötig schwer machenn

  • SEO ist sehr schwer.
  • Die Ladegeschwindigkeit, verglichen mit normalen Webseiten, ist sehr schlecht.
  • Zurück-Button-Implementation ist nicht so einfach.
  • Ein gutes Shop-UI hinzubekommen, was für einen Webshop wichtig ist, ist nicht so einfach.
  • Zahlungsdienstleister musst alle einzeln einbinden. Manche leiten die Nutzer nach der Zahlung wieder auf die Ursprungs-Seite, das macht das Session-Handling grausig.
  • Responsiveness (mobile UIs) sind nicht so einfach.
  • Last-Verteilung bei vielen Nutzern kann herausfordernd werden.

Und hier ein paar Dinge, die wegen Xojo selbst dir Kopfzerbrechen bereiten werden:

  • Es gibt aktuell ein Memory-Leak, das dich dazu zwingt deine Anwendung alle paar Tage neu zu starten.
  • Das Web 2.0-Framework ist noch weit entfernt davon als “stable” und ausgewachsen zu gelten.
  • Web 1.0-Framework ist nicht weiter unterstützt und wird - trotz vieler Bugs - nicht weiter entwickelt.
  • Ein Webshop wird viele ContainerControls benötigen - hier ist die Ladezeit aktuell nicht gut.
  • Die WebListbox hat noch einige Bugs.

Kurzum:
Das Xojo Webframework ist definitiv nicht für so einen Anwendungsfall gedacht. Dafür gibt es auch hervorragende andere Software, wie WooCommerce, Oxid, Magento, Stryker …

Was möglich ist, ist dass du eine Bezahl-Funktion in eine Webapp einbaust, darüberhinaus würde ich dir aber raten lieber ein PHP- oder Node-basiertes System oder gleich ein CMS zu nehmen. Das spart richtig viel Arbeit und Kopfschmerzen.

3 Likes

ok, danke für eure Nachrichten.
Ich kann aber auch nach einiger Recherchen sagen;
es gibt so viele e-commerce software, aber keins davon 100%; eher so um die 70%. Ausser ein paar Enterprice Modelle.
Meistens geht es bei den Anbieter von Online Shop Systemen um die Umsatzbeteiligung über den Online Händler, nicht um die software selbst.

Das kenne ich, habe diese Datenbank mal selbst gefüllt über VB6 in meinen besten Jahren.

Ich meine OpenCart sah auch gut aus.
https://www.opencart.com

Dann such dir ein System, das du erweitern kennst (siehe unten), anstatt alles von Null auf neu zu schreiben, in einer Sprache die in keinster Weise dafür geeignet ist.

Dann kennst du die wichtigsten Systeme nicht.

  • WooCommerce
    • kannst du mit Wordpress selbst hosten,
    • ist extrem anpassbar,
    • bietet tausende Plugins und hat eine extrem gute Dokumentation.
    • Alles was dir fehlt, kannst du dort sehr simpel (mit PHP) hinzufügen, ändern, etc.
    • Importe, Exporte sind einfach und weil alles in MySQL gespeichert wird, kannst deine Business-Logik auch direkt an die DB anklemmen.
    • Außerdem gibt es ein REST-Interface, so dass du auch direkt über CRUD die Daten verwalten kannst.
  • Magento
    • ist der Platzhirsch auf den selbstgehosten Systemen,
    • ist ähnlich umfangreich wie WooCommerce, kommt aber ohne den Wordpress-Overhead.
    • ist näher an Enterprise dran und gerade für extrem komplexe Webshops i. d. R. die richtige Wahl.
  • Spryker
    • nimmst du, wenn die anderen beiden Systeme dir nicht genug bieten.
    • das ist ein Webshop-Framework. Extrem versatil, bringt aber alle wichtigen Grundfunktionen, wie Datenbank, Export, Import, REST, Zahlungsanbindung, Datenschutz, SEO genau so mit
  • Weitere Systeme, die auch gut sind:
    • Oxid
    • osCommerce
    • Prestashop
    • Gambio
    • Lightspeed

Alle haben gemeinsam, dass dir 80% der eigentlichen Arbeit abgenommen wird, dass sie nicht auf einem verbuggten Webframework aufbauen, idR. sogar kostenlos sind, hervorragend für ihren Anforderungsfall dokumentiert sind, viele Anwender haben, die die gleichen Probleme haben könnten wie du (mit einem Xojo-Webshop bist du hier alleine) und dass sie die technischen Nachteile einer Xojo-Webapp nicht haben (SEO, Loadbalancing, Session-Management, Auslastung, Memoryleaks, Bugs etc).

Darum nochmal:
Tu dir den Gefallen, nutze nicht Xojo zum Schreiben eines Webshops, ich kann das nicht oft genug sagen.

2 Likes

Das unterschreibe ich auc so. Warum also überhaupt Xojo? Nun, wie @Lars_Lehmann schreibt liegen bei den meisten System die Daten in einer Datenbank. Und für Workflows, Reportings usw. kann Xojo dann sehr nützlich sein, weil man z.B. einfach viel Erfahrung mit Xojo hat, und/oder schon ähnliche Routinen in Xojo geschrieben hat usw. Ich benutzer Xojo zu 99,9% für solche “Interfaces”.

Beispiel: wir nutzen jeweils ein Ticket-System und ein Zeiterfassungssystem in der Cloud. Nie käme ich auf die Idee das selber zu basteln, und schon gar nicht mit Xojo Web. Aber ich brauche Auswertungen aus beiden Systemen und Abgleiche, Plausi-Checks, aus dem Zeiterfassungssystem will ich unser Abrechnungssystem füttern usw. Alle Systeme haben APIs, und genau da kommt (für mich) Xojo ins Spiel. Warum Xojo? Weil ich es kann, und auch wenn ich andere Programmiersprache kann, bin ich damit einfach extrem schnell. Ich glaube nicht einmal, das der Hersteller selbst sein Tool für die Erstellung eines WebShops empfehlen würde, es ist dafür nicht gebaut.

1 Like