برنامه نویسی وب
-

چگونه یک سیستم آپلود فایل امن طراحی کنیم؟
آپلود فایل نقطهای است که سامانه داوطلبانه داده بیرونی را میپذیرد؛ اگر لایهبندی نشده باشد، دروازه ورود مهاجم میشود. این…
بیشتر بخوانید » -

Rate Limiting چیست و چگونه از API در برابر سوءاستفاده محافظت میکند؟
یک اسکریپت بیمحابا میتواند سرویسی سالم را برای همه کند یا قطع کند. Rate Limiting با گذاشتن سقف منصفانه روی…
بیشتر بخوانید » -

Queue و Background Job چیست و چه زمانی باید کار را از درخواست اصلی جدا کنیم؟
ثبت سفارشی که خودش ایمیل میفرستد، فاکتور میسازد و انبار را همگام میکند، در ساعات اوج کاربر را معطل و…
بیشتر بخوانید » -

مشکل N+1 Query چیست و چگونه باید آن را شناسایی و رفع کرد؟
داشبوردی که در محیط آزمایشی روان بود، با رشد دادهها زمینگیر شد؛ مقصر الگویی به نام N+1 Query بود: یک…
بیشتر بخوانید » -

Cache چیست و چه زمانی استفاده از آن اشتباه است؟
کش (Cache) با نگهداشتن پاسخهای آماده، زمان انتظار کاربر و بار سرور را کم میکند؛ اما پاسخ آماده همیشه پاسخ…
بیشتر بخوانید » -

Versioning در API چیست و چرا نباید تغییرات ناسازگار را مستقیماً اعمال کرد؟
تغییر مستقیم یک API فعال، مثل تعویض قفل خانهای است که کلیدهایش دست مشتریهاست. این مقاله دو رویکرد مقابل هم…
بیشتر بخوانید » -

Pagination، Filtering و Sorting در API چگونه باید طراحی شوند؟
وقتی حجم دادهها رشد میکند، سرویسی که همهچیز را یکجا برمیگرداند به گلوگاه تبدیل میشود. این مقاله سه ستون طراحی…
بیشتر بخوانید » -

Webhook چیست و چه تفاوتی با Polling دارد؟
دو سامانه چگونه از رخدادهای یکدیگر باخبر شوند؟ این مقاله دو الگوی اصلی ارتباط را مقایسه میکند: Polling با پرسوجوی…
بیشتر بخوانید » -

JWT چیست و چه تفاوتی با Session دارد؟
سرور از کجا میفهمد درخواستهای بعدی متعلق به همان کاربر واردشده است؟ این مقاله دو پاسخ اصلی را مقایسه میکند:…
بیشتر بخوانید » -

Authentication و Authorization چه تفاوتی دارند؟
احراز هویت (Authentication) و مجوز دسترسی (Authorization) دو لایه متفاوت امنیتاند: اولی هویت را اثبات میکند و دومی مرزهای توانستههای…
بیشتر بخوانید »