Données en temps réel en utilisant AjaxSolution Variante: (Presque) Real-Time Data Lorsque la négociation d'actions ou de produits à revenu fixe sur un marché, vous souhaiterez également de récupérer en temps réel des ensembles de données. Par «temps réel» des ensembles de données, je veux dire près de ensembles de données temps réel, comme on le véritable bâtiment en temps réel les applications pourraient prendre ombrage de la façon dont j'ai vaguement définir «en temps réel." D'un point de vue personnel, je crois que les données en temps réel n'est pas possible avec l'Ajax, comme il n'existe tout simplement trop nombreuses couches de logiciels. Ce qui est possible est presque temps réel des données, avec environ une demi-seconde ou deux de retard (bien sûr, cela est basée sur ma propre expérience que c'est loin d'être définitif). En termes de la plupart des applications de négociation, ne comprenant pas scalper, des données presque en temps réel est assez bon. Temps réel est une variante de l'article, nous avons déjà vu, là où une tâche temps réel est similaire à une tâche de longue haleine. Une tâche de longue haleine qui génère des données est une tâche temps-réel, en ce que tant de générer des données dès qu'ils le peuvent. La différence entre une tâche de longue haleine et une tâche temps réel est que les données produites par une tâche en temps réel a une source au-delà de la tâche (par exemple, le marché boursier, une machine exécutant des processus, etc). Une autre différence est celle qui est habituellement une tâche de longue durée auront une réponse, alors qu'une tâche en temps réel n'a pas de réponse juste des données qui continue à être généré. L'inadéquation de ce que chaque client voit que les données peuvent être désiré ou il peut être un problème. Par exemple, dire que vous contrôlez un processus de la machine qui crée des sièges de voiture en mousse. Chaque siège dure environ 5 minutes pour créer, et donc votre application Ajax va stocker environ 7 minutes de données. La fenêtre de temps de votre application est suffisamment grand pour inclure un cycle de l'élément à surveiller. Maintenant, nous allons tourner notre attention vers le marché boursier. Que devrait être une fenêtre de temps suffisant pour regarder un téléscripteur? Serait-il être de 1 minute, 10 minutes, quelques heures, jours, semaines ou années? Et en fonction de la fenêtre, quelle est la longueur de chaque marqueur graphique individuel? Est-ce 1 seconde, 5 secondes, heures, jours? Encore une fois, nous ne savons pas, et nous avons un problème dans la mesure où un utilisateur peut demander pour un graphique pour chaque seconde de l'année écoulée. Les données relatives à un tel graphe est énorme. En temps réel sur le côté client, vous ne pouvez raisonnablement s'attendre à garder trace des données dans une fenêtre de temps donnée. Le suivi d'une fenêtre de temps est acceptable si vous êtes uniquement intéressé dans la fenêtre qui est présentée. La réalité est que vous voulez savoir ce qui s'est passé dans le passé. En regardant les données passées pour une tâche temps réel est appelé remblayage les données. Dans le cas de l'exemple de l'équité, dont vous avez besoin d'inclure un renvoi parce que les calculs effectués sur les stocks risquent de ne pas être exacte autrement.
Cela introduit donc une complication supplémentaire: comment voulez-vous gérer un remblai et de la tâche en temps réel à la fois sur le client? La réponse est que vous n'avez pas. Un client AJAX n'est pas capable de logique compliquées telles. Le remblayage et le processus en temps réel doivent être gérés par le serveur. Le client ne voit qu'une lumière des données comme s'il s'agissait d'une source de données infini. Quand le réel commence tâche de temps, les séries chronologiques de données doit avoir ses métadonnées extraites. Les méta-données seraient ensuite utilisées pour déterminer où la tâche en temps réel ajoute des données à l'ensemble résultat. Ainsi, par exemple, si vous effectuez le suivi d'un stock en temps réel, les métadonnées serait le téléscripteur et le temps de la tique stock. Si vous avez commencé la tâche en temps réel à 10h00, puis cochez la première serait de 10h00 Si vous effectuez le suivi des stocks sur la Bourse de New York, alors votre jeu de résultats complet couvrirait les temps de 9h30 à 4:00 pm, au moins les heures officielles de négoce. Pour notre exemple, cela signifie que les données manquantes sont les tiques, de 9h30 jusqu'à et y compris 9:59:59 am Les données manquantes sont ajoutés au résultat en exécutant une tâche qui charge les données historiques provenant d'une source de données différents. Lorsque les données historiques a été ajouté, la combinaison des deux ensembles de données se traduit par un ensemble de données complet et cohérent de résultats. Peu importe quand et comment les utilisateurs consulter les données, tous les utilisateurs finaux voir les mêmes données. Vous pouvez venir à la conclusion que, lorsque les données sont présentées dans un format uniforme, vous avez activé le problème à partir d'un générateur de données en temps réel à un problème de générer un ensemble de données qui arrive juste à exiger d'une journée complète pour calculer les résultats. En termes de mise en œuvre, les règles suivantes de pouce sont appliquées: • Vous avez besoin de définir ce qui constitue un ensemble de résultats complets. Vous devez définir un jeu de résultats complet en termes de jours, heures, ou quelque autre unité quantifiable de mesure. Par exemple, vous pourriez utiliser comme unité de mesure d'un tonneau vide qui est rempli. • Les données générées par la tâche en temps réel doit être décrit par ses métadonnées, ce qui peut être utilisé pour créer un index. • Lorsque la tâche en temps réel est démarré, les données sont ajoutées à l'ensemble de résultats en utilisant un index. • Pour les situations où la tâche temps réel est débuté à un moment par la suite, les données manquantes dans l'indice est fourni par une tâche qui exécute un remblai. • Une tâche remblai est exécutée chaque fois la tâche en temps réel manque de données due pour une raison ou une autre. La tâche de remblai a également pour but d'assurer que les données produites par la tâche temps réel est cohérente et précise. Du point de vue du client, on voit un jeu de résultats complet avec un grand nombre d'éléments. Le client décide à quel index qu'ils veulent lancer le suivi du temps réel les données générées. Résumé de l'articleL'accent de cet article était de tisser des AWeb application qui manipule des grands ensembles ou de ralentir données. Gardez les points suivants à l'esprit: • grands ensembles et de ralentir les données sont traitées en utilisant la même solution. La solution pourrait avoir des variations de mise en œuvre, mais il y aura toujours une approche fonctionnelle et l'utilisation d'un cache sur le client ou serveur. • Tous les résultats sont composés d'ensembles de données, où chaque résultat individuel a un élément de métadonnées. • L'élément de métadonnées est utilisé pour identifier de manière unique un résultat individuel. Sur la base des métadonnées, il est possible de déterminer algorithmiquement une URL pour les données. Il devrait y avoir aucun élément de métadonnées qui peuvent être confondus avec les autres, mais un seul descripteur d'éléments de métadonnées peuvent contenir plusieurs résultats individuels. • Pensez à l'élément de métadonnées que l'appui de votre capacité à appliquer la théorie des ensembles pour sélectionner, afficher, ou naviguez données. • La navigation sur les grands ensembles de données ou de ralentir la navigation nécessite un matériel spécialisé. • La navigation spécialisés repose sur les utilisateurs de pouvoir naviguer rapidement les métadonnées, permettant aux utilisateurs de se faire une idée rapide et brusque de ce qui est contenu dans les données. • La navigation spécialisées devraient comporter l'utilisation de techniques de navigation Clickless autant que possible. • La performance de l'application dépend de la mise en œuvre de la mémoire cache sur le client et le serveur. • Pour la plupart des implémentations de cet article, vous devrez régler le cache de sorte que le cache peut algorithmiquement de déterminer ce que l'utilisateur final a besoin de voir la prochaine. • Le plus simple cache en lecture seule des applications de type serait un seul cache demande du client. Pour les applications où les données changent régulièrement, à une validation-cache HTTP basée est nécessaire. Pour toute autre demande, de la mémoire cache serait une combinaison de la demande HTTP unique et de validation. • Comment les données à plus long est conservé dans le serveur et le cache client dépend de la nature de la demande, et est un paramètre ajustable. • Un lent et vaste ensemble de données d'application se distingue d'une application régulière du Web en ce que la réponse à une POST est récupéré dans un GET distincte. • Le poste sera frayer une tâche où la tâche pourrait être dans un autre thread d'exécution ou dans un autre processus. Le POST, ayant donné naissance à la tâche, dans la plupart des cas, le retour de suffisamment d'informations de métadonnées pour identifier de manière unique l'URL des résultats. • Les résultats sont stockés dans leur propre URL que mai référence à une mémoire cache. Les résultats sont généralement accessibles uniquement en utilisant le GET et DELETE verbes. Il y mai être des moyens d'affiner le jeu de résultats en utilisant des sous-répertoires ou des paramètres de requête. • Ne supprimez pas les résultats en utilisant un stack-based approach. Le client en général garderait un curseur sur les derniers résultats ou constamment de télécharger tous les résultats. Cette approche est préférée pour la stabilité et la robustesse. • données en temps réel est une variante de la lenteur et la vaste ensemble de données article. La grande différence par rapport à une tâche de longue haleine, c'est que la tâche en temps réel exécutera aussi longtemps que l'information contrôlée est suivie. • en temps réel de données doit être combinée avec une image plus grande de ce qu'est un jeu de résultats est. Vous voulez convertir les données en temps réel en une série de données plus grand ensemble qui inclut un remblai, la faisant apparaître que les données en temps réel tâche est en fait une tâche lente données qui arrive à besoin d'une journée complète ou unité de temps pour terminer ses calculs. un article présenté par Sonja Lande Disclaimer:Notre site n'est pas responsable du contenu de cet article. Webarticles est une ressource d'information gratuite. Important: Cet article "données en temps réel en utilisant Ajax" a été traduit par un logiciel automatique. Nous nous sentons désolés pour les fautes d'orthographe que mai ont eu lieu. Nous vous remercions de votre compréhension.
|
|||||
| Online: 466 users browsing the articles directory |
|
|