SolmuJS

GraphQL-sovelluksen käyttöönotto solmun avulla.js EC2-palvelimella

GraphQL-sovelluksen käyttöönotto solmun avulla.js EC2-palvelimella
GraphQL, joka tunnetaan myös nimellä Graph Query Language, jonka on perustanut ja ylläpitänyt Facebook, on kyselykieli, jota käytetään sovellusliittymiin. Se on rakennettu JavaScript-, Scala-, Java- ja Ruby-ohjelmointikielillä. Sen perustarkoitus on pyytää tietoja palvelimelta asiakkaalle.GraphQL kerää tietoja eri lähteistä. Yhdistäminen on prosessi, jossa suodatetaan tietoja palvelinpuolella ja lähetetään sitten suodatetut tiedot asiakkaalle. Ilman aggregaatiota lähetämme kaikki tiedot asiakkaalle ja sitten tiedot suodatetaan asiakaspuolella. Tämä tekee järjestelmästä hitaan, ja voimme parantaa API: n tehokkuutta GraphQL: n avulla. Täällä opitaan asentamaan yksinkertainen GraphQL-sovellus solmun avulla.js EC2-palvelimella.

Vaadittujen pakettien asentaminen

Ensimmäinen vaihe GraphQL-sovelluksen käyttöönotossa on valmistaa palvelimesi asentamalla tarvittavat paketit. Kirjaudu palvelimeen SSH: n avulla.

[sähköposti suojattu]: ~ $ ssh ubuntu @ IPAdress -i KeyPair.pem

MERKINTÄ: Varmista, että ilmentymän suojausryhmä on määritetty sallimaan yhteys portista 22 ja yksityisen avaimen tiedostolla on 400 käyttöoikeutta.

Päivitä Ubuntun arkistot.

[sähköposti suojattu]: ~ $ sudo apt-get update -y

Asenna nyt solmu.js ja npm ubuntu-palvelimellasi.

[sähköposti suojattu]: ~ $ sudo apt-get install nodejs -y
[sähköposti suojattu]: ~ $ sudo apt-get install npm -y

Tarkista asennus tarkistamalla solmun versio.js ja npm.

[sähköposti suojattu]: ~ $ solmu -v
[sähköposti suojattu]: ~ $ npm -v

Siirrä GraphQL-sovellus EC2-palvelimeen

EC2-ilmentymä on valmis asentamaan graphQL-sovelluksia solmuun.js. Nyt siirrämme koodimme EC2-ilmentymään. Alla on lueteltu kaksi yleistä tapaa kopioida koodi palvelimelle, ja niistä keskustellaan täällä.

Kopioi sovellus scp-komennolla

Jos haluat kopioida sovelluksesi EC2-palvelimelle scp-komennolla, poista ensin hakemiston 'solmu_moduulit' grafQL-sovelluksesta. Tässä hakemistossa on kaikki sovelluksen suorittamiseen tarvittavat npm-paketit. Asennamme nämä paketit myöhemmin ennen graphQL-sovelluksen käynnistämistä. Pakkaa nyt projektihakemisto zip-tiedostoksi. Kun olet luonut zip-tiedoston, siirrämme projektin zip-tiedoston palvelimelle. Linuxilla ja Windowsilla on erilaisia ​​tapoja luoda zip-tiedosto.

Windows

Napsauta Windowsissa hiiren kakkospainikkeella sovelluksen juurihakemistoa ja siirry Lähetä-vaihtoehtoon. Se avaa alivalikon. Napsauta Pakattu (zipattu) kansiota luodaksesi zip-tiedoston graphQL-sovelluksesta.

Linux tai Mac

Linux- tai Mac OS -käyttöjärjestelmässä käytämme zip-komentoa projektin zip-tiedoston luomiseen.

[sähköposti suojattu]: ~ $ zip -r graphQL.zip graphQL

Yllä oleva komento luo graphQL: n.graphQL-hakemiston zip-tiedosto.

Lähetä sovellus palvelimelle

Nyt meillä on sovelluksemme zip-tiedosto, ja voimme ladata zip-tiedoston palvelimelle scp-komennolla.

[sähköposti suojattu]: ~ $ scp -i KeyPair.pem-grafiikkaQL.zip ubuntu @ IP-osoite: ~ /

Yllä oleva komento siirtää projektin zip-tiedoston etäpalvelimen kotihakemistoon ssh-yhteyden kautta. Pura nyt projektin zip-tiedosto etäpalvelimella.

[sähköposti suojattu]: ~ $ pura graphQL.postinumero

Kloonisovellus Githubista, Bitbucketista tai Gitlabista

Toinen tapa kopioida sovelluskoodi palvelimelle on git. Asenna git EC2-palvelimen komentoriviltä.

[sähköposti suojattu]: ~ $ sudo apt install git

Tarkista asennus git-versiosta.

[sähköposti suojattu]: ~ $ git --versio

Jos se ei anna git-versiota, git-tiedostoa ei asenneta. Kloonaa sovellus nyt githubista, gitlabista tai bitbucketista. Täällä kloonataan sovelluskoodi githubista.

[sähköposti suojattu]: ~ $ git klooni ttps: // github.fi / contentful / the-example-app.nodejs

Käynnistetään GraphQL-sovellus

Nyt meillä on graphQL-sovellus etäpalvelimella. Siirry graphQL-sovelluksen juurihakemistoon ja asenna vaaditut npm-paketit ajaaksesi graphQL-sovelluksen.

[sähköposti suojattu]: ~ $ cd graphQL
[sähköposti suojattu]: ~ $ sudo npm install

Tämä komento analysoi paketin.json-tiedosto projektissa ja asenna kaikki vaaditut npm-paketit. Vaadittujen pakettien asentamisen jälkeen nyt käynnistämme graphQL-sovelluksen.

[sähköposti suojattu]: ~ $ solmu -sovellus.js

Suoritetaan sovellusta Daemonina

Kun suoritamme sovelluksen yllä kuvatulla tavanomaisella menetelmällä, se toimii etualalla ja sovellus pysähtyy, kun suljet pääteikkunan. Voimme suorittaa sovelluksen taustaprosessina liittämällä ampersand (&) -merkin komentoon.

[sähköposti suojattu]: ~ $ solmu -sovellus.js &

Tämän menetelmän ongelmana on, että kun muokkaamme sovelluskoodiamme, tehdyt muutokset eivät heijastu automaattisesti. Meidän on käynnistettävä sovellus uudelleen joka kerta, kun muokkaamme koodia muutosten soveltamiseksi. Sovelluksen ajamiseksi taustalla ja muutosten automaattiseen soveltamiseen käytämme npm-pakettia nimeltä pm2. Asenna pm2 palvelimelle.

[sähköposti suojattu]: ~ $ sudo npm install -g pm2

Käynnistä graphQL-sovellus pm2: llä.

[sähköposti suojattu]: ~ $ pm2 käynnistyssovellus.js - nimi “graphQL” - kello

'-Name' -lippu nimeää taustaprosessin, ja voimme käynnistää ja pysäyttää sovelluksen käyttämällä nimeä. '-Watch' -lippu jatkaa sovelluskoodin tarkistamista muutosten soveltamiseksi välittömästi. Voit oppia lisää pm2: stä seuraavasta linkistä

https: // pm2.avaimetrit.io /

Kysytään GraphQL-sovellusliittymää selaimelta

Voimme määrittää graphQL-sovelluksemme tekemään grafQL-kyselyjä selaimesta manuaalisesti. Tätä varten meidän on luotava erillinen HTTP-päätepiste, johon asennamme graphQL API -palvelimen. Ja tätä HTTP-päätepistettä käytetään manuaalisten kyselyjen tekemiseen. Seuraava on koodi, jolla luodaan graphQL api -palvelimen päätepiste.

const express = vaatia ('express');
const graphqlHTTP = vaatia ('express-graphql');
const buildSchema = vaatia ('graphql');
const graphQLSchema = buildSchema ('
kirjoita kysely
viesti: Merkkijono
'
);
const func =
viesti: () =>

palauta 'käytät graphql api -palvelinta';

;
const-palvelin = express ();
palvelin.käytä ('/ graphql', graphqlHTTP (
skeema: graphQLSchema,
rootValue: funktio,
graphiql: totta
));
palvelin.kuuntele (3000);

Palvelimen suorittamisen jälkeen voimme nyt käyttää graphQL-api-palvelinta seuraavalla reitillä.

http: // localhost: 3000 / graphql

GraphQL-sovellusliittymän kysely CLI: n avulla

Edellisessä osassa teimme graphQL-kyselyjä selaimelta grafiql: n avulla. Nyt aiomme tehdä graphQL-kyselyitä käyttämällä komentoriviliittymää Ubuntu. Komentoriviltä HTTP POST -pyynnön tekemiseen käytämme curl-moduulia.

[sähköposti suojattu]: ~ $ curl -X POST -H "Content-Type: application / json" -d '"query": "message"' http: // localhost: 3000 / graphql

Kysely GraphQL API: sta ohjelmallisesti

Jos haluat tehdä graphQL-kyselyn ohjelmallisesti, käytämme solmussa 'node-fetch' -moduulia.js. Avaa solmu.js terminaalissa.

[sähköposti suojattu]: ~ $ solmu

Tee nyt HTTP POST -pyyntö palvelimelle 'solmu-nouto' -moduulilla.

GraphQL on tehokas kyselykieli, ja se voi lyhentää tietokantaan tehdyn kyselyn vasteaikaa. Tavalliset api-puhelut tietojen hakemiseksi tietokannasta sisältävät monia käyttämättömiä tietoja vastaukseen ja siten vasteaika kasvaa, mikä vähentää tehokkuutta. GraphQL: n avulla tietokantoihin tehty kysely palauttaa vain hyödylliset tiedot ja lyhentää siten vasteaikaa. Tässä artikkelissa olemme asentaneet graphQL-sovelluksemme EC2-ilmentymään.

Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...
Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...
How to reverse Mouse and Touchpads scrolling direction in Windows 10
Mouse and Touchpads not only make computing easy but more efficient and less time-consuming. We cannot imagine a life without these devices, but still...