انتخاب تکنولوژی مناسب برای وب (php , js)
سلامدوستان . من یکپروژه اییگرفتم دقیقا مانند شیپور و دیوار حتی با امکانات خیلی بیشتر . با توجه به اینکه بر اورد کارفرما تعداد درخواست ها حدود ۲۰ هزار تا به بالا و حتی بیشتر به صورت همزمان خواهد بود،شما چه تکنولوژی وب و همچنین سرور انتخاب میکنین؟(بین laravel و nodejs یکی را مد نظر دارم . با توجه به پیچدگی پروژه که پیاده سازی ان دشوار باnodejs خواهد بود و اگر از لاراول استفاده شود با توجه به سنگینی لاراول و سرعت ان ممکن هست نتوان ۲۰ هزار درخواست همزمان و پاسخ داد و سایت بخوابد )
شکل انتخاب فریمورک من اینه که اصلا زبان php با توجه به اینکه sync هست و انتخاب کنم یا node js چون async هست و سرعت بیشتری داره نسبت به پی اچ پی بین این دو موندم، و برای اولی فریمورک lumen و دیتابیس mysql هست و دومی expressjs و دیتابیس مونگو هست
اینکه به نظر شما خوب هست وب سایت و با lumen باشه و وب سرویس ها با node js
سلام دوست عزیز:
اصولا استفاده از فریم ورک های آماده توصیه نمیشه بدلیل اینکه ایرور یا هر مشکل دیگری که میخورید افرادی که بتوانند به شما کمک کنند کم می باشند
اون چیزی که برای شما قابل اهمیت می باشد سرعت گرفتن اطلاعات از سرور با توجه به تعداد رکورد می باشد لذا استفاده از mysql هیچ مشکلی را ایجاد نمیکند و تا میلیون ها رکورد را ساپورت میکند .
مگر اینکه رکوردها برسد به میلیارد که اینجا اوراکل پیشنهاد می شود.
درمجموع پیشنهادم استفاده از php،javascript و mysql میباشد
سلام دوست عزیز
به نظر الان بهترین تکنولوژی برای این کار فریم ورک nodejs هست و دیتابیس mongodb
چون این فریم ورک هم برای کارهای ریل تایم خیلی خوبه هم برای وب سرویس
اگه دقت کنی سایت دیوار هم بانودجی اس نوشته شده
Node.js چیست؟
Node.js یک پلتفرم کدنویسی سمت سرور است که بر پایه موتور جاوا اسکریپت مرورگر گوگل کروم کدنویسی شده است. این پلتفرم توسط رایان داهل در سال ۲۰۰۹ ایجاد شده است و در حال حاضر آخرین نسخه آن ورژن 0.10.36 میباشد.
بر اساس اعلان مستندات رسمی تعریف Node.Js به شکل زیر عنوان میشود:
“Node.js یک پلتفرم ایجاد شده بر پایه موتور جاوا اسکریپت گوگل کروم است که باعث سهولت ایجاد و مقیاسپذیری برنامههای تحت شبکه میشود. این پلتفرم از یک مدل I/O رویداد محور استفاده میکند که مسدود نشونده (non-blocking) است و همین امر باعث کاهش فشار موجود بر روی سرور و افزایش کارآیی میشود و این امر برای اجرای برنامههای مبتنی بر داده که بصورت بلادرنگ (Real-Time) بر روی سرورهای نامتمرکز استفاده میشوند بسیار مناسب است.”
Node.js یک پلتفرم کد باز برای گسترش برنامههای سمت سرور و تحت شبکه میباشد. این پلتفرم بر اساس زبان جاوا اسکریپت نوشته شده است و قابلیت پیادهسازی بر روی سیستمعاملهای ویندوز، لینوکس و سیستم عامل کامپیوترهای اپل را دارد.
این فریم ورک کتابخانهای عظیم از ماژولهای مختلف جاوا اسکریپت را فراهم میکند که سهولت در گسترش وباپلیکیشن ها را تا حد زیادی فراهم میآورد.
ویژگیهای Node.JS
در زیر برخی از مهمترین ویژگیهای این پلتفرم که باعث میشود انتخاب اول برنامهنویسها باشد ذکر شده است:
غیرهمزمانی و رویداد محوری: همهی API های کتابخانه Node.js غیرهمزمان میباشند که همین امر باعث مسدودناپذیری (non-blocking) آن میشود. این بدان معناست که که Node.js در بستر سرور هیچگاه در انتظار بازگشت اطلاعات از API نمیماند. سرور پس از صدا زدن یک API به سمت API بعدی حرکت میکند و برای اطلاع از وضعیت API قبلی از مکانیزم ثبت رویداد استفاده میکند.
سرعت بالا: با توجه به این که نود جی اس بر پایه نسخه ۸ موتور جاوا اسکریپت گوگل کروم پیادهسازی شده است در اجرای کدها بسیار سریع عمل میکند.
تک موضوع اما بسیار مقیاس پدیر: نود جی اس از یک مدل تک موضوعی به همراه حلقه رویددادها استفاده میکند. مکانیزم رویداد باعث میشود که سرور به صورت مسدود نشونده پاسخها را ارسال کند و همین امر باعث میشود بر خلاف مکانیزمهای سنتی که سرور را محدود به چند درخواست برای پردازش درخواستها میکرد سرور بسیار مقیایسپذیر شود.
نود جی اس از یک برنامه تک موضوعی استفاده میکند و همان برنامه میتواند سرویسی برای تعداد بسیار بیشتری از درخواست ها نسبت به مکانیزم های قدیمی سرور مثل HTTP سرور آپاچی فراهم کند.
عدم وجود بافرینگ: این پلتفرم هیچ دادهای را بافر نمیکند و دادههای خروجی را به صورت تکهتکه منتشر میکند.
چه کسانی از Node.js استفاده میکنند؟
در زیر لینکی مربوط به گیتهاب وجود دارد که لیستی جامع از پروژه ها، نرمافزارها و شرکتهایی که از Node.js استفاده میکنند را مشخص کرده است. از جمله مهمترین اعضای این لیست میتوان eBay, General Electric, GoDaddy, Microsoft, PayPal, Uber, Wikipins, Yahoo! و … را نام برد.
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .