1. E-Commerce-Plattform-Standardisierungs-Suite
1 2. Ware: Kategorieverwaltung; Produktverwaltung; Filialenverwaltung; Vorabeinzahlung; Käuferdynamik; Verwaltung von Rückerstattungen; Verwaltung von Artikeln;
Funktionsweise: Verwaltung von Artikeln; Verkaufsstatistiken; Analyse; B Kreis-Einstellung; Kreis-Themen-Verwaltung; Kreis-Berichts-Verwaltung; Artikelverwaltungssystem; Verwaltung von Artikeln; Verwaltung von Bildthemen; ;2. Technische Architektur der E-Commerce-Plattform
A. Zwei Hauptkategorien: Front-End-Server (vervollständigt hauptsächlich die Benutzerantwort), Back-End-Server (vervollständigt hauptsächlich die Datenverarbeitung). )
2. Nginx bietet eine gute Leistung bei der Speicherzuweisung und verwendet Multithreads zur Bearbeitung von Anforderungen, sodass Speicherressourcen zwischen mehreren Threads geteilt werden können, wodurch die Speichernutzung erheblich reduziert wird. Darüber hinaus verwenden wir eine segmentierte Speicherzuweisungsstrategie, um Speicher je nach Bedarf rechtzeitig zuzuweisen und freizugeben, sodass die Gesamtspeichernutzung sehr gering ist und eine große Anzahl gleichzeitiger Verbindungen unterstützt werden kann.
B. Lastausgleich1.F5 (F5 BIG-IP), der offizielle Name ist lokaler Verkehrsmanager, kann Lastausgleich der Schichten 4-7 durchführen. 2.LVS (Linux Virtual Server), ausgerichtet auf großvolumige Netzwerkanwendungen (wie Nachrichtendienste, Online-Banking, E-Commerce usw.). Die Kombination von LVS und Keepalived bietet einen hohen Lastwiderstand, eine einfache Konfiguration und einen stabilen Betrieb. Diese Methode ist auf eine Vielzahl von Anwendungen anwendbar.
⑴LVS drei Arbeitsmodi:
①VS/NAT (Virtual Server Via NAT), Netzwerkadressübersetzungstechnologie, besteht aus einem Lastausgleichsserver und mehreren echten Back-End-Servern, die einen Servercluster bilden. Vorteile: Auf dem Planungsserver muss nur eine IP-Adresse konfiguriert werden und die Servergruppe kann private IP-Adressen verwenden. Nachteile: Begrenzte Skalierbarkeit. ②VS/TUN (Virtueller Server über IP-Tunneling), Verbindungsplanung und -verwaltung sind die gleichen wie bei VS/NAT, aber die Nachrichtenweiterleitungsmethode ist anders. Umgeschriebener Satz: Der Vorteil dieser Lösung besteht darin, dass sie die Anzahl der Lastplanungsserver erheblich erhöhen und so einen leistungsstarken Superserver aufbauen kann. Es ist ein Server erforderlich, der die Protokolle „IP Tunneling“ oder „IP Encapsulation“ unterstützt.
③VS/DR (Virtual Server via Direct Routing), der Scheduler wählt dynamisch einen Server basierend auf der Auslastung jedes Servers aus. Er ändert oder kapselt keine IP-Pakete, sondern ändert die MAC-Adresse des Datenrahmens in die ausgewählte. Die MAC-Adresse des Servers und sendet dann den geänderten Datenrahmen an das LAN der Servergruppe. Es ist erforderlich, dass der Lastplaner und der eigentliche Server über eine Netzwerkkarte verfügen, die mit demselben physischen Netzwerksegment verbunden ist. Das Servernetzwerkgerät reagiert nicht auf ARP oder kann das Paket an den lokalen Socket-Port umleiten.
⑵LVS-Planungsalgorithmus; gewichtete Round-Robin-Planung; Mindestverbindung basierend auf dem Ort; Hash-Planung der Zieladresse; : Backend-Server können durch Abfragen, IP_HASH, URL_HASH, Gewichtung und andere Methoden geplant werden und unterstützen auch Gesundheitsprüfungen. Es ist kaum vom Netzwerk abhängig und arbeitet auf Schicht 7. 4.HAProxy: Es kann einige Mängel von Nginx beheben, z. B. die URL-Erkennung. Es ist besser als Nginx und kann MySQL-Lesevorgänge ausgleichen C. Cache
1. Zwei Teile: Datei-Cache (statischer Inhalt), Daten-Cache
2. Client-Cache: Header("Cache-control:must-revalidate");Header("Expires:".gmdate(" Did M Y H: i:s“,time()+(60*60*24*30)));//Abgelaufen in 30 Tagen php3 Statischer Dateicache: Varnish/Squid
5. Datencache: Memcache, Redis
1. Relationale Datenbank: MySQL, Oracle, SQL Server2 Datenbank: HBase 4. MySQL-Skalierungslösung; DRBD-Festplatten-Netzwerkspiegelung; MySQL-Datensegmentierung: Durch einen bestimmten Algorithmus werden die Daten gespeichert Datenbanken (Tabellen) werden verteilt in mehreren Bibliotheken (Tabellen) gespeichert, um den Effekt der Verteilung der Last auf ein einzelnes Gerät zu erzielen.6. Vertikale Segmentierung: Aufteilung in verschiedene Datenbanken (Hosts) nach verschiedenen Tabellen. Es eignet sich für Systeme mit geringer Kopplung zwischen Unternehmen, geringer gegenseitiger Beeinflussung und klarer Geschäftslogik. Die Regeln sind einfach und leicht zu implementieren.
Horizontale Tabellenaufteilung: Entsprechend der logischen Beziehung in der Datentabelle werden die Daten durch einen bestimmten Algorithmus in mehrere Tabellen aufgeteilt. Die Aufteilungsregel selbst ist komplizierter als die Aufteilung basierend auf Tabellennamen, und die anschließende Datenpflege ist ebenfalls komplizierter, eignet sich jedoch besser zur Reduzierung des Systemdrucks und ist eine empfohlene Verarbeitungsmethode bei Big Data mit hoher Parallelität.
E Die Nachrichtenwarteschlange von Memcache/Redis ist außerdem einfach bereitzustellen, zu warten und zu erweitern.G. Suchdesign
lucene, Sphinx und inländische Xunsearch3. Design und Implementierung der Mall-Suite
A. Mitgliedermodul
1. Modulzusammensetzung: Nach der Registrierung ist die Standardeinstellung der Käufer. Um Verkäufer zu werden, müssen Sie nach der Registrierung einen Vergleichsantrag stellen und die Prüfung bestehen. Der Login-Port für Käufer und Verkäufer existiert unabhängig voneinander. Als Grundlage der Website umfasst es grundsätzlich alle Module der Website.
2. Designidee: ① Designanforderungen:Die Benutzeroberfläche ist einfach und bequem: Registrierung und Anmeldung sind einfach und bequem, eine Mobiltelefonnummer oder E-Mail + Passwort
Sammeln Sie weitere Mitgliedsinformationen: Mitgliederzentrum-Sammlung
Differenziertes Management: Mitgliederhierarchie und Managementsystem
Master-Slave-Koordination: Master-Tabelle und Slave-Tabelle
Vernünftige Nutzung von Redundanz: Beispielsweise werden auch Benutzernamen gespeichert die Ladentabelle
Funktionale Anforderungen für die Käufermitgliedschaft: Registrierung und Anmeldung; Verwaltung der Käufermitgliedschaftsdaten; Kontosicherheit; andere verwandte Funktionen;
kleine Module: Produktklassifizierung; Typ; Spezifikationen und Attributwerte;
② Marke: neu (von der Plattform hinzugefügt und von Händlern hinzugefügt, Händler müssen überprüft werden), Bearbeiten, Löschen
④Typen und Attribute: Die Plattform funktioniert
① Produktbezogenes Datentabellendesign
Die Produktklassifizierungstabelle und die Typentabelle stehen in Beziehung zu Attributen, Spezifikationen und Marken über Typen. Es besteht eine Eins-zu-Viele-Beziehung zur Produkttabelle
Die Attributserientabelle enthält eine Attributtabelle und eine Attributwerttabelle, die eine Eins-zu-Viele-Beziehung zwischen der Attributtabelle und der Typtabelle haben Eine Viele-zu-Eins-Beziehung mit der Produkttabelle und den Attributen Es handelt sich um eine Viele-zu-Eins-Beziehung mit der Produktbeziehungstabelle als Brücke Die Spezifikationsserientabelle umfasst eine Spezifikationstabelle und eine Spezifikationswerttabelle, bei denen es sich um eine Eins-zu-Viele-Beziehung handelt. Die Spezifikationstabelle und die Typtabelle verwenden die Typ- und Spezifikationsbeziehungstabelle als Brücke, um eine Viele-zu-Viele-Beziehung zu bilden. Die Beziehung zwischen der Spezifikationstabelle, der Spezifikationswerttabelle und der Produkttabelle ist eine Viele-zu-Viele-Beziehung.
Die Markentabelle verwendet die Typ- und Markenbeziehungstabelle als Brücke und ist mit der Typtabelle eine Viele-zu-Viele-Methode. Die Markentabelle und die Produkttabelle sind eins zu viele.
Die Produktserientabelle umfasst eine Produkttabelle, eine öffentliche Produkttabelle und eine Produktbildtabelle. Die Produkttabelle und die öffentliche Produkttabelle sind viele zu eins, und die Produktbildtabelle ist viele zu viele②Verwandte Designideen für die Plattformverwaltung von Produkten
Der Plattformadministrator muss zuerst das Produkt fertigstellen Klassifizierung, Marke, Typ, Spezifikation, Einstellung von Attributen
③Designideen für Händler zur Veröffentlichung von Produktbildern;
Verwendung Volltextsuche
Kostenlose Aktionen: Kaufen Sie eins und erhalten Sie eins gratis, kaufen Sie eins und erhalten Sie ein Geschenk, kaufen Sie eins und erhalten Sie Punkte, kaufen Sie eins und erhalten Sie einen Gutschein ihm, dieses Produkt Es kann zusammen mit anderen Produkten verkauft werden, und der Gesamtpreis wird entsprechend reduziert.
Zeitlich begrenzte Aktion
Aktion im Lotteriestil
Interaktive Aktion: gute Bewertungen und Einladungen
Mehrwertaktionen: kostenloser Versand, Zusatzleistungen
2. Designideen
Überzeugungsfunktion
Feedback-Informationen
Umsatz anregen
②Moduldesign-Beispiel (Gruppenkaufmodul)
Gruppeneinkaufsverwaltung: Die Plattform führt Bewertungen durch und kann jederzeit aus den Regalen entfernt werden
„Demnächst erhältlich“:
hinzufügen zu Sucheinstellungen: Produktklassifizierung, Preisspanne usw.
Detaillierte Informationen: Bilder, Preise, Beschreibungen sind auffällig, Status deutlich sichtbar
Gruppenbestellungen: im Bestellmodul zusammengefasst
D. Warenkorbmodul
1. Modulzusammensetzung: Funktionen zum Hinzufügen, Löschen, Bearbeiten und Sammeln von Produkten① Designanforderungen:
Persistente Speicherung: Cookies vorher speichern Anmelden, nach dem Anmelden in der Datenbank speichern, gekaufte Artikel nach erfolgreicher Bestellung löschen. Produkte
①Verteilergebiet: Eine davon ist die Standardeinstellung für den Verwaltungsbereich, die andere ist die Einstellung für den Nachnahmebereich. Beim Laden der Seite werden alle regionalen Daten durch die Kreis-ID vervollständigt, die die Nachnahme unterstützt Wird beim Bearbeiten der Region in das JS-Array eingefügt, ob die Region der oberen Ebene ausgewählt ist und die Mengenänderung vom Kunden JS abgeschlossen wird
②Vertriebsunternehmen: Geben Sie mindestens den Firmennamen, die Website, den Firmencode usw. an. ③Empfangsadresse: N kann gespeichert werden, eine Standardlieferadresse festlegenF In welcher Phase sich die Bestellung befindet und welche Rolle sie bearbeiten darf, ist die Hauptentscheidungsgrundlage
Im Allgemeinen wird die digitale Identifizierung verwendet, die mindestens Verzug, Stornierung, Zahlung, Versand, Erhalt und möglicherweise auch Löschung umfasst. Überprüfung, Lagerung, Versand, Sperre, Rückgabe, Rückerstattung, Schlichtung usw. usw , der Gesamtpreis des Produkts, der Gesamtbestellbetrag, der Rabattbetrag, die Fracht, der Nennwert des Gutscheins, der Rückerstattungsbetrag usw.
Jianyi kann verwandte Elemente wie Zeit und Zufallszahl vollständig berücksichtigen , Händler-ID, Mitglieds-ID und Auto-Inkrement-ID. Der Zweck des Designs besteht darin, sicherzustellen, dass die Wahrscheinlichkeit einer Duplizierung von Bestellnummern bei hoher Parallelität minimiert wird
Belegten Lagerbestand bestellen
Unverkäuflicher Lagerbestand
Gesperrter Lagerbestand: Während Werbeaktionen
Virtueller Lagerbestand
⑤ Kombinierte Zahlung
OK Kombinieren Sie Bestellungen von verschiedenen Händlern. Einheitliche Zahlung
⑥Rollenberechtigungen
Käufer: Bestellstornierung, Löschung (in den Papierkorb legen), Rückerstattung, Rückgabe, Wareneingang, Bewertung usw.
Händler: Bestellprüfung, Abschluss, Lieferung, After-Sales-Bearbeitung usw .
Plattform: Auftragsstornierung, Änderung des Zahlungsstatus, Löschung, Schlichtung usw. Menge, Fracht, Status usw.
Hilfstabelle: Hilfsinformationen wie Versandinformationen, Rechnungsinformationen, Empfängerinformationen, Werbeinformationen usw.
Produkttabelle bestellen: Einige Produktlisteninformationen in der Bestellung
Zahlungsauftragstabelle: Entwickelt für kombinierte Zahlungen, speichern Sie eine Zahlungsauftragsnummer und verwenden Sie eine Zahlungsauftragsnummer für N Auftragstabellendatensätze
Auftragsprotokolltabelle: Zeichnen Sie das Vorgangsprotokoll auf, wenn sich der Auftragsinhalt ändert, einschließlich Bediener, Betriebszeit, Vorgangsinhalt usw.
2. Geben Sie eine Bestellung auf.
G. Zahlungsschnittstelle
1 aber die Bestellung wurde noch nicht abgeschlossen (bei Bestätigung des Empfangs). Um Streitigkeiten zu vermeiden, muss der Bestellstatus gesperrt werden
②Rückgabe: Basierend auf dem Rückerstattungsprozess werden die Schritte Käuferversand und Händlerempfang hinzugefügt.
Wenn der Händler einer Rückerstattung oder Rückgabe des Produkts nicht zustimmt, kann der Käufer erneut einen Antrag stellen oder sich bei der Plattform über den Händler beschweren und entsprechende Beweise zur Schlichtung durch den Systemadministrator einreichen.
④Anhand einer Tabelle mit einem Feld können Sie erkennen, ob es sich um eine Rückerstattung oder eine Retoure handelt
⑤Die Gründe für Rückerstattungen und Retouren werden vom Systemadministrator im Hintergrund eingegeben und vom Käufer bei der Antragstellung ausgewählt. 2. Entwicklungskompetenzen
① Sie müssen zunächst die Regeln festlegen und Ihre Ideen klären. Wenn Sie die Logik nicht verstehen, kommunizieren und lösen Sie sie rechtzeitig.
② Versuchen Sie, den Code vollständig zu nutzen, und führen Sie unbedingt eine serverseitige Datenüberprüfung durch.
AbrechnungsmodulDie Abrechnung erfolgt regelmäßig. Nachdem die Zahlung erfolgt ist, wartet das System auf die Bestätigung der Rechnung. Der Händler beginnt nach der Bestätigung mit der Systemüberprüfung. Nach Abschluss der Zahlung werden die zahlungsbezogenen Informationen im Hintergrund eingegeben und die Rechnungsbegleichung abgeschlossen.
1. Designidee
①Datentabellendesign: Abrechnungstabelle, einschließlich Feldern wie Datum, Gesamtbestellbetrag, Gesamtfracht, Gesamterstattungsbetrag, Gesamtprovisionsbetrag, Rückerstattungsprovisionsbetrag, Filialgebühren, fälliger Betrag und Abrechnungsstatus. ;Die Rechnungsübersichtstabelle ist eine statistische Zusammenfassung der Abrechnungsinformationen aller Händler jeden Monat;
②Abrechnungsprozessdesign: Ausgangskonten, das System berechnet automatisch die Abrechnungskonten für diesen Monat
[Ausführungszeitpunkt] Automatisch und manuell; [Abrechnungsobjekt] Bestellungen oder Rückbuchungen, die durch Transaktionen des letzten Monats abgeschlossen wurden;
[Berechnungsformel] Bestellbetrag, Provisionsbetrag (Provision = tatsächlicher Verkaufspreis des Produkts * Kaufmenge – Rabattzuordnungsbetrag), Rückbuchungsbetrag, Rückerstattungsprovision, Store-Promotion-Gebühr; ③Von der Plattform zu zahlender Betrag = Bestellbetrag – Provisionsbetrag – Rückbuchungsbetrag + Rückerstattungsprovision – Store-Promotion-Gebühr;
④Abgleich: Die Plattform stellt die Informationen bereit, bestätigt sie und übermittelt sie der Plattform zur Überprüfung. Führen Sie nach Abschluss der Überprüfung den Finanzprozess durch, um die Zahlung vorzunehmen. Geben Sie nach Abschluss der Zahlung die entsprechenden Zahlungsinformationen ein und senden Sie sie ab, um den Abrechnungsprozess abzuschließen.
J. Statistisches Modul1. Lassen Sie die Datenanalyse auf der Grundlage von Daten intelligent eingreifen; nutzen Sie Daten als Grundlage für die Optimierung von Geschäftsprozessen; 2. Modulzusammensetzung:
①Ansichten (PV), die Gesamtzahl, wie oft ein Browser eine Webseite lädt;
②Anzahl der Besucher (UV), unter Verwendung von Cookies zur Bestimmung absolut einheitlicher Besucher;
③Conversion-Rate, die sich auf die tatsächliche Anzahl bezieht Verbrauch Das Verhältnis der Kunden zur Gesamtzahl der Kunden, die die Website besucht haben. Transaktions-Conversion-Rate = Anzahl der Transaktionskunden/Gesamtzahl der Besucher;
④ Die durchschnittliche Besuchstiefe bezieht sich auf die Anzahl der Seiten Ihrer Website, die Benutzer während eines Besuchs durchsuchen, also das Verhältnis von PV und UV;
Wie man sich verbessert Besuche Tiefe?
Angemessene Typografie und Layout der Website;
Angemessene Navigation und angemessener interner Link-Ankertext;⑤Pro-Kopf-Verweilzeit auf der Website, durchschnittliche Website-Verweilzeit = gesamte Website-Verweilzeit/Anzahl der Sitzungen (Besuche)
⑥Seitenabsprungrate, bezieht sich auf Wenn ein Besucher auf der Zielseite ankommt und diese verlässt, ohne weitere Seiten der Website zu besuchen, spricht man von einem Bounce, also einem Sprung. Die Formel zur Berechnung der Absprungrate lautet: Anzahl der Besuche, die die Seite verlassen, geteilt durch die Gesamtzahl der Besuche auf der Seite
⑦Anzahl der bestellten Artikel
⑧Produktmenge Bestellungen
Der durchschnittliche Transaktionsbetrag bezieht sich auf die durchschnittliche Menge an Waren, die jedes Mitglied der Website innerhalb eines bestimmten Zeitraums gekauft hat, auch als Stückpreis bekannt. Der Stückpreis pro Kunde kann als durchschnittlicher Verbrauchsbetrag jedes Kunden ausgedrückt werden. Die Berechnungsformel ist der Gesamtumsatz geteilt durch die Gesamtzahl der Kunden oder der Gesamtumsatz geteilt durch die Gesamtzahl der Transaktionen
#🎜🎜 #⑩ Wiederholungskaufrate, die sich auf die Anzahl der Wiederholungskäufe dieses Produkts oder dieser Dienstleistung durch den Verbraucher bezieht. Der eine ist, dass für alle Kunden, die das Produkt gekauft haben, die Häufigkeit, mit der jeder Kunde das Produkt als unabhängige Einheit erneut gekauft hat, der Anteil an der Gesamtzahl der Wiederholungskäufe pro Zeiteinheit ist;#🎜 🎜#3. Designideen
①Die Designprinzipien der Daten selbst
# 🎜🎜#
Regelmäßige Datenanalyse: im Jahresvergleich, im N-ten Monat dieses Jahres und im N-ten Monat des letzten Jahres. Verhältnis (Jahres-zu-Jahres-Entwicklungsrate = aktuelle Periodennummer/gleiche Periode des letzten Jahres*100 %; Wachstumsrate im Vergleich zum Vorjahr = (aktueller Zeitraum – gleicher Zeitraum im letzten Jahr)/gleicher Zeitraum im letzten Jahr * 100 %; das Verhältnis zwischen dem Berichtszeitraum und dem vorherigen statistischen Zeitraum (Entwicklungsgeschwindigkeit im Vergleich zum Vormonat). = (Nummer dieser Periode / Nummer der vorherigen Periode) * 100 %; Kettenwachstumsrate = (Nummer dieser Periode - Nummer der vorherigen Periode) / Nummer der vorherigen Periode * 100 %)
# 🎜🎜#
# 🎜🎜#
②Menschenprobleme: Richtig Die Bedeutung von Daten sollte bei der Führung beginnen;
①Designanforderungen: Sicherheit; Datenintegrität;
Die Aufladetabelle zeichnet die Aufladeinformationen der Mitglieder auf Aufladeformular, Mitgliedsinformationen, Aufladebetrag, Aufladezeit, Aufladestatus usw. Wenn es einen Administratorvorgang gibt, sollte dieser auch aufgezeichnet und verwaltet werden.
In der Auszahlungstabelle werden die Auszahlungsinformationen des Mitglieds, die Mitgliedsinformationen, der Bargeldabhebungsbetrag, die Bankinformationen des Empfängers und der Zahlungsstatus der Plattform (Zahlungszeitpunkt, Betreiber usw.) erfasst. )Protokolltabelle, in der alle Vorgänge beim Ändern von Voreinzahlungen aufgezeichnet werden, einschließlich des Betrags, der sein kann, und Änderungen des eingefrorenen Betrags, in dem aufgezeichnet werden muss Im Detail umfassen die Hauptfelder Betreiberinformationen, Vorgangstyp (Bestellung, Abhebung, Aufladung, Rückerstattung usw.), verfügbare Voreinzahlung, eingefrorene Voreinzahlung, Betriebszeit, Bemerkungen usw.
# 🎜🎜#
Das obige ist der detaillierte Inhalt vonWas ist die technische Architektur der MySQL-E-Commerce-Plattform?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!