2017-08-23 5 views
2

Salut, je suis un nouvel utilisateur de Chronicle Products et jusqu'à présent, la documentation/utilisation semble assez lisse. Même si j'ai une question quand les données cartographiques sont partagées sur les JVM sur le même hôte, la JVM consommateur attendant les données reçoit un rappel ou un signal quand les données arrivent ou devons-nous implémenter un mécanisme de rappel personnalisé.Chronicle Map Callbacks

Pensées?

+1

Que voulez-vous dire par "données" ARRIVE? Rappel sur quoi spécifiquement? – leventov

+1

Salut @leventov la question est - Quand la JVM1 (Consumer) fait un insert dans la carte, comment JVM2 (Producer) qui a la référence de Map sera notifié que les données ont été insérées. Est-ce que l'interrogation fréquente de la taille de la carte est une option pour JVM2? Y a-t-il une autre approche que vous recommanderiez? – ATO

+0

Il n'y a pas de mécanisme de ce genre dans Chronicle Map et il ne pouvait y en avoir, par conception. Oui, vous pouvez fréquemment interroger une carte, mais je doute que cela soit raisonnable comparé à l'envoi de messages appropriés entre les processus, en utilisant des mécanismes du système d'exploitation tels que les canaux ou des librairies comme Chronicle Queue ou zeroMq. – leventov

Répondre

2

Nous vous remercions de votre intérêt pour les produits Chronicle Software.

Il n'y a pas de mécanisme de rappel/notification dans le cas d'utilisation que vous décrivez.

Les cartes partagées entre plusieurs JVM d'un même hôte communiquent à l'aide de la mémoire partagée, et non d'un mécanisme d'événement. Lorsque vous écrivez sur la carte A à partir de la JVM 1, si JVM 2 contient également une référence à la carte A (instance Map créée à partir du même fichier de sauvegarde), la mise à jour est automatiquement affichée, car les deux instances partagent la même région de la mémoire mappée.

J'espère que cela répond à votre question.

Cordialement, Terry

+1

Merci pour votre commentaire. Ce que je dis, c'est quand la JVM1 fait un insert dans la carte, comment JVM2 qui a la référence de Map sera avertie que des données ont été insérées. Est-ce que l'interrogation fréquente de la taille de la carte est une option pour JVM2? – ATO

+0

Existe-t-il un échantillon en ligne auquel je peux me référer? – ATO

+0

ATO, https://github.com/OpenHFT/Chronicle-Map est le lien vers le fichier Repo et ReadMe. L'utilisateur SO nommé leventov (qui vous a posé une question ci-dessus) serait le meilleur pour dialoguer avec puisqu'il est l'auteur de Chronicle-Map. Cordialement, Terry –