Fermer

février 9, 2025

Le streaming de données en temps réel a rendu simple / blogs / perficient

Le streaming de données en temps réel a rendu simple / blogs / perficient


En tant que développeur Salesforce avec des années d’expérience en mise en œuvre de solutions en temps réel, j’ai trouvé Thèmes de poussée L’une des fonctionnalités les plus puissantes mais sous-utilisées de l’écosystème Salesforce. Aujourd’hui, je vais explorer des sujets push, expliquer ce qu’ils sont, comment ils fonctionnent et pourquoi ils pourraient être la solution que vous recherchiez.

Que sont les sujets push?

Les sujets push dans Salesforce sont des configurations qui définissent les changements d’enregistrement que vous souhaitez surveiller en temps réel. Considérez-les comme des auditeurs sophistiqués qui veillent à des changements de données spécifiques dans votre organisation Salesforce et informent immédiatement les clients connectés lorsque ces changements se produisent.

Qu’est-ce que l’API de streaming?

L’API de streaming facilite le flux de données en temps réel de la plate-forme Salesforce aux clients. Il fonctionne sur la communication basée sur la push, où le serveur initie la livraison de données au client. Cette approche, connue sous le nom de Technology Push ou le modèle Publish / Sbonned, permet d’envoyer des informations dès qu’elle sera disponible. Des outils comme Cometd et des API d’abonnement dans Node.js ou Mulesoft sont couramment utilisés. CoMetd garantit que le serveur pousse les mises à jour du client tout en maintenant une connexion persistante.

Sujet push StreamInapi

Terminologie clé

  • Sujet push: Un objet personnalisé qui définit les données que vous souhaitez surveiller via une requête SOQL.
  • API de streaming: L’API sous-jacente qui alimente les sujets
  • Comète: Le protocole utilisé pour le modèle de messagerie publique-subscription
  • Canal: Un chemin de communication virtuel où les messages sont publiés
  • Abonné: Une application client qui écoute les notifications de sujet push

Flux de notification

Comment fonctionnent les sujets de poussée

Le flux de travail des sujets push suit ces étapes:

  1. Un sujet push est créé avec une requête SOQL définissant ce qu’il faut surveiller
  2. Les applications clients souscrivent à la chaîne du sujet push
  3. Lorsque des enregistrements correspondants sont créés / mis à jour / supprimés, Salesforce génère une notification
  4. Les abonnés reçoivent ces notifications en temps réel via l’API de streaming

Construire votre premier sujet push

Créons un sujet push qui surveille les opportunités de grande valeur:

PushTopic pushTopic = new PushTopic();
pushTopic.Name="HighValueOpportunities";
pushTopic.Query = 'SELECT Id, Name, Amount, StageName FROM Opportunity WHERE Amount > 100000';
pushTopic.ApiVersion = 62.0;
pushTopic.NotifyForOperationCreate = true;
pushTopic.NotifyForOperationUpdate = true;
pushTopic.NotifyForOperationDelete = true;
pushTopic.NotifyForOperationUndelete = true;
insert pushTopic;

Avantages des sujets push

  1. Traitement en temps réel

      • Contrairement aux travaux de lots prévus, les sujets push fournissent des notifications immédiates.
      • Réduit la charge du système par rapport aux solutions basées sur le sondage.
  2. Évolutivité

      • Gère efficacement les grands volumes de changements.
      • Prend en charge plusieurs abonnés simultanément.
  3. Flexibilité

      • Les requêtes personnalisables permettent une surveillance précise.
      • Prend en charge plusieurs types d’objets et conditions complexes.
  4. Efficacité des ressources

      • Utilise des événements côté serveur au lieu d’un sondage côté client.
      • Réduit la consommation d’appels API.

Limitations et considérations

Bien que puissants, les sujets push ont certaines limites:

  1. Requête des restrictions

      • Maximum 20 champs dans le Sélectionner la clause.
      • Pas de fonctions agrégées sont pris en charge.
  2. Limites de performance

      • Maximum 100 sujets push par org.
      • Les notifications peuvent avoir de légers retards pendant une charge élevée.
      • Limite de taille de 2 Ko pour chaque charge utile de notification.
  3. Contraintes de surveillance

      • Impossible de surveiller tous les types d’objets.
      • Certains types de champs ne sont pas pris en charge (comme des zones de texte riches).

Meilleures pratiques pour les sujets push

  1. Optimisation des requêtes

      • Utilisez des filtres sélectifs pour réduire les notifications inutiles
      • Inclure uniquement les champs essentiels dans la requête
      • Envisagez d’indexer les champs utilisés dans les clauses
  2. Gestion des erreurs

      • Implémentez la logique de reconnexion robuste chez les clients
      • Gérer les échecs de livraison de notification gracieusement
      • Enregistrer et surveiller l’état de l’abonnement
  3. Sécurité

      • Examiner les paramètres de sécurité au niveau du champ
      • Mettre en œuvre une authentification appropriée dans les applications clients
      • Audit régulièrement des configurations de sujets push

Conclusion

Les sujets push représentent un outil puissant dans l’arsenal du développeur Salesforce pour la création d’applications en temps réel. Bien qu’ils aient des limites, leurs avantages l’emportent souvent sur les contraintes de nombreux cas d’utilisation. Suite aux meilleures pratiques et à la compréhension des limitations, vous pouvez tirer parti des sujets Push pour créer des solutions robustes et en temps réel qui améliorent votre implémentation Salesforce.

Conseils finaux

  • Commencez par une preuve de concept pour valider votre cas d’utilisation
  • Surveiller soigneusement les impacts des performances
  • Documentez vos configurations de sujet push
  • Planifiez l’évolutivité depuis le début
  • Gardez les considérations de sécurité à l’avant-garde

N’oubliez pas que Push Topics n’est qu’un outil de la boîte à outils d’architecture de streaming. Évaluez vos besoins spécifiques et envisagez de les combiner avec d’autres technologies, telles que des événements de plate-forme ou modifier la capture de données, pour des solutions complètes en temps réel.

Restez à l’écoute pour notre prochain blog pour explorer la capture des données du changement et discuter des solutions pratiques pour la mettre en œuvre efficace.






Source link