Telegram Group & Telegram Channel
إزاي تنفذ الـ Caching في Node.js؟ 🤔
.
.
لو أنت شغال بـ Node.js، فـ أكيد قابلت في يوم مشكلة إن الـ API عندك بيبقى بطيء بسبب requests كتير أو عمليات تقيلة زي queries على database، وبدأت تفكر:
"ليه كل مرة أجيب نفس الداتا؟ طب مفيش حل أسرع؟"

الإجابة هي: Caching.

وده اللي هنتكلم عنه اليوم بالتفصيل....

[ كل الأكواد هتلاقيها في التعليقات تحت الرسالة ]

———

🎯 إيه هو الـ Caching؟


ببساطة، هو إنك تحفظ نسخة من الداتا مؤقتًا في مكان تاني (بيكون أسرع من المصدر الأساسي زي الـ DB)، علشان لما تيجي تطلب نفس الحاجة تاني، ما تروح تجيبها من الأول، لا، ترد بسرعة من الـ cache.

وده بيفرق جامد جدًا في السرعة، والأداء، والحمل على السيرفر.

———

إزاي تعمل الـ Caching في Node.js؟


1. الـ In-Memory Caching (باستخدام node-cache أو lru-cache)

لو عندك داتا مش كبيرة ومش محتاج تشاركها بين أكتر من instance، فـ in-memory caching بيكون حل سريع وسهل.

📌 مناسب لحالات زي الداتا القليلة، أو عمليات حسابية تقيلة، بس خلي بالك إنه volatile، يعني لو السيرفر عمل restart، كل حاجة بتروح.

———

2. الـ Redis Caching (الحل الأقوى والأشهر)

لو بتدور على Cache centralized وسريع وتقدر تشارك الداتا بين أكتر من instance، يبقى Redis هو الأفضل هنا.

🎯 الـ Redis سريع جدًا، وبيستخدم في مشاريع كبيرة زي Twitter و GitHub. وكمان تقدر تتحكم في TTL، وتعمل invalidation، وتخزن أكتر من نوع داتا.

———

3. الـ Caching Responses مباشرة (مثلًا في GraphQL أو REST)

لو شغال مثلاً بـ Apollo Server في GraphQL، تقدر تستخدم built-in caching

أو حتى لو شغال REST تقدر تستخدم middlewares زي apicache أو express-cache-controller.

———

🤔 إمتى تستخدم الـ Caching؟


- لما تكون بتكرر نفس الـ requests بكميات كبيرة.
- لما الداتا تكون مش بتتغير كتير.
- لو الـ DB عندك بطيئة أو بتاخد وقت في المعالجة.
- لو عايز تقلل الترافيك على الـ backend.

———

⚠️ خلي بالك:


لازم تعمل Cache Invalidation كويس، علشان ما ترجع داتا قديمة بعد التحديث.

بلاش تستخدم الـ Caching لأي داتا حساسة أو شخصية (privacy first).

خليك دايمًا عارف إمتى تعمل Cache، وإمتى لا... مش كل حاجة محتاجة تتخزن.

———

وفقكم الله لكل خير 🌿



tg-me.com/the_developer_guide/5305
Create:
Last Update:

إزاي تنفذ الـ Caching في Node.js؟ 🤔
.
.
لو أنت شغال بـ Node.js، فـ أكيد قابلت في يوم مشكلة إن الـ API عندك بيبقى بطيء بسبب requests كتير أو عمليات تقيلة زي queries على database، وبدأت تفكر:
"ليه كل مرة أجيب نفس الداتا؟ طب مفيش حل أسرع؟"

الإجابة هي: Caching.

وده اللي هنتكلم عنه اليوم بالتفصيل....

[ كل الأكواد هتلاقيها في التعليقات تحت الرسالة ]

———

🎯 إيه هو الـ Caching؟


ببساطة، هو إنك تحفظ نسخة من الداتا مؤقتًا في مكان تاني (بيكون أسرع من المصدر الأساسي زي الـ DB)، علشان لما تيجي تطلب نفس الحاجة تاني، ما تروح تجيبها من الأول، لا، ترد بسرعة من الـ cache.

وده بيفرق جامد جدًا في السرعة، والأداء، والحمل على السيرفر.

———

إزاي تعمل الـ Caching في Node.js؟


1. الـ In-Memory Caching (باستخدام node-cache أو lru-cache)

لو عندك داتا مش كبيرة ومش محتاج تشاركها بين أكتر من instance، فـ in-memory caching بيكون حل سريع وسهل.

📌 مناسب لحالات زي الداتا القليلة، أو عمليات حسابية تقيلة، بس خلي بالك إنه volatile، يعني لو السيرفر عمل restart، كل حاجة بتروح.

———

2. الـ Redis Caching (الحل الأقوى والأشهر)

لو بتدور على Cache centralized وسريع وتقدر تشارك الداتا بين أكتر من instance، يبقى Redis هو الأفضل هنا.

🎯 الـ Redis سريع جدًا، وبيستخدم في مشاريع كبيرة زي Twitter و GitHub. وكمان تقدر تتحكم في TTL، وتعمل invalidation، وتخزن أكتر من نوع داتا.

———

3. الـ Caching Responses مباشرة (مثلًا في GraphQL أو REST)

لو شغال مثلاً بـ Apollo Server في GraphQL، تقدر تستخدم built-in caching

أو حتى لو شغال REST تقدر تستخدم middlewares زي apicache أو express-cache-controller.

———

🤔 إمتى تستخدم الـ Caching؟


- لما تكون بتكرر نفس الـ requests بكميات كبيرة.
- لما الداتا تكون مش بتتغير كتير.
- لو الـ DB عندك بطيئة أو بتاخد وقت في المعالجة.
- لو عايز تقلل الترافيك على الـ backend.

———

⚠️ خلي بالك:


لازم تعمل Cache Invalidation كويس، علشان ما ترجع داتا قديمة بعد التحديث.

بلاش تستخدم الـ Caching لأي داتا حساسة أو شخصية (privacy first).

خليك دايمًا عارف إمتى تعمل Cache، وإمتى لا... مش كل حاجة محتاجة تتخزن.

———

وفقكم الله لكل خير 🌿

BY DevGuide 🇵🇸


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/the_developer_guide/5305

View MORE
Open in Telegram


DevGuide 🇵🇸 Telegram | DID YOU KNOW?

Date: |

Telegram Auto-Delete Messages in Any Chat

Some messages aren’t supposed to last forever. There are some Telegram groups and conversations where it’s best if messages are automatically deleted in a day or a week. Here’s how to auto-delete messages in any Telegram chat. You can enable the auto-delete feature on a per-chat basis. It works for both one-on-one conversations and group chats. Previously, you needed to use the Secret Chat feature to automatically delete messages after a set time. At the time of writing, you can choose to automatically delete messages after a day or a week. Telegram starts the timer once they are sent, not after they are read. This won’t affect the messages that were sent before enabling the feature.

In many cases, the content resembled that of the marketplaces found on the dark web, a group of hidden websites that are popular among hackers and accessed using specific anonymising software.“We have recently been witnessing a 100 per cent-plus rise in Telegram usage by cybercriminals,” said Tal Samra, cyber threat analyst at Cyberint.The rise in nefarious activity comes as users flocked to the encrypted chat app earlier this year after changes to the privacy policy of Facebook-owned rival WhatsApp prompted many to seek out alternatives.DevGuide 🇵🇸 from ua


Telegram DevGuide 🇵🇸
FROM USA