Version en Californie – wiki edgex – longueur de l’adresse bitcoin de confluence

La clé est la première implémentation d’APIs prioritaires, d’infrastructure et de microservices de référence pour la sécurité. Un autre thème clé pour Sortie en Californie améliore les performances globales et réduit l’empreinte de référence de la base de code. Des travaux sont actuellement en cours pour des solutions de remplacement pour les microservices clés (par exemple, les services de base, les services d’exportation et de périphériques) basés à Go Lang avec un objectif étendu étant des implémentations sélectionnées en C. Sortie en Californie améliorera la facilité d’utilisation d’EdgeX au sein d’une communauté de développement plus grande et plus polyglotte.

Déplacer la documentation du développeur de Wiki vers GitHub afin qu’elle soit mise à jour / maintenue / revue comme du code (par des demandes d’extraction formelles, etc.).


Ceci permet à la documentation d’être également versionnée avec la base de code. L’utilisation d’outils et de processus de documentation standard permet à la documentation d’être «construite» par les processus CI et publiée de manière plus conviviale (et portable).

Actuellement, il existe des tests de l’API REST de Blackbox par rapport aux services principaux (core-data, core-metadata, core-command). Une couverture supplémentaire de l’API REST blackbox est nécessaire pour les services de support (journalisation, notifications, planificateur, etc.), les services d’exportation (export-client, distribution d’exportation) et les services de périphériques (dont certains s’appliquent au SDK). services de périphériques génériques construits par le SDK).

• Développez le support matériel – ARM 64 EdgeX a été conçu pour être multi-plateforme. Certains micro-services (tels que ceux écrits en Go) nécessitent une compilation sur les plates-formes natives (compilation croisée). Une fois que les artefacts du programme pour la plate-forme ont été créés, ils doivent également être conteneurisés (dans Docker) et une partie de la conteneurisation dépend de la plateforme. Enfin, il est également souhaité que micro services être testé sur leur plate-forme native. Alors que les machines virtuelles et les environnements de simulation peuvent permettre l’exécution de tests fonctionnels, certains problèmes et certaines métriques de performances de cette plate-forme peuvent uniquement être identifiés lors de l’exécution sur la plate-forme cible. Cette tâche comprend donc:

Options de déploiement et d’orchestration alternatives (à partir de Docker / Docker Compose) Aujourd’hui, alors que la communauté et les utilisateurs d’EdgeX sont libres de déployer EdgeX comme ils le souhaitent en fonction de leur cas d’utilisation, la communauté EdgeX fournit des images de conteneur Docker et un docker. composer.yml fichier pour aider à obtenir et déployer EdgeX. À l’avenir, il est prévu que la communauté cherchera et aura même besoin de moyens alternatifs pour déployer, gérer et orchestrer les micro-services EdgeX. Les options incluent l’utilisation de Kubernetes, Swarm, Mesos, Nomad, pour n’en nommer que quelques-uns. Un soutien supplémentaire peut être offert par les outils ou les installations de gestion du système. À l’heure actuelle, la communauté accueille favorablement les contributions et les contributions de la communauté et des groupes d’utilisateurs dans ce domaine, mais n’a pas de plan ferme pour faire du travail dans ce domaine Sortie en Californie.

• Atteindre tous les objectifs de performances Bien que davantage d’exigences soient nécessaires, les objectifs de performance globaux pour EdgeX sont répertoriés au bas de cette page et incluent l’exécution de tous les micro-services de base, de support et d’application dans < 1 Go ou RAM sur un processeur 64 bits, nécessitant moins de 32 Go d’espace de stockage sur disque, démarrent (collectivement) en moins de 1 minute et activent depuis la collecte du capteur jusqu’au déclenchement du périphérique < 1 seconde.

• Configuration améliorée et plus dynamique Consul offre aujourd’hui une configuration centralisée de micro services. Le service de configuration de départ est utilisé pour initialiser Consul avec la configuration de chacun des micro services. Ce processus est souvent sujet aux erreurs étant donné les multiples fichiers de configuration dans chaque micro service (et souvent multiples pour les différents environnements tels que dockerized ou non dockerized). L’initialisation de Consul peut-elle être améliorée, simplifiée et moins sujette aux erreurs? Les changements de configuration dans Consul sont immédiatement mis à la disposition des applications. Cependant, les applications doivent implémenter un “observateur” pour voir une modification de configuration et ensuite appeler pour obtenir cette modification (le core-config-watcher dans GitHub était censé démontrer comment faire cela mais n’a jamais été implémenté ou utilisé dans aucun service). En outre, même si les micro-services sont rendus plus dynamiques pour surveiller et utiliser la configuration nouvelle / mise à jour, certains changements de configuration ne fonctionneraient qu’après un redémarrage (ex: le numéro de port du point de terminaison REST du micro service). Existe-t-il un moyen de signifier quelle configuration est autorisée à être modifiée au moment de l’exécution et qui ne peut prendre effet qu’après un redémarrage du service.

• Meilleure flexibilité des services d’exportation / éléments similaires au SDK distribution d’exportation service (Java ou Go), les installations pour fournir des points de terminaison avec des données EdgeX sont statiquement programmées dans le pipeline de ce service aujourd’hui. Autrement dit, lorsque les données arrivent à distribution d’exportation, basé sur l’enregistrement d’un client, il est filtré, transformé / formaté, compressé, puis crypté. Certaines options sont fournies (par exemple, autoriser le formatage en JSON par rapport à XML), mais ces options sont à nouveau créées de manière statique dans le canal de distribution d’exportation. Si un utilisateur souhaite ajouter de nouveaux filtres, de nouvelles transformations (exemple en ajoutant un format CSV), de nouvelles routines de cryptage ou de compression, l’utilisateur doit récupérer la base de code d’exportation-distribution, la fourchir et faire sa propre copie. Existe-t-il un moyen de créer des plugins ou des modules dans l’architecture de pipe-filtre de la distribution d’exportation afin qu’elle soit plus flexible pour répondre aux nouveaux besoins futurs? Est-il possible de créer un SDK pour le service export-distro afin que les utilisateurs puissent créer une fonction d’exportation personnalisée avec les options pour filtrer, transformer, enrichir, etc. les données EdgeX comme bon leur semble sans avoir à forcer et reconstruire service de micro entier seul?

• Fournir une prise en charge alternative du langage SDK dans Go Lang et éventuellement C En plus de réduire l’encombrement et d’améliorer les performances des services de micro-périphériques, il est possible d’intégrer plus de capteurs / périphériques à la plate-forme EdgeX. principalement ceux en C / ++ et Go.

Le débit pour un élément de données (avec un périphérique IP connecté par fil dur – par rapport au WiFi) de l’ingestion de données à la couche de service de périphérique, à travers les données de base, au moteur de règles et de retour au service de périphérique. < 1 seconde