# Rate Limiting — Fastify: High-Performance Node.js APIs बनाना

Source: https://www.skillbyai.com/hi/fastify/ff-rate-limiting

> per-IP या per-user limits और time windows के साथ @fastify/rate-limit से Fastify API सुरक्षित करें।

## Rate limit क्यों?

Rate limiting abuse को prevent करता है, DDoS से protect करता है, और clients के बीच fair resource allocation सुनिश्चित करता है।

## @fastify/rate-limit उपयोग करना

Built-in protection के लिए Fastify rate-limit plugin उपयोग करें।

```javascript
import rateLimit from '@fastify/rate-limit';

await fastify.register(rateLimit, {
  max: 100,                  // requests
  timeWindow: '15 minutes',
  allowList: ['127.0.0.1'],  // don't limit localhost
  keyGenerator: (req) => req.user?.id || req.ip, // per user if authenticated, else per IP
});
```
