專案實作了一個具有速率限制的 HTTP 伺服器。它確保每秒處理的請求數不超過 5 個。
API速率限制伺服器限制每秒的請求數量,以防止濫用並有效管理伺服器負載。它提供詳細的日誌記錄和健康檢查端點來監控伺服器狀態。
https://github.com/surajupadhaya/Simple-API-RateLimit
1. Clone the repository: #git clone https://github.com/surajupadhaya/Simple-API-RateLimit #cd Simple-API-RateLimit 2. Install dependencies: #go mod tidy
1. /: Default route returns a "stupid request" message with status 400. 2. /healthcheck: Endpoint to check the health status of the server. Returns "Health Passed" if the /healthcheck file exists, otherwise "Health Failed". 3. /api/v1/product: Example endpoint for the product API. Returns "This is a Product API" if the /api/v1/product file exists, otherwise "There is no Product API".
1. Run the API rate limiting server: #go run main.go 2. Access the server: #curl -w %{http_code}http://localhost:8080
1. Run Httperf tool to test the rate limiting Below httperf command is sending 6 connection parallelly in one sec Out of 6 only 1 will receive 503 code (due to throttling) remaining will receive based on behavior #httperf --server localhost --port 8080 --uri /healthcheck --num-conns 6 Sample output : ![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/842aqi7lmzqw7sa1mcs1.png)
This project is licensed under the MIT License. See the LICENSE file for details. This `README.md` should cover the current state of your project, focusing on the API rate limiting aspect. Ready to roll? ? This should cover everything your project entails. You can add, modify, or remove sections as needed. ?
以上是API限速伺服器的詳細內容。更多資訊請關注PHP中文網其他相關文章!