npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

yexpert-gtm

v0.0.19

Published

Intégrer des modules workers avec la base de données GT.M

Downloads

11

Readme

Intégrer des modules workers avec la base de données GT.M

Cette arborescence fournit un module vous permettant d'intégrer des modules workers avec la base de données GT.M. Elle est maintenue par Yrelay et diffusée sous licence libre. Cette version comprend des contributions communautaires libres acceptées par Yrelay.

Disclaimer : Yexpert est encore en développement et son interface peut changer dans les futures versions. Utilisez cette production à vos propres risques.

Ce dépot est fortement inspiré de l'application EWD 3 de Rob Tweed (Merci).

1. yexpert-gtm

Ce module peut être utilisé pour simplifier l'intégration de la base de données Open Source GT.M avec les modules de processus workers ewd-qoper8. Il charge en outre le module ewd-document-store pour fournir une interface JavaScript très puissante et naturelle au moteur de base de données Global Storage sous-jacent au sein de GT.M.

2. Installer

   npm install yexpert-gtm

Vous devez également installer le module d'interface de connexion Node.js pour GT.M :

   npm install nodem
   

3. Utiliser yexpert-gtm

Ce module doit être utilisé avec le gestionnaire d'événements de début de votre module de travail ewd-qoper8, par exemple:

  this.on('start', function(isFirst) {
    var connectGTMTo = require('yexpert-gtm');
    connectGTMTo(this);
  });

This will open an in-process connection to a local GT.M database.

3.1. Définition de l'environnement correct pour GT.M

Vous devez vous assurer que les variables d'environnement correctes ont été créées pour GT.M. Généralement, cela se fait automatiquement via le fichier .profile ou similaire. Si tel est le cas, il suffit d'établir la connexion à GT.M, comme suit:

  connectGTMTo(this);

Cependant, vous pouvez éventuellement établir les variables d'environnement appropriées en utilisant une fonction intégrée dans ewd-qoper8-gtm que vous pouvez trouver dans le référentiel. Recherchez le fichier module /lib/setEnvironment.js

Vous verrez que cela créera un environnement par défaut, basé sur l'hypothèse que vous avez utilisé apt-get install fis-gtm pour installer GT.M. Si c'est ainsi que vous avez installé GT.M, il ya une bonne chance que les paramètres d'environnement par défaut que le module setEnvironment fonctionnera pour vous. Vous pouvez choisir d'utiliser et d'appliquer ces paramètres par défaut en etablissant la connexion à GT.M comme suit:

  connectGTMTo(this, true);

Si vous avez besoin de modifier les paramètres, vous pouvez le faire en les fournissant dans un objet que vous pouvez passer à la fonction connectGTMTo (). Vous pouvez spécifier une ou toutes les variables d'environnement GT.M suivantes:

  • gtmdir
  • gtmver
  • gtmdist
  • gtmgbldir
  • gtmroutines
  • GTMCI
  • GTM_REPLICATION (par défaut 'off')

Toutes les variables que vous ne spécifiez pas explicitement auront des valeurs par défaut calculées pour vous. Inspectez le code dans /lib/setEnvironment.js pour voir les règles et la logique qu'elle applique pour créer ces valeurs par défaut.

Ainsi, par exemple, vous pourriez faire ceci :

  var env = {
    gtmdir: '/usr/lib/fis-gtm/V6.0-003_x86_64'
  };
  connectGTMTo(this, env);

3.2. Que fait d'autre yexpert-gtm ?

Yexpert-gtm charge et initialise le module ewd-document-store, créant un objet DocumentStore dans votre worker.

3.2. Evénements émis par yexpert-gtm

Yexpert-gtm utilise l'événement 'stop' du travailleur pour s'assurer que la connexion à GT.M est supprimée avant que le travailleur s'arrête.

Yexpert-gtm émet également 3 nouveaux événements que vous pouvez gérer:

  • dbOpened: les incendies après l'ouverture de la connexion à GT.M dans un processus de travail
  • dbClosed: se déclenche après la connexion à GT.M est fermé dans un processus de travail. Le travailleur quitte immédiatement après cet événement
  • DocumentStoreStarted: se déclenche après que l'objet DocumentStore a été instancié. C'est un bon endroit pour gérer les événements DocumentStore, Par exemple pour maintenir des indices de documents.

L'événement dbOpened vous fournit un argument d'objet d'état unique, vous permettant de déterminer le succès (ou non) de l'ouverture de la connexion à GT.M, vous pouvez donc ajouter le gestionnaire suivant dans votre module de travail, par exemple:

worker.on('dbOpened', function(status) {
  console.log('GT.M a été ouvert par le worker ' + process.pid + ': status = ' + JSON.stringify(status));
});

Les événements dbClosed et DocumentStoreStarted ne fournissent aucun argument.

4. Example

Voir dans le répertoire / examples.

Gtm-express, js est un exemple de scripts de processus maître Express / ewd-qoper8. Gtm-module1.js est le module de travail associé qui se connecte et utilise GT.M, en utilisant les paramètres d'environnement par défaut.

Utilisez-les comme point de départ pour votre propre système.

5. Comment contribuer ?

  • Dupliquer le dépôt (utiliser Fork)
  • Créer un nouvelle branche (git checkout -b ma-branche)
  • Commit(er) votre proposition d'évolution (git commit -am 'Ajouter mon évolution')
  • Push(er) la branche (git push origin ma-branche)
  • Créer une demande d'évolution (utiliser Pull Requests)

Pour remonter un bug : https://github.com/Yrelay/Yexpert-Term/issues

6. Liens