---
title: "#backend articles | Hashnode"
description: "Explore 8,384 articles tagged #backend on Hashnode. Tutorials, guides, and how-tos from the community."
url: "https://hashnode.com/tag/backend"
---

Tag

# #backend

8,384 posts · 1,457 followers

[Parminder singh](https://hashnode.com/@param007) · [4h ago](https://hashnode.com/posts/payment-failed-money-deducted-idempotency/6af2d4383c36fe3908d4fd5a)

### [Payment failed but money deducted: how idempotency keys stop double charges](https://systemdesignwithparam.hashnode.dev/payment-failed-money-deducted-idempotency?utm_source=hashnode&utm_medium=feed)

The app shows "Payment failed". A second later your phone gets an SMS: ₹2,000 debited. You tap Pay again. Now ₹4,000 is gone, and you still have no order. This post covers why this happens, the fixes

5 min read · [systemdesignwithparam.hashnode.dev](https://systemdesignwithparam.hashnode.dev/payment-failed-money-deducted-idempotency?utm_source=hashnode&utm_medium=feed)

[Sohail Khan](https://hashnode.com/@msohailkhandev) · [2h ago](https://hashnode.com/posts/your-api-does-not-need-more-logs-it-needs-one-error-shape/6af2f01eaf8577ecd8257580)

### [Your API Does Not Need More Logs. It Needs One Error Shape.](https://msohailkhandev.hashnode.dev/your-api-does-not-need-more-logs-it-needs-one-error-shape?utm_source=hashnode&utm_medium=feed)

Your API does not need more logs. It needs one error shape. A client I worked with kept breaking every time an endpoint failed. One error came back as plain text, the next as an HTML page, the next as

4 min read · [msohailkhandev.hashnode.dev](https://msohailkhandev.hashnode.dev/your-api-does-not-need-more-logs-it-needs-one-error-shape?utm_source=hashnode&utm_medium=feed)

[Engage HRMS](https://hashnode.com/@engagehrms) · [5h ago](https://hashnode.com/posts/ncp-days-epf-ecr-field-10/6af2d0463a2b010b18e315dc)

### [NCP days in the EPF ECR: how field 10 works and the payroll bugs that miscount it](https://engagehrms.hashnode.dev/ncp-days-epf-ecr-field-10?utm_source=hashnode&utm_medium=feed)

A whole-number field that most payroll code fills from the wrong table

8 min read · [engagehrms.hashnode.dev](https://engagehrms.hashnode.dev/ncp-days-epf-ecr-field-10?utm_source=hashnode&utm_medium=feed)

[Adam Jaber](https://hashnode.com/@adamjaber) · [8h ago](https://hashnode.com/posts/llm-token-limits-non-english-languages/6af2a05341653c7b04720a67)

### [Your LLM Limits Were Tuned in English: A Multilingual Token Budget Audit](https://simplyexplained.hashnode.dev/llm-token-limits-non-english-languages?utm_source=hashnode&utm_medium=feed)

max\_tokens, history windows, rate limits, input caps and RAG chunks all shrink for Hindi, Tamil and Arabic users. Here's how to measure and fix it.

10 min read · [simplyexplained.hashnode.dev](https://simplyexplained.hashnode.dev/llm-token-limits-non-english-languages?utm_source=hashnode&utm_medium=feed)

[Gowtham Muthuvel](https://hashnode.com/@GowthamMuthuvel) · [8h ago](https://hashnode.com/posts/spring-security-jwt-refresh-token-rotation-rbac/6af29fea91696569429d27db)

### [JWT + Role-Based Access in Spring Security: Refresh Tokens Without the Footguns](https://gowthammuthuvel.hashnode.dev/spring-security-jwt-refresh-token-rotation-rbac?utm_source=hashnode&utm_medium=feed)

Rotation with reuse detection, ROLE\_ vs SCOPE\_ mapping, and the permitAll() trap, all tested on Spring Boot 4.1.2. Replaying an old refresh token revoked 2 tokens and killed the session.

20 min read · [gowthammuthuvel.hashnode.dev](https://gowthammuthuvel.hashnode.dev/spring-security-jwt-refresh-token-rotation-rbac?utm_source=hashnode&utm_medium=feed)

[Muhammad Ali Qamar](https://hashnode.com/@muhammadaliqamar) · [20h ago](https://hashnode.com/posts/agent-infrastructure-four-bolted-on-layers/6af1fb0717098c493789b082)

### [Agent infrastructure is four bolted-on layers. None of them enforce.](https://devlogix.hashnode.dev/agent-infrastructure-four-bolted-on-layers?utm_source=hashnode&utm_medium=feed)

Libraries request. Runtimes enforce. The agent stack skipped that layer entirely.

6 min read · [devlogix.hashnode.dev](https://devlogix.hashnode.dev/agent-infrastructure-four-bolted-on-layers?utm_source=hashnode&utm_medium=feed)

[Krrish Kumar](https://hashnode.com/@quietkernel) · [1d ago](https://hashnode.com/posts/building-a-distributed-tokens-per-minute-limiter-for-llm-apis-with-one-redis-lua-script/6af1c6a6f7522e005a9755d2)

### [Building a distributed tokens-per-minute limiter for LLM APIs with one Redis Lua script](https://quietkernel.hashnode.dev/building-a-distributed-tokens-per-minute-limiter-for-llm-apis-with-one-redis-lua-script?utm_source=hashnode&utm_medium=feed)

Token buckets, reserve-and-settle leases, crash-safe concurrency slots, and why a 429 isn't always a rate limit

7 min read · [quietkernel.hashnode.dev](https://quietkernel.hashnode.dev/building-a-distributed-tokens-per-minute-limiter-for-llm-apis-with-one-redis-lua-script?utm_source=hashnode&utm_medium=feed)

[Akshita Gupta](https://hashnode.com/@codeincontext) · [1d ago](https://hashnode.com/posts/the-api-wasn-t-slow-finding-a-2-minute-delay-in-the-delivery-path/6af0c4620ba174b457f411ff)

### [The API Wasn't Slow: Finding a 2-Minute Delay in the Delivery Path](https://codeincontextbyag.hashnode.dev/the-api-wasn-t-slow-finding-a-2-minute-delay-in-the-delivery-path?utm_source=hashnode&utm_medium=feed)

The API requests took 2+ minutes. How Nginx timing logs and testing from multiple places revealed the delivery path bottleneck.

6 min read · [codeincontextbyag.hashnode.dev](https://codeincontextbyag.hashnode.dev/the-api-wasn-t-slow-finding-a-2-minute-delay-in-the-delivery-path?utm_source=hashnode&utm_medium=feed)

[7](https://hashnode.com/posts/the-api-wasn-t-slow-finding-a-2-minute-delay-in-the-delivery-path/6af0c4620ba174b457f411ff)

[Kartik Budhlakoti](https://hashnode.com/@kartik-budhlakoti) · [1d ago](https://hashnode.com/posts/the-project-behind-these-posts-medical-integrity-system/6af0cb964b0c43bd3011e349)

### [The Project Behind These Posts: Medical Integrity System](https://kartikbudhlakoti.hashnode.dev/the-project-behind-these-posts-medical-integrity-system?utm_source=hashnode&utm_medium=feed)

How I built a FastAPI learning project with patient access rules, file integrity checks, automated tests and Docker deployment—and what went wrong.

9 min read · [kartikbudhlakoti.hashnode.dev](https://kartikbudhlakoti.hashnode.dev/the-project-behind-these-posts-medical-integrity-system?utm_source=hashnode&utm_medium=feed)

[3](https://hashnode.com/posts/the-project-behind-these-posts-medical-integrity-system/6af0cb964b0c43bd3011e349)

[Krishnam Murarka](https://hashnode.com/@krishnamm) · [1d ago](https://hashnode.com/posts/an-audit-log-that-says-put-v2-object-200-won-t-help-an-investigation/6af16611d290dfc0c283b6cf)

### [An audit log that says PUT /v2/object 200 won't help an investigation](https://edilec-engineering.hashnode.dev/an-audit-log-that-says-put-v2-object-200-won-t-help-an-investigation?utm_source=hashnode&utm_medium=feed)

A request log can tell you that PUT /v2/object returned 200 at 14:03:07. It can't tell you who approved the refund, who changed a supplier's bank account, or whether the person clicking was an admin a

4 min read · [edilec-engineering.hashnode.dev](https://edilec-engineering.hashnode.dev/an-audit-log-that-says-put-v2-object-200-won-t-help-an-investigation?utm_source=hashnode&utm_medium=feed)

[1](https://hashnode.com/posts/an-audit-log-that-says-put-v2-object-200-won-t-help-an-investigation/6af16611d290dfc0c283b6cf)
