Reduzierter Einsatz von gelb

Reduzierter Einsatz von gelb


Dieses Thema war ursprünglich eine Antwort an Peter Morris 'N-Tier' Newsgroup-Thread, aber ich beginne einen neuen Thread hier zum Thema DCOM für andere Gedanken über DCom.

Fragen und Sorgen über 'Probleme mit BoldCOM' sind in den News-Gruppen zu hören und ich möchte hier einige Hinweise geben.

Zunächst empfehle typische Probleme bei der Verwendung einer gemeinsamen CPU für die Zustellung von mehreren Clients vom Verbinden von Clients mit der CPU 'Protokoll' (und ähnliche Tricks) unterscheiden sich (mehr dazu in der Zusammenfassung, die weit unten).

Einige Screenshots visualisiert einige einfachere Lösungen, um einige spezifische 'DCOM UI-Komponente das Problem' Fett Komponenten abonniert die Einzelfelder einzelner Objekte über ein Netzwerk (oder noch schlimmer, über das Internet...). Transfer-Protokoll wird in ein Multi Benutzer Umgebung Reach alle heutigen Bandbreite versuchen begrenzt zu tun, ohne Pflege. Wenn mit Vorsicht verwendet und die gesamte Umgebung (Server und Client) einer drei Tier 'Protokoll-Lösung' der Bold DCom unterstützen Lösung hat aber auch seine Vorteile.

Schau dir die Screenshots unten und versuche mir vorzustellen, was hinter den Kulissen daran erinnern, dass keine Business-Logik auf dem Client vorhanden, keine Logik, die in der Datenbank, seine alle ausgeführten auf eins 1 vorhanden ist Server-CPU im Zusammenspiel mit mehreren Clients. Es zeigt auch, dass ein RAD-DCOM-UI nicht schlecht, werden 100 % Staatenlose und 'tot' für den Benutzer. In der Tat kann es ziemlich 'besiedelten' und scheinbar sehr aktiv und auf den Benutzer reagieren. Mit Fett DCom SIE können entscheiden, die 'Stateness' der Daten zwischen Server und Client übertragen. SIE können Ihr Vorgehen und UI-Lösungen je nach Häufigkeit der Verwendung, die CPU-Auslastung verursacht durch einzelne Aktionen und die Notwendigkeit der 'aktiven Interaktion' und Unterstützung von alternativen Daten angezeigt variieren. All dies je nach Details in Benutzeraktionen und wechselnden Kontexten in bearbeiten-Dialogen etc.. Mit dieser Freiheit sind die Schlüsselwörter 'variieren' und 'möglich' über die Techniken. Diese Schlüsselwörter angewendet werden, da Sie eine fast vollständige Palette der technischen und funktionalen Möglichkeiten haben, auch wenn Sie nicht immer unbegrenzten Kapazität (Bandbreite etc.). Somit müssen Sie Ihr Konzept variieren.

Alles gesagt hatte, lassen erinnerte Sie an die Tatsache, dass das Formular unten abgebildet ist eine voll funktionsfähige Umgebung endgültig RT (DCom-Clients in MetaFrame), Sie uns die Screenshots;

Drei Screenshots zeigen Daten in 'Zuschauer', anstatt einzelne Objektmember mit separaten DCom-Komponenten für jedes Attribut. (Beachten Sie auch, dass die meisten der Liste Griffe werden verwendet, nur wenn Suchoperationen auf Nachfrage auslösen, sind sie normalerweise ziemlich passiv, wenn nur anzeigen und Durchsuchen von Daten mit dem Formular)

Abb. 1: Auftragsbestand Form (Parzellen für spätere Verkehrsplanung) Entwurfszeit - Form sieht ziemlich 'leer' im Design-Zeit (= viele leere HTML-Viewer):

a.jpg

Abb. 2:.. .in Laufzeit der Benutzeroberfläche ist voll informativ und interaktiv.

b.jpg

Der HTML-Anzeige des Bereichs 'Parcel Details' anklicken öffnet einen regelmäßigen Dialog mit Delphi-Komponenten (bewusst nicht Fett). Zum Bestätigen Sie, dass die Daten an den Server gesendet werden, die Details in geeigneten Objektfelder verursacht das UI-Attribut 'ParcelDetailsAsHTML', um den Viewer aktualisieren, indem Sie eine einzelne neue (html) Zeichenfolge zurück an den Client senden einfügt. Nachrichten von Benutzern werden als Fehler, Warnungen oder Informationen zu der extremen Rechten, die mit Symbolen, Client eindeutige Benutzer-Sprache in html formatierte Text (oder einfache Zeichenfolgen aus Code Behauptungen oder andere Code-Nachrichten) angezeigt. Datalabels, Formular-Beschriftungen und Daten werden in der Sprache, die vom Benutzer definierten angezeigt. Die gleiche Serverfunktion gibt Text in verschiedenen Sprachen je nach 'Wer bittet'. Sprache in Laufzeit geändert werden kann (in diesem Formular nicht vollständig umgesetzt, obwohl Sie sehen sowohl schwedische als auch englische hier gemischt, sowie einige Debug-Tools in der oberen rechten Ecke zum Durchsuchen und bearbeiten alles aus Fett-Klassenmember, Meta-Daten von Staaten, Bearbeiten von Zustandsübergängen, durchlaufen der aktuellen Objektstruktur, senden/empfangen von Intra-Client Chat, Mail und mehr, kurz - dito alles (Beachten Sie - das nennt man einen 'dünnen' DCom-Client).

Abb. 3 hier sehen Sie das Ergebnis im vorherigen Dialog an der OSP geschickt und sofort zurück an den Client als ein 1 html-Zeichenfolge für den Viewer (auf der rechten Seite des neuen Dialogfensters unten) analysiert. Ein schnelles und einfaches Konzept.

c.jpg

Endlich - zeigt Abb. 3 ein Beispiel für eine normale html-hyper-Link Auslösen eines Ereignisses, das bestimmt, welche Dialog und welche Daten (da mehrere Partys in separaten Zuschauer auf der linken Seite gestapelt werden) sammeln/im Dialog angezeigt werden. Diese Felder sind etwas ganz besonderes, sie sind Passiv, die Anzeige von Daten, aber zur gleichen Zeit aktiv in der Lage, Suche nach Daten über DCom und damit sind sie 'on-Demand aktiv'. Aber diese Aktivität hat eine relativ niedrige Frequenz und sie sind zeitlich sehr begrenzt und somit hat keinen Einfluss auf Gesamtleistung sehr viel - Anzeige und Durchsuchen von Daten ist was sättigt das Netzwerk! (Die hyper-Links sind 'sensible Sprache', bevor wir vollständig dies seitens der Cleint implementiert da der html-Text vom OSP-Server generierten und damit in meinem Benutzersprache - schwedische gezeigt).

Zusammenfassung

Alle einzelnen Datenfelder in diesen Beispielen gezeigt wird, wo 'passive während sichtbar'. Gelbe COM-Komponenten wurden nur verwendet, um Stücke von gruppierten Datenfelder als lange Zeichenfolgen abrufen und wieder zurückgeschickt, nachdem Dialoge geschlossen (mit Ausnahme des Rasters die wahrscheinlich später ersetzt werden wurden, da dies eine Hot-Spot-Form in Attracs ist).

Die Gültigkeitsprüfung ist zu 100 % von Geschäftsregeln auf der Serverseite (keine Business-Logik existiert im Client) validiert wird.

Mit diesem Ansatz mischen Konzepte der 'aktive' COM Griffe und 'passive' html strings die Benutzerfunktionalität eine 'aktive' UI, aber technisch gesehen ist es fast Toten 'Stein'. Nichts eigentlich Happends außer regelmäßigen formatieren im Dialogfeld Felder überprüfen und Senden von Daten an Serverlogik zurück. Der Vorteil ist, dass die gelben Handler die Zuschauer mit den neuesten aktuellen html-Daten mithilfe des regulären Fett Abonnement-Mechanismus (Beachten Sie, dass die meisten Abonnements auf die Serverside sein wird, da das html-Attribut hält den Überblick über die Vielzahl der Felder intern auf die Serverside, sondern nur ein Feld pro Zuschauer Abonnements über DCom hat) aktualisieren.

Da die Beschriftungen und Etiketten in den html-Text sensible Sprache sind haben wir in der Tat viele Hunderte von 'Pseudo-aktive' Datenfelder auf diesem Formular...! (von der Serverseite gesehen). Der Viewer-Ansatz verringert diese große Zahl auf einen Bruchteil und die Benutzeroberfläche ist in der Tat nicht 'langsam' überhaupt noch über eine normale Netzwerkverbindung. Mit vielen Benutzern (10 +) würde eine MetaFrame-Lösung Netzwerk-Leistungsprobleme auf fast 'nichts' reduzieren.

Serverleistung

Vielleicht eine kann durcheinander bekommen über 'Performance-Problemen mit DCOM' und die Tatsache, dass eine DCOM-Lösung setzt eine gemeinsame CPU als Anwendungsserver verwenden. Beachten Sie, dass das Leistungsproblem aber keine explizite DCOM-Problem - zusammenhängt effiziente Design und Programmierung ist ein muss für jede Lösung, die mit einem gemeinsamen Anwendungsserver.

Effiziente Codierung allein reicht definitiv nicht. Kombinieren-Design & Programmierung scharf aber tut, muss man 'meinen effiziente Lösungen/Konzepte' sehr Modell ab und halten Sie es für das Design ganz zurück und vierte an die Clients. Dies ist wichtig, und wir erfahren viel einfach weil wir gezwungen waren, verwendeten wir ein einzelnes * gemeinsame CPU * auf der Serverseite app.

Setzen sie alle zusammen nicht es so schlecht mit der kühnen DCom-Lösung aussehen, soweit ich sehen kann. Benutze es gewahr 'seine Grenzen' (Bandbreite für detaillierte Objekte Attribute, mit Tricks senken zahlreiche Objekte in Listen etc.) und dann alles über Sie. Es ist leistungsstark, wenn mit Sorgfalt verwendet. Die nutzlos, wenn die Gestaltung und Anwendung ist dafür nicht geeignet.

Schließlich

Als wir anfingen, mit der kühnen DCom-Technik es war fehlerhaft und langsam, und es war offensichtlich, dass es 'unmöglich', um die geforderte Leistung und Zuverlässigkeit zu erreichen war. Störrische Wesen und ein wenig verrückt und Boldsoft fixieren Bugs und einige Optimierungen und Süßung es alle mit ein wenig Geduld- und lösen grundlegende Probleme bereits im Modell (Vermeidung von Codierung Tricks) - sieht es heute ganz anders. Für mich sieht es vielversprechend. Eine talentierte Designerin behebt Engpässe und typische Performance-Problemen in einem Punkt oder anderen.

Neue Gedanken und Never_seen_before_solutions sind manchmal (oft) benötigt, aber ist das nicht, was Designer sind auf jeden Fall gut für? 'Das Modell ist das System' gilt auch für BoldCOM.

Systeme mit vielen Benutzern würde davon profitieren Kunden in einer MetaFrame-Umgebung ausgeführt.

Rolf Lampa

(Aktuelle e-Mail-Adresse: rolf-dot-lampa-at-rilnet-dot-com)








Reduzierter Einsatz von gelb


Reduzierter Einsatz von gelb : Mehreren tausend Tipps, um Ihr Leben einfacher machen.


Dieses Thema war ursprünglich eine Antwort an Peter Morris 'N-Tier' Newsgroup-Thread, aber ich beginne einen neuen Thread hier zum Thema DCOM für andere Gedanken über DCom.

Fragen und Sorgen über 'Probleme mit BoldCOM' sind in den News-Gruppen zu hören und ich möchte hier einige Hinweise geben.

Zunächst empfehle typische Probleme bei der Verwendung einer gemeinsamen CPU für die Zustellung von mehreren Clients vom Verbinden von Clients mit der CPU 'Protokoll' (und ähnliche Tricks) unterscheiden sich (mehr dazu in der Zusammenfassung, die weit unten).

Einige Screenshots visualisiert einige einfachere Lösungen, um einige spezifische 'DCOM UI-Komponente das Problem' Fett Komponenten abonniert die Einzelfelder einzelner Objekte über ein Netzwerk (oder noch schlimmer, über das Internet...). Transfer-Protokoll wird in ein Multi Benutzer Umgebung Reach alle heutigen Bandbreite versuchen begrenzt zu tun, ohne Pflege. Wenn mit Vorsicht verwendet und die gesamte Umgebung (Server und Client) einer drei Tier 'Protokoll-Lösung' der Bold DCom unterstützen Lösung hat aber auch seine Vorteile.

Schau dir die Screenshots unten und versuche mir vorzustellen, was hinter den Kulissen daran erinnern, dass keine Business-Logik auf dem Client vorhanden, keine Logik, die in der Datenbank, seine alle ausgeführten auf eins 1 vorhanden ist Server-CPU im Zusammenspiel mit mehreren Clients. Es zeigt auch, dass ein RAD-DCOM-UI nicht schlecht, werden 100 % Staatenlose und 'tot' für den Benutzer. In der Tat kann es ziemlich 'besiedelten' und scheinbar sehr aktiv und auf den Benutzer reagieren. Mit Fett DCom SIE können entscheiden, die 'Stateness' der Daten zwischen Server und Client übertragen. SIE können Ihr Vorgehen und UI-Lösungen je nach Häufigkeit der Verwendung, die CPU-Auslastung verursacht durch einzelne Aktionen und die Notwendigkeit der 'aktiven Interaktion' und Unterstützung von alternativen Daten angezeigt variieren. All dies je nach Details in Benutzeraktionen und wechselnden Kontexten in bearbeiten-Dialogen etc.. Mit dieser Freiheit sind die Schlüsselwörter 'variieren' und 'möglich' über die Techniken. Diese Schlüsselwörter angewendet werden, da Sie eine fast vollständige Palette der technischen und funktionalen Möglichkeiten haben, auch wenn Sie nicht immer unbegrenzten Kapazität (Bandbreite etc.). Somit müssen Sie Ihr Konzept variieren.

Alles gesagt hatte, lassen erinnerte Sie an die Tatsache, dass das Formular unten abgebildet ist eine voll funktionsfähige Umgebung endgültig RT (DCom-Clients in MetaFrame), Sie uns die Screenshots;

Drei Screenshots zeigen Daten in 'Zuschauer', anstatt einzelne Objektmember mit separaten DCom-Komponenten für jedes Attribut. (Beachten Sie auch, dass die meisten der Liste Griffe werden verwendet, nur wenn Suchoperationen auf Nachfrage auslösen, sind sie normalerweise ziemlich passiv, wenn nur anzeigen und Durchsuchen von Daten mit dem Formular)

Abb. 1: Auftragsbestand Form (Parzellen für spätere Verkehrsplanung) Entwurfszeit - Form sieht ziemlich 'leer' im Design-Zeit (= viele leere HTML-Viewer):

a.jpg

Abb. 2:.. .in Laufzeit der Benutzeroberfläche ist voll informativ und interaktiv.

b.jpg

Der HTML-Anzeige des Bereichs 'Parcel Details' anklicken öffnet einen regelmäßigen Dialog mit Delphi-Komponenten (bewusst nicht Fett). Zum Bestätigen Sie, dass die Daten an den Server gesendet werden, die Details in geeigneten Objektfelder verursacht das UI-Attribut 'ParcelDetailsAsHTML', um den Viewer aktualisieren, indem Sie eine einzelne neue (html) Zeichenfolge zurück an den Client senden einfügt. Nachrichten von Benutzern werden als Fehler, Warnungen oder Informationen zu der extremen Rechten, die mit Symbolen, Client eindeutige Benutzer-Sprache in html formatierte Text (oder einfache Zeichenfolgen aus Code Behauptungen oder andere Code-Nachrichten) angezeigt. Datalabels, Formular-Beschriftungen und Daten werden in der Sprache, die vom Benutzer definierten angezeigt. Die gleiche Serverfunktion gibt Text in verschiedenen Sprachen je nach 'Wer bittet'. Sprache in Laufzeit geändert werden kann (in diesem Formular nicht vollständig umgesetzt, obwohl Sie sehen sowohl schwedische als auch englische hier gemischt, sowie einige Debug-Tools in der oberen rechten Ecke zum Durchsuchen und bearbeiten alles aus Fett-Klassenmember, Meta-Daten von Staaten, Bearbeiten von Zustandsübergängen, durchlaufen der aktuellen Objektstruktur, senden/empfangen von Intra-Client Chat, Mail und mehr, kurz - dito alles (Beachten Sie - das nennt man einen 'dünnen' DCom-Client).

Abb. 3 hier sehen Sie das Ergebnis im vorherigen Dialog an der OSP geschickt und sofort zurück an den Client als ein 1 html-Zeichenfolge für den Viewer (auf der rechten Seite des neuen Dialogfensters unten) analysiert. Ein schnelles und einfaches Konzept.

c.jpg

Endlich - zeigt Abb. 3 ein Beispiel für eine normale html-hyper-Link Auslösen eines Ereignisses, das bestimmt, welche Dialog und welche Daten (da mehrere Partys in separaten Zuschauer auf der linken Seite gestapelt werden) sammeln/im Dialog angezeigt werden. Diese Felder sind etwas ganz besonderes, sie sind Passiv, die Anzeige von Daten, aber zur gleichen Zeit aktiv in der Lage, Suche nach Daten über DCom und damit sind sie 'on-Demand aktiv'. Aber diese Aktivität hat eine relativ niedrige Frequenz und sie sind zeitlich sehr begrenzt und somit hat keinen Einfluss auf Gesamtleistung sehr viel - Anzeige und Durchsuchen von Daten ist was sättigt das Netzwerk! (Die hyper-Links sind 'sensible Sprache', bevor wir vollständig dies seitens der Cleint implementiert da der html-Text vom OSP-Server generierten und damit in meinem Benutzersprache - schwedische gezeigt).

Zusammenfassung

Alle einzelnen Datenfelder in diesen Beispielen gezeigt wird, wo 'passive während sichtbar'. Gelbe COM-Komponenten wurden nur verwendet, um Stücke von gruppierten Datenfelder als lange Zeichenfolgen abrufen und wieder zurückgeschickt, nachdem Dialoge geschlossen (mit Ausnahme des Rasters die wahrscheinlich später ersetzt werden wurden, da dies eine Hot-Spot-Form in Attracs ist).

Die Gültigkeitsprüfung ist zu 100 % von Geschäftsregeln auf der Serverseite (keine Business-Logik existiert im Client) validiert wird.

Mit diesem Ansatz mischen Konzepte der 'aktive' COM Griffe und 'passive' html strings die Benutzerfunktionalität eine 'aktive' UI, aber technisch gesehen ist es fast Toten 'Stein'. Nichts eigentlich Happends außer regelmäßigen formatieren im Dialogfeld Felder überprüfen und Senden von Daten an Serverlogik zurück. Der Vorteil ist, dass die gelben Handler die Zuschauer mit den neuesten aktuellen html-Daten mithilfe des regulären Fett Abonnement-Mechanismus (Beachten Sie, dass die meisten Abonnements auf die Serverside sein wird, da das html-Attribut hält den Überblick über die Vielzahl der Felder intern auf die Serverside, sondern nur ein Feld pro Zuschauer Abonnements über DCom hat) aktualisieren.

Da die Beschriftungen und Etiketten in den html-Text sensible Sprache sind haben wir in der Tat viele Hunderte von 'Pseudo-aktive' Datenfelder auf diesem Formular...! (von der Serverseite gesehen). Der Viewer-Ansatz verringert diese große Zahl auf einen Bruchteil und die Benutzeroberfläche ist in der Tat nicht 'langsam' überhaupt noch über eine normale Netzwerkverbindung. Mit vielen Benutzern (10 +) würde eine MetaFrame-Lösung Netzwerk-Leistungsprobleme auf fast 'nichts' reduzieren.

Serverleistung

Vielleicht eine kann durcheinander bekommen über 'Performance-Problemen mit DCOM' und die Tatsache, dass eine DCOM-Lösung setzt eine gemeinsame CPU als Anwendungsserver verwenden. Beachten Sie, dass das Leistungsproblem aber keine explizite DCOM-Problem - zusammenhängt effiziente Design und Programmierung ist ein muss für jede Lösung, die mit einem gemeinsamen Anwendungsserver.

Effiziente Codierung allein reicht definitiv nicht. Kombinieren-Design & Programmierung scharf aber tut, muss man 'meinen effiziente Lösungen/Konzepte' sehr Modell ab und halten Sie es für das Design ganz zurück und vierte an die Clients. Dies ist wichtig, und wir erfahren viel einfach weil wir gezwungen waren, verwendeten wir ein einzelnes * gemeinsame CPU * auf der Serverseite app.

Setzen sie alle zusammen nicht es so schlecht mit der kühnen DCom-Lösung aussehen, soweit ich sehen kann. Benutze es gewahr 'seine Grenzen' (Bandbreite für detaillierte Objekte Attribute, mit Tricks senken zahlreiche Objekte in Listen etc.) und dann alles über Sie. Es ist leistungsstark, wenn mit Sorgfalt verwendet. Die nutzlos, wenn die Gestaltung und Anwendung ist dafür nicht geeignet.

Schließlich

Als wir anfingen, mit der kühnen DCom-Technik es war fehlerhaft und langsam, und es war offensichtlich, dass es 'unmöglich', um die geforderte Leistung und Zuverlässigkeit zu erreichen war. Störrische Wesen und ein wenig verrückt und Boldsoft fixieren Bugs und einige Optimierungen und Süßung es alle mit ein wenig Geduld- und lösen grundlegende Probleme bereits im Modell (Vermeidung von Codierung Tricks) - sieht es heute ganz anders. Für mich sieht es vielversprechend. Eine talentierte Designerin behebt Engpässe und typische Performance-Problemen in einem Punkt oder anderen.

Neue Gedanken und Never_seen_before_solutions sind manchmal (oft) benötigt, aber ist das nicht, was Designer sind auf jeden Fall gut für? 'Das Modell ist das System' gilt auch für BoldCOM.

Systeme mit vielen Benutzern würde davon profitieren Kunden in einer MetaFrame-Umgebung ausgeführt.

Rolf Lampa

(Aktuelle e-Mail-Adresse: rolf-dot-lampa-at-rilnet-dot-com)

Reduzierter Einsatz von gelb

Reduzierter Einsatz von gelb : Mehreren tausend Tipps, um Ihr Leben einfacher machen.
Reduzierter Einsatz von gelb
Wiezutun
Freunden empfehlen
  • gplus
  • pinterest

Kommentar

Einen Kommentar hinterlassen

Wertung