Node.js-sovellusten käyttöönoton ei pitäisi olla vaivatonta. Ota Express.js-palvelimesi käyttöön Renderin kustannustehokkaalla ja käyttäjäystävällisellä alustalla.

Vuoden 2022 lopussa Heroku lopetti ilmaisen tason vaihtoehdon, minkä seurauksena aiemmin saatavilla ollut ilmainen web-hosting- ja muiden pilvipalveluiden tilaussuunnitelma poistettiin ekosysteemistään.

Ilmaiset tasot ovat erityisen käteviä ja kustannustehokkaita, jos aiot ottaa käyttöön ja isännöidä sovelluksia lyhyen ajan. Onneksi on olemassa vaihtoehtoinen pilvialusta, joka, kuten Heroku, tarjoaa ilmaisen tason pilvipalveluilleen muiden etujen ohella.

Tässä artikkelissa tutkimme, kuinka Express.js REST API otetaan käyttöön Renderissä, pilvipohjaisessa hosting-alustassa.

Mikä on Render?

Render on pilvipalvelualusta, joka tarjoaa saumattoman ja vaivattoman tavan ottaa käyttöön ja hallita staattisia verkkosivustoja, täysimittaisia ​​verkkosovelluksia, taustasovellusliittymiä tai tietokantoja pilvessä. Ominaisuuksiin kuuluu:

  • Käyttäjäystävällinen käyttöliittymä
    instagram viewer
    : Render tarjoaa yksinkertaisen ja intuitiivisen käyttöliittymän, joka yksinkertaistaa suosituilla ohjelmointikielillä, kuten Python ja Node.js, rakennettujen sovellusten käyttöönottoa.
  • Sisäänrakennetut tietokannat: Render tarjoaa sisäänrakennetun tuen suosituille tietokannoille, kuten PostgreSQL, MySQL ja MongoDB, mikä tekee siitä helppo asentaa ja integroida tietokantoja sovelluksiin ilman erillistä tietokantaa palvelimia.
  • Saumaton käyttöönoton työnkulku: Render tarjoaa ominaisuuksia, kuten automaattisia käyttöönottoja, palautuksia ja integraatioita suosittuihin palveluihin, kuten GitHub ja GitLab.
  • Mukautetut verkkotunnukset ja SSL: Render tarjoaa mahdollisuuden määrittää mukautettuja verkkotunnusten nimiä verkkosivustoille ja verkkosovelluksille, ja se sisältää ilmaiset SSL-sertifikaatit suojattua HTTPS-yhteyttä varten.

Renderin ja Herokun vertailu

Muiden pilvialustojen tavoin Renderillä on etuja ja haittoja. Mutta miten se verrataan suosittuihin pilviratkaisuihin, kuten Heroku?

  • Yksinkertaisuus: Render tarjoaa käyttäjäystävällisen käyttöliittymän sovellusten käyttöönottoon ja hallintaan keskittyen helppokäyttöisyyteen ja minimaaliseen konfigurointiin.
  • Automaattinen skaalaus: Renderöinti skaalaa sovelluksia automaattisesti kysynnän mukaan ilman manuaalisia säätöjä tai monimutkaisia ​​määrityksiä.
  • Kustannustehokkuus: Render tarjoaa kustannustehokkaan hinnoittelun, joka sisältää ilmaisen tason yksittäisille projekteille ja suhteellisen alhaisen hinnoittelun tiimeille ja organisaatiosuunnitelmia, mikä tekee siitä budjettiystävällisen vaihtoehdon sekä pienimuotoisten verkkosovellusten että suurten mainosten isännöintiin hankkeita.
  • Rajoitettu joustavuus: Sen yksinkertaisuus ja minimaaliset kokoonpanot voivat olla rajoituksena edistyneille ja monimutkaisille projekteille, jotka vaativat enemmän mukauttamista ja isännöintiympäristön hallintaa.

Luo uusi projekti Renderissä

Aloita valitsemalla otsikko kohtaan Renderin verkkosivusto ja kirjaudu sisään ja kirjaudu sisään tilillesi.

Renderin avulla on helppo ottaa käyttöön ja hallita taustasovellusliittymiä tarjoamalla sisäänrakennettua tukea suosituille ohjelmointikielille ja verkkopalveluille, jotka virtaviivaistavat käyttöönottoprosessia.

Tämä opas käyttää sen verkkopalveluominaisuutta Express.js REST API: n käyttöönotossa. Jotta voit jatkaa, sinun on ensin määritettävä PostgreSQL-tietokanta-instanssi Renderissä.

Napsauta yleiskatsaussivulla Uusi PostgreSQL -painiketta uuden esiintymän määrittämiseksi.

Täytä seuraavaksi tietokantasi nimi ja napsauta Luo tietokanta. Lopuksi kopioi Sisäisen tietokannan URL-osoite tarjotaan. Käytät sitä Express REST API: n ja PostgreSQL-tietokannan välisen yhteyden määrittämiseen.

Pohjimmiltaan sisäisen tietokannan URL-osoitetta käytetään muodostamaan yhteys Renderin palvelimilla käynnissä olevien sovellusten, kuten käyttöönotetun API: n tai täysimittaisen verkkosovelluksen, välille.

Jos kuitenkin haluat käyttää PostgreSQL-tietokantaa vain toiselle alustalle asennetusta sovelluksesta, voit käyttää Ulkoisen tietokannan URL-osoite määrittääksesi tietokantayhteyden.

Luo Express.js REST API

Mene eteenpäin ja Luo Express.js-verkkopalvelin. Asenna seuraavaksi seuraavat paketit:

npm asenna pg knex

Löydät tämän projektin koodin tästä GitHub-arkisto.

Määritä tietokantayhteys

Jos haluat määrittää yhteyden Express.js API: n ja Renderin PostgreSQL-ilmentymän välille, luo projektikansiosi juurihakemistoon db.js tiedosto ja lisää alla oleva koodi.

konst knex = vaatia('knex');
konst db = knex({
asiakas: "pg",
yhteys: {
yhteysmerkkijono: "tietokannan URL-osoite",
ssl: {
hylkää luvaton: väärä
}
}
});

moduuli.exports = db;

Avaa seuraavaksi index.js tiedosto ja lisää koodi sen alle toteuttaa yksinkertaisen REST API: n neljällä reitillä.

konst express = vaatia("ilmaista");
konst sovellus = express()
konst db = vaatia('./db')
konst PORT = process.env. SATAMA || 5000

app.use (express.json())
app.use (express.urlencoded({ laajennettu: totta }))

app.get('/', (req, res) => res.send('Hei maailma!' ))

// Hanki kaikki käyttäjät
app.get('/käyttäjät', asynk (req, res) => {
yrittää {
konst käyttäjät = odottaa db.select().from("käyttäjät")
res.json (käyttäjät)
} ottaa kiinni (virhe) {
konsoli.error (virhe)
res.status(500).json({ viesti: "Virhe haettaessa käyttäjiä" })
}
})


app.post('/käyttäjät', asynk (req, res) => {
yrittää {
konst käyttäjä = odottaa db("käyttäjät").insert({ nimi: req.body.name }).returning('*')
res.json (käyttäjä)
} ottaa kiinni (virhe) {
konsoli.error (virhe)
res.status(500).json({ viesti: "Virhe luotaessa käyttäjää" })
}
})

// Poista olemassa oleva käyttäjä
app.delete('/käyttäjät/:id', asynk (req, res) => {
yrittää {
konst { id } = req.params
konst käyttäjä = odottaa db("käyttäjät").where({ id }).delete().returning('*')
res.json (käyttäjä)
} ottaa kiinni (virhe) {
konsoli.error (virhe)
res.status(500).json({ viesti: "Virhe poistettaessa käyttäjää" })
}
})

app.listen (PORT, () => konsoli.Hirsi(`Palvelin PORTissa:${PORT}`))

Määritä migrate.js-tiedosto

Luo uusi kansio, käsikirjoituksia, lisää projektisi juurihakemistoon uusi tiedosto, migrate.js, ja lopuksi lisää alla oleva koodi:

konst db = vaatia('../db');
(asynk () => {
yrittää {
odottaa db.schema.dropTableIfExists("käyttäjät")
odottaa db.schema.withSchema('julkinen').createTable("käyttäjät", (taulukko) => {
table.increments()
table.string('nimi')
})
konsoli.Hirsi("Käyttäjätaulukko luotu!")
process.exit(0)
} ottaa kiinni (err) {
konsoli.log (err)
process.exit(1)
}
})()

Tämä koodi luo uuden käyttäjiä tietokannan taulukko kahdella sarakkeella: automaattisesti kasvavalla ensisijaisen avaimen kentällä ja nimikentällä.

Lisää lopuksi nämä komennot omaan package.json tiedosto.

"käsikirjoitukset": {
"alkaa": "solmuindeksi.js",
"muuttaa": "node scripts/migrate.js",
},

Lopuksi, jotta voit luoda käyttäjän taulukon tietokantaan, sinun on suoritettava migrate.js tiedosto komentosarjana päätteessäsi käyttämällä alla olevaa komentoa.

npm run migrate

Ennen kuin suoritat komennon, muista kuitenkin noutaa Ulkoisen tietokannan URL-osoite Renderin PostgreSQL-ilmentymän asetustiedoista ja liitä ne kohtaan db.js tiedosto yhteysmerkkijonona.

Tämä muodostaa yhteyden tietokantailmentymään paikalliselta koneeltasi, jolloin voit luoda taulukon ennen API: n käyttöönottoa. Kun taulukko on luotu, voit siirtyä Renderin PostgreSQL-instanssiin ja hakea Sisäisen tietokannan URL-osoiteja päivittää db.js tiedostoa vastaavasti.

Ota REST API käyttöön Renderissä

Ensimmäinen, luo uusi arkisto GitHubissa ja paina projektikoodia. Kirjaudu seuraavaksi Render-tilillesi ja napsauta Uusi+ -painiketta ja valitse Verkkopalvelu vaihtoehto avattavasta valikosta.

Siirry lopuksi GitHub-tilillesi, valitse projektisi arkisto ja muodosta yhteys siihen Renderissä.

Anna verkkopalvelun asetussivulla nimi uudelle palvelulle, määritä projektin juurihakemisto, build and start -komento ja napsauta lopuksi Luo verkkopalvelu. Kun käyttöönottoprosessi on valmis, kopioi toimitettu URL-osoite testataksesi päätepisteitä Postmanissa.

Testaa API-päätepisteitä Postmanissa

Postman on suosittu työkalu API: iden kehittämiseen ja testaamiseen. Tutustuaksesi Postmaniin, oppia käyttämään sitä API: n testaamiseen.

Testaa käyttöön otettua API: ta tekemällä a LÄHETTÄÄ pyyntö osoitteeseen /käyttäjiä päätepisteen tietojen tallentamiseksi PostgreSQL-tietokantaan.

Tee lopuksi GET-pyyntö tallennettujen tietojen hakemiseksi.

Onko Render käyttökelpoinen vaihtoehto?

Render tarjoaa suoraviivaisen asennusprosessin ja saumattoman integraation suosittuihin versionhallintajärjestelmiin, mikä tekee siitä hyvän vaihtoehtoisen pilvipalvelualustan.

Lisäksi sen kilpailukykyinen hinnoittelumalli ja sisäänrakennettu tuki suosituille kehitystyökaluille tekevät siitä luotettavan ja käyttäjäystävällisen vaihtoehdon sekä sivuprojekteihin että suuriin kaupallisiin sovelluksiin.