నెట్వర్క్లో ట్రాఫిక్ను నియంత్రించడానికి మీరు ఉపయోగించగల వ్యూహం రేటు పరిమితి. ఇది నిర్దిష్ట సమయ వ్యవధిలో వినియోగదారు చేయగలిగే అభ్యర్థనల సంఖ్యను పరిమితం చేస్తుంది.
వివిధ రేటు పరిమితి అల్గోరిథంలు ఉన్నాయి, ప్రతి దాని స్వంత ట్రేడ్-ఆఫ్లు ఉన్నాయి. అభ్యర్థనల IP చిరునామాలను ట్రాక్ చేయడం మరియు అభ్యర్థనల మధ్య ఎంత సమయం గడిచిపోతుందో తనిఖీ చేయడం ఒక సాధారణ మరియు ప్రసిద్ధ పద్ధతి. సిస్టమ్ IP చిరునామా పరిమితి అనుమతించిన అభ్యర్థనల సంఖ్యను మించి ఉంటే అభ్యర్థనను తిరస్కరించవచ్చు.
రోజు యొక్క వీడియోను తయారు చేయండి
రేట్ పరిమితికి సంబంధించిన ఈ విధానాన్ని NodeJS-Express యాప్లో రూపొందించడం సులభం, కేవలం కొన్ని దశలతో.
దశ 1: అభివృద్ధి వాతావరణాన్ని ఏర్పాటు చేయడం
ముందుగా, మీరు ఎక్స్ప్రెస్ అప్లికేషన్ను సృష్టించి, ప్రారంభించాలి.
అమలు చేయడం ద్వారా ప్రాజెక్ట్ డైరెక్టరీని సృష్టించడం ద్వారా ప్రారంభించండి:
mkdir express-app
ఆపై రన్ చేయడం ద్వారా ఆ డైరెక్టరీని నమోదు చేయండి:
cd express-app
తరువాత, ప్రారంభించండి npm, నోడ్ ప్యాకేజీ మేనేజర్, మరియు a సృష్టించు pack.json అమలు చేయడం ద్వారా మీ అప్లికేషన్లో ఫైల్ చేయండి:
npm init -y
ది -వై జెండా మీ సృష్టిస్తుంది pack.json అన్ని డిఫాల్ట్ సెట్టింగ్లతో ఫైల్.
తరువాత, మీరు కొన్ని డిపెండెన్సీలను ఇన్స్టాల్ చేయాలి. ఈ ట్యుటోరియల్కు అవసరమైన డిపెండెన్సీలు:
- ExpressJS: ExpressJS ఒక NodeJS ఫ్రేమ్వర్క్ ఇది వెబ్ మరియు మొబైల్ అప్లికేషన్ల కోసం బలమైన ఫీచర్ల సెట్ను అందిస్తుంది. ఇది NodeJSతో బ్యాకెండ్ అప్లికేషన్లను రూపొందించే ప్రక్రియను సులభతరం చేస్తుంది.
- ఎక్స్ప్రెస్ రేట్ పరిమితి : ఎక్స్ప్రెస్ రేట్ పరిమితి అనేది ExpressJS కోసం రేట్-పరిమితం చేసే మిడిల్వేర్. ఇది పబ్లిక్ APIలు మరియు/లేదా పాస్వర్డ్ రీసెట్లు, యూజర్ లాగిన్లు మొదలైనవాటికి పునరావృతమయ్యే అభ్యర్థనలను పరిమితం చేస్తుంది.
అమలు చేయడం ద్వారా అవసరమైన డిపెండెన్సీలను ఇన్స్టాల్ చేయండి:
npm install express express-rate-limit
దశ 2: ఒక ఎక్స్ప్రెస్ అప్లికేషన్ను సృష్టించడం
మీరు మీ అప్లికేషన్కు చేసిన అభ్యర్థనలను వినే ప్రాథమిక ఎక్స్ప్రెస్ సర్వర్ని సృష్టించాలి.
మొదట, ఒక సృష్టించండి index.js మీ ప్రాజెక్ట్ యొక్క రూట్ డైరెక్టరీలో ఫైల్ చేయండి. ఇది మీ అప్లికేషన్ కోసం ఎంట్రీ ఫైల్ అవుతుంది.
తర్వాత, కింది కోడ్ని మీకి జోడించండి index.js ఫైల్:
// index.js
const express = require("express");
const app = express();
const port = process.env.PORT || 3000
app.listen(port, () => {
console.log(`App running on port ${port}`);
});
ఈ కోడ్ దిగుమతి అవుతుంది ఎక్స్ప్రెస్ మరియు ఎక్స్ప్రెస్()కి కాల్ చేయడం ద్వారా ఎక్స్ప్రెస్ అప్లికేషన్ను క్రియేట్ చేస్తుంది మరియు దాని రిటర్న్ విలువను లో నిల్వ చేస్తుంది అనువర్తనం వేరియబుల్. ఇది పోర్ట్లో ట్రాఫిక్ను వింటుంది 3000 కాల్ చేయడం ద్వారా వినండి న పద్ధతి అనువర్తనం వస్తువు.
cpu ఎప్పుడు చాలా వేడిగా ఉంటుంది
దశ 3: రూట్ హ్యాండ్లర్లను సృష్టించడం
తర్వాత, మీరు రేటు-పరిమితి పరిష్కారాన్ని అమలు చేయగల కొన్ని రూట్ హ్యాండ్లర్లను సృష్టించండి.
ముందుగా, రన్ చేయడం ద్వారా మీ ప్రాజెక్ట్ యొక్క రూట్ డైరెక్టరీలో ఫోల్డర్, రూట్లను సృష్టించండి:
mkdir routes
ఫైల్ను సృష్టించండి, routes.js , మీ మార్గాల ఫోల్డర్ లోపల మరియు క్రింది కోడ్ను జోడించండి:
const express = require("express");
const router = express.Router();
router.get("/", (req, res) => {
res.send({ message: "Hello, this is a GET request" });
});
router.post("/add-demo", (req, res) => {
res.status(201).send({ message: "Resource created successfully" });
});
router.put("/update-demo", (req, res) => {
res.status(201).send({ message: "Resource updated sucessfully" });
});
module.exports = router;
ఈ కోడ్ దిగుమతి అవుతుంది ఎక్స్ప్రెస్ , కాల్స్ రూటర్ న పద్ధతి ఎక్స్ప్రెస్ , మరియు విలువను వేరియబుల్లో నిల్వ చేస్తుంది, రూటర్ . ది రూటర్ మాడ్యులర్, మౌంట్ చేయగల రూట్ హ్యాండ్లర్లను సృష్టించడానికి ఈ పద్ధతి మిమ్మల్ని అనుమతిస్తుంది. మీరు a కోసం రూట్ హ్యాండ్లర్లను సృష్టించవచ్చు పొందండి అభ్యర్థన' / ”, ఎ పోస్ట్ అభ్యర్థన' / add-demo ”, మరియు ఎ పెట్టండి అభ్యర్థన' /అప్డేట్-డెమో ”. చివరగా, ఎగుమతి చేయండి రూటర్ వేరియబుల్.
తరువాత, దిగుమతి చేయండి రూటర్ మీలో వేరియబుల్ index.js ఫైల్:
// index.js
const routes = require("./routes/routes");
ఆపై, మీ index.js ఫైల్లో మిడిల్వేర్గా దీన్ని ఉపయోగించండి:
// index.js
app.use(routes);