PDA

View Full Version : یه سری سوال راجب node.js



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

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

ravand
جمعه 18 بهمن 1392, 10:23 صبح
کلاً در هنگام استفاده از سوکت نیازی به دیتابیس نیست. شما وقتی با سوکت در php و node.js که کار می کنید از طریق پورت متصل میشید .و نیازی به ثبت مطالب کاربران در دیتابیس نیست.

theboy
جمعه 18 بهمن 1392, 11:20 صبح
یعنی مثالی که من زدم احتمال پیاده سازیش هست؟(چت روم بدون پایگاه داده)

ravand
جمعه 18 بهمن 1392, 11:25 صبح
یعنی مثالی که من زدم احتمال پیاده سازیش هست؟(چت روم بدون پایگاه داده)

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

cups_of_java
جمعه 18 بهمن 1392, 12:14 عصر
به زبان ساده بگید node.js قضیش چیه.
نود جی اس یه تکنولوژی پیاده سازی شده روی زبان جاوا اسکریپت (روی ماشین v8 گوگل که توی کروم استفاده میشه) هستش برای استفاده از جاوا اسکریپت در سرور ساید! این تکنولوژی در اساس به صورت Non Blocking و Event Driven پیاده سازی شده که خیلی کمک می کنه تو محیط های با IO زیاد و رویداد گرا بتونه راحت استفاده بشه.


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


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

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


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


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

cups_of_java
جمعه 18 بهمن 1392, 17:35 عصر
این مثال رو ببین (http://www.flynsarmy.com/2012/02/php-websocket-chat-application-2-0/) و این مثال رو (http://www.sanwebe.com/2013/05/chat-using-websocket-php-socket). هرچند که بهتره از PHP استفاده نکنی به علت کمبود لایبرری های شناخته شده و امتحان پس داده تو این زمینه و اینکه سرورت بسیار تحت فشار قرار خواهد گرفت.
در حالی که توی Nodejs, ruby, erlang کتابخونه های سرور های چت وجود دارن که حتی خودشون تو شرایط مختلف برای مرورگر های قدیمی و جدید می تونن Comet رو ایجاد کنن. برای اینکار چهار روش وجود داره
اینجا رو ببین (http://stackoverflow.com/questions/16890796/html5-websockets-for-realtime-chat-app)

leonard
جمعه 26 اردیبهشت 1393, 00:32 صبح
Webrtc یه پروتکل چت صوتی و تصویری جدید هست که توسط گوگل توسعه داده شده و فایرفاکس و کروم دسکتاپ و اندروید از اون پشتیبانی میکنند که بر پایه nodjs یک سرور خود سایت webrtc معرفی کرده