# زبان های اسکریپتی > JavaScript و Framework های مبتنی بر آن > Node.js >  یه سری سوال راجب node.js

## theboy

سلام.
می خواستم بیشتر راجب node.js بدونم.
یه سرچی کردم و برداشتم این بود که یه حالت real-time بین سرور و کاربر ایجاد می کنه، یعنی مثلا عین ویندوز کامپیوتر می تونیم توش زمان بندی و... بدیم یا در صورت افتادن اتفاق خاصی بدون نیاز به رفرش اون اتفاق بلافاصله نمایش داده میشه.
درست فهمیدم؟ اگه اینطوری باشه میشه باهاش یه چت روم بدون نیاز به دیتابیس نوشت؟(نیازی به ذخیره ی متون نیست، فقط مادامی که پیج ریلود یا بسته نشده نوشته بمونند و دو کاربر متصل شده با هم چت کنند). اگر با node.js نمیشه، کلا راهی نیست که بشه اینکار رو کرد، فریم ورکی چیزی؟  :لبخند گشاده!: 

اگر برداشتم اشتباهه میشه به *زبان ساده* بگید node.js قضیش چیه.

----------


## ravand

کلاً در هنگام استفاده از سوکت نیازی به دیتابیس نیست. شما وقتی با سوکت در php و node.js که کار می کنید از طریق پورت متصل میشید .و نیازی به ثبت مطالب کاربران در دیتابیس نیست.

----------


## theboy

یعنی مثالی که من زدم احتمال پیاده سازیش هست؟(چت روم بدون پایگاه داده)

----------


## ravand

> یعنی مثالی که من زدم احتمال پیاده سازیش هست؟(چت روم بدون پایگاه داده)


بله میشه این کار رو کرد.

----------


## cups_of_java

> به زبان ساده بگید node.js قضیش چیه.


نود جی اس یه تکنولوژی پیاده سازی شده روی زبان جاوا اسکریپت (روی ماشین v8 گوگل که توی کروم استفاده میشه) هستش برای استفاده از جاوا اسکریپت در سرور ساید! این تکنولوژی در اساس به صورت Non Blocking و Event Driven پیاده سازی شده که خیلی کمک می کنه تو محیط های با IO زیاد و رویداد گرا بتونه راحت استفاده بشه.




> حالت real-time بین سرور و کاربر ایجاد می کنه


این در واقع همون مدل Cometی معروف هست که امروزه با استفاده از Websockets انجام میشه توی مرورگرها و سرورها. Nodejs بسیار راحت این امکانات رو در اختیار شما قرار میده اما اینکارا رو می تونید روی هر تکنولوژی ای انجام بدید مثل جاوا - PHP - .net و ...




> اگه اینطوری باشه میشه باهاش یه چت روم بدون نیاز به دیتابیس نوشت؟


بله! این هم ربطی به Nodejs نداره اما با اون میشه خیلی راحت این کارو کرد. حتی پروژه های آمادش هم هست.

----------


## theboy

> نود جی اس یه تکنولوژی پیاده سازی شده روی زبان جاوا اسکریپت (روی ماشین v8 گوگل که توی کروم استفاده میشه) هستش برای استفاده از جاوا اسکریپت در سرور ساید! این تکنولوژی در اساس به صورت Non Blocking و Event Driven پیاده سازی شده که خیلی کمک می کنه تو محیط های با IO زیاد و رویداد گرا بتونه راحت استفاده بشه.
> 
> 
> این در واقع همون مدل Cometی معروف هست که امروزه با استفاده از Websockets انجام میشه توی مرورگرها و سرورها. Nodejs بسیار راحت این امکانات رو در اختیار شما قرار میده اما اینکارا رو می تونید روی هر تکنولوژی ای انجام بدید مثل جاوا - PHP - .net و ...
> 
> 
> بله! این هم ربطی به Nodejs نداره اما با اون میشه خیلی راحت این کارو کرد. حتی پروژه های آمادش هم هست.


 میشه بیشتر توضیح بدید چطوری میشه با php چت رومی که گفتم رو ساخت؟ مثالی موجوده؟
خیلی ممنون.

----------


## cups_of_java

این مثال رو ببین و این مثال رو. هرچند که بهتره از PHP استفاده نکنی به علت کمبود لایبرری های شناخته شده و امتحان پس داده تو این زمینه و اینکه سرورت بسیار تحت فشار قرار خواهد گرفت.
در حالی که توی Nodejs, ruby, erlang کتابخونه های سرور های چت وجود دارن که حتی خودشون تو شرایط مختلف برای مرورگر های قدیمی و جدید می تونن Comet رو ایجاد کنن. برای اینکار چهار روش وجود داره
اینجا رو ببین

----------


## leonard

Webrtc یه پروتکل چت صوتی و تصویری جدید هست که توسط گوگل توسعه داده شده و فایرفاکس و کروم دسکتاپ و اندروید از اون پشتیبانی میکنند که بر پایه nodjs یک سرور خود سایت webrtc معرفی کرده

----------

