مقدمة إلى Serverless باستخدام Node.js
افهموا الحوسبة من دون خوادم ومزاياها وكيفية نشر دوال Node.js على منصات مثل AWS Lambda
مقدمة إلى Serverless باستخدام Node.js درس مجاني في Node.js Backend Development Bootcamp على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Node.js Backend Development Bootcamp، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Node.js Backend Development Bootcamp 4 دروس في المجموع.
بعض أجزاء هذا الدرس لم تُترجم بعد وتظهر باللغة الإنجليزية.
What is Serverless Computing?
Welcome to the world of Serverless Computing! This isn't about running code without servers; it's about not managing them yourself.
In a serverless architecture, a cloud provider (like AWS, Azure, or Google Cloud) handles all the server management, scaling, and infrastructure for you. You just focus on writing your code.

Function as a Service (FaaS)
The core of serverless is often Function as a Service (FaaS). You deploy individual functions, not entire applications.
- Event-Driven: Functions run only when triggered by an event (e.g., an HTTP request, a file upload, a database change).
- Stateless: Each execution is independent; functions don't maintain state between invocations.
- Ephemeral: Functions only exist while they are executing, then they shut down.
Why Go Serverless? Key Benefits
Serverless offers compelling advantages for many applications:
- Reduced Operational Overhead: No servers to provision, patch, or scale.
- Automatic Scalability: Your functions automatically scale up or down based on demand.
- Cost Efficiency: You only pay for the compute time your code actually runs, often measured in milliseconds.
- Faster Development: Focus on business logic, not infrastructure.
Node.js: A Perfect Serverless Fit
Node.js is incredibly popular for serverless functions, and for good reason!
Its event-driven, non-blocking I/O model aligns perfectly with the ephemeral, event-driven nature of serverless functions. Node.js functions also tend to have very fast 'cold start' times, meaning they're ready to execute quickly.
Introducing AWS Lambda
AWS Lambda is Amazon Web Services' leading FaaS offering and one of the most widely used serverless platforms.
Lambda allows you to run code without provisioning or managing servers. You upload your code, and Lambda takes care of everything required to run and scale it with high availability.
Anatomy of a Lambda Function
A Node.js Lambda function typically exports a single handler function. This function receives two main arguments:
event: An object containing data about the trigger event.context: An object providing runtime information about the invocation, function, and execution environment.
The function can be async or return a Promise for asynchronous operations.
Your First Lambda Function
Let's look at a simple "Hello World" Lambda function in Node.js. This function responds with a greeting.
Notice the statusCode and body which are common for HTTP responses via Lambda.
exports.handler = async (event) => {
const response = {
statusCode: 200,
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ message: 'Hello from CoddyKit Lambda!' }),
};
return response;
};Understanding the Event Object
The event object is crucial as it contains all the input data for your function. Its structure varies based on the trigger.
If triggered by an API Gateway, it might include:
httpMethod(e.g., 'GET', 'POST')path(e.g., '/hello')queryStringParametersbody(for POST requests)
Common Lambda Triggers
Lambda functions can be invoked by a wide array of AWS services. Here are some common triggers:
- API Gateway: For building RESTful APIs.
- S3 (Simple Storage Service): When objects are created or deleted in a bucket.
- DynamoDB Streams: When items in a DynamoDB table are modified.
- SNS (Simple Notification Service): For notifications and fan-out messaging.
- CloudWatch Events/EventBridge: For scheduled tasks or reacting to AWS service events.
Serverless Concept Check
Test your understanding of serverless computing!
Recap: Intro to Serverless
Great job! You've taken your first steps into serverless computing.
- We defined serverless as focusing on code, not server management.
- Learned about FaaS (Function as a Service) as its core concept.
- Explored benefits like cost efficiency and automatic scalability.
- Understood why Node.js is a great fit for serverless.
- Got an introduction to AWS Lambda and its basic function structure.
Next, we'll dive into GraphQL API design principles!
الأسئلة الشائعة
هل درس «مقدمة إلى Serverless باستخدام Node.js» مجاني؟
نعم — نص درس «مقدمة إلى Serverless باستخدام Node.js» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Node.js Backend Development Bootcamp، انتقل إلى CoddyKit PRO. تتضمن دورة Node.js Backend Development Bootcamp 4 دروس في المجموع.
ماذا ستتعلم في «مقدمة إلى Serverless باستخدام Node.js»؟
افهموا الحوسبة من دون خوادم ومزاياها وكيفية نشر دوال Node.js على منصات مثل AWS Lambda تتمرن على Node.js Backend Development Bootcamp مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Node.js Backend Development Bootcamp؟
لا تُشترط خبرة سابقة. Node.js Backend Development Bootcamp على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «مقدمة إلى Serverless باستخدام Node.js»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Node.js Backend Development Bootcamp هذا؟
نعم. كل درس في Node.js Backend Development Bootcamp يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- مقدمة إلى Serverless باستخدام Node.js
- مبادئ تصميم GraphQL API
- إنشاء خادم GraphQL باستخدام Apollo
- اشتراكات GraphQL للبيانات الفورية