mahmoudzadeh
5 سال پیش توسط mahmoudzadeh مطرح شد
12 پاسخ

nodejs یا لاراول

قرار هست سایتی طراحی کنیم با توضیحات زیر:
یک سایت ارائه تخفیف ... ما کارت های بانکی کاربران را هنگام ثبت نام میگیریم و از طریق امکاناتی که به پرداخت فراهم کرده به سیستم تخفیف متصل می کنیم و افراد می توانند هنگام خرید با کارت های بانکی شان تخفیف بگیرند.

از طرف دیگر کلی مراکز طرف قرار داد داریم که در سایت ثبت می شوند و کاربر می تواند مراکز مورد نظرش در رسته های مختلف در شهرهای مختلف را جستجو کند و مراجعه کند و خرید با تخفیف داشته باشد. هر مرکز خرید هم می تواند کلی درصدتخفیف داشته باشد.
و به طور پیوسته گزارش تراکنش های کاربران از به پرداخت اخذ و در سایت ثبت می شود و می توان گزارش های متنوعی استخراج کرد... مثل مقدار خرید با تخفیف مراکز طرف قرارداد، لیست تراکنش های کاربران...
هر کاربر می تواند هنگام ثبت نام فیلد معرف را پر کند و فرد معرف به ازای تراکنش هایی که کاربرانش انجام می دهد سودی دریافت می کند.

قطعا میشه با اکثر زبان ها و فریمورک ها پیاده کرد ولی به نظر و تجربیات شما بزرگواران این سیستم با لاراول بهتر جواب میده یا با Nodejs ؟؟ دیتابیس هم چی باشه بهتر هست؟؟ mongo یا mysql یا هر چیز دیگری؟؟

پیشاپیش ممنون از پاسخ هاتون...

@hesammousavi


ثبت پرسش جدید
علیرضا معمارزاده
تخصص : junior level developer
@alireza.mzh 5 سال پیش مطرح شد
1

سلام
شما یه نگاهی به سایت تخفیفان بندازید
ببینید تا جایی که من اطلاع دارم سایت رو با php بالا آوردن هم چنین با دیتابیس Mysql
اگه تعداد زیادی رکوئست دریافت میکنید در روز من توصیه میکنم نود جی اس رو انتخاب کنید
در غیر این صورت لاراول کار و به راحتی انجام میده


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش آپدیت شد
3

سلام
@sayyed

لاراول میتونه گزینه بسیار خوبی باشه برای شما از چند نظر:
1) پشتیبانی کامل از کوئری های زیاد و پیچیده
2) امنیت بیشتر نسبت به نود جی اس ( نه اینکه امنیت نود پایینه ، اما لاراول بهتر عملکرده)
3) قابلیت های بیشتر به فرض :
شما خواستید یه روز ایمیل مارکتینگ کنید و حالت خبر نامه ای برای کاربرا چیزی بفرستید ، با هر 2 میشه ، اما لاراول بهتره
شما به فرض یه روز خواستید خروجی های متفاوت بگیرید : کاربرایی که پرداخت کردند ، کاربرای که تو فلان روز پرداخت کردن ، کاربرایی که فعالن امروز و ....
این گزارش گیری با هر 2 میشه انجام داد ولی باز با لاراول و MYSQL و پکیج هایی که داره مطمئن تره!
4) جای توسعه بیشتری داره و خیلی بهتر بروز میشه ، هر ورژنی که بیاد از لاراول شما با 4 تا کلیک سیستم و پکیج هارو بروز میکنید
5) و از لحاظ هزینه ها چون PHP و MYSQL و یا حتی mariadb روی اکثر سرور ها به راحتی و به خوبی کانفیگ میشن ، باز از نظر هزینه هم خیلی به صرفه تر هست!
از لحاظ توسعه که بعدا بخوایید به فرض اپلیکیشنی چیزی بدید بیرون برای کارتون
API لاراول جز قدرتمند ترین هاست ، با نود هم میشه ، اما لاراول چیز دیگری هست!

6) کشینگ در لاراول که فکر کنم توی کار شما بسیار به کار بیاد هم جز قابلیت های خوبشه
انجام یه سری عملیات خودکار ، جاب ها و queue ها در لاراول خیلی میتونه کمک شایانی کنه!

همه این کارا با نود هم میشه ، ولی پیچیدگی بیشتر و با هزینه های بالاتر...!


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

سلام.

در جواب دوست عزیز @alireza.mzh باید بگم که سایت تخفیفان رو با magento بالا اوردن که یه CMS اماده هست.

و اینکه خوب نیست شما بیاید بگید لاراول استفاده کنم یا nodejs چون کلا باهم فرق دارن. لاراول یه فریمورک هست اما nodejs یه runtime هست.

بهتره بگید واسه توسعه php انتخاب بشه یا javascript یا اگه میخواید فریمورک انتخاب کنید یکی از فریمورک های هرکدوم از این زبان ها رو بگید تا بشه بهتر مقایسه کرد.


hamed sarkhosh
تخصص : برنامه نویس
@ham.sarkhosh 5 سال پیش مطرح شد
2

@khanzadimahdi
با سلام. والا تا اونجایی که من اطلاع دارم (یک هفته پیش برای مصاحبه رفته بودم اونجا و با دولوپرهای ارشدش صحبت کردم) سایت تخفیفان ruby و php هستش در سمت بک اند. و در سمت فرانت هم داشتن شروع می کردن که با vuejs کار کنن ! آگهی های استخدامشون رو هم نگاه کنید میبینید که توسعه دهنده ی روبی و پی اچ پی استخدام می کنن فقط و برای فرانت هم توسعه دهنده ی vuejs

در جواب @sayyed عزیز هم عرض کنم که منم اگه جای شما بودم برای این کاربردی که فرمودین لاراول رو انتخاب می کردم. جناب @Alimotreb توضیحات بسیار کامل و جامعی در این موضوع دادن که به نظرم کاملا حق مطلب رو ادا کردن


علیرضا معمارزاده
تخصص : junior level developer
@alireza.mzh 5 سال پیش مطرح شد
1

سلام
@khanzadimahdi
بله حق با شماست من مجنتو رو ندیدم الان که با اکستنشن Wappalyzer نگاه کردم متوجه شدم قسمت ایکامرسشو با مجنتو بالا آوردن
ولی همون طور که میدونید از php و mysql هم استفاده کردند


Alimotreb
تخصص : کانفیگ سرور و برنامه نویس
@Alimotreb 5 سال پیش مطرح شد
1

سلام
تفسیر شما @khanzadimahdi
بسیار صحیح و درست هست
ولی تو زبان عامیانه ، پروژه ای چیز یمیاد ، میگن، با نود میخوای برات بزنیم ، با لاراول در بیاریم برات؟ :-) به این سبک هست عمدتا خودتون هم حتما دیدید
کسی نمیاد بگه با Java Script و با اکما اسکریپت 6 تحت runtime nodejs...!

علمیش دقیقا چیزی هست که شما میگید ولی تو پروژه ها چیز دیگری توضیح داده میشه

شما هم بر اساس تجربه اتون ، دوستمون رو راهنمایی کنید که چه معماری ، چه زبانی ، چه چیزی مناسب پروژه شون هست. :-)

@ham.sarkhosh سلامت باشید دوست عزیز


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

@ham.sarkhosh
سایت تخفیفان با روبی نیست بلکه میخوان ورژن جدیدشو با روبی طراحی کنن. در حال حاضر با مگنتو ساخته و طراحی شده.
برای مصاحبه ای که انجام دادید باید بگم که جدیدا تصمیم به جذب نیرو در زمینه روبی گرفتن.


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

لاراول maintain یا نگهداری بالاتری نسبت به تمامی فریمورک های nodejs داره. زبان جاوا اسکریپت هنوز یه زبان جوان هست و خیلی جای رشد داره و به سرعت در حال تغییرات بنیادی و توسعه هست و برای پروژه های بزرگ پیشنهاد نمیشه بلکه بدرد نوشتن قسمتی از پروژه (مایکرو سرویس) میخوره.

زبان php برای فعالیت در بستر وب ساخته شده. اگه نیاز به کار کردن در حوزه طراحی سایت دارید بهتره php رو انتخاب کنید چون هم سرعت طراحی بالاتری داره (ابزار های اماده بیشتری داره) و هم با هزینه کمتر (از لحاظ زمان و سرور) میتونید کسب و کار خودتون رو راه اندازی کنید.


mahmoudzadeh
@sayyed 5 سال پیش مطرح شد
0

از همه دوستانی که راهنمایی کردن تشکر می کنم...

ما در این سیستم خب نفرات، شماره کارت ها و تراکنش ها رو ذخیره می کنیم. نفرات و شماره کارت ها که شاید زیاد نشن ولی خب هنوز که شروع نکردیم شاید چند هزار نفر به همراه شماره کارت هاشون داشته باشیم. از این بابت مشکلی نیست.

بحث سر نگهداری ریز تراکنش ها هست. قطعا هر فرد ممکنه در روز تعدادی تراکنش داشته باشه که در آینده نزدیک حجم میلیونی تراکنش ها دور از انتظار نیست.. این تراکنش ها در کل خیلی زیاد میشه ... آیا با Mysql در ادامه مشکل نمی خوریم.

اگر شماره کارت ها و تراکنش ها رو در mysql ذخیره کنیم ولی تراکنش هر کارت بانکی رو در mongoDB چطور؟؟؟

@Alimotreb
@khanzadimahdi
@alireza.mzh


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

اگه روابط در دیتابیس شما زیاده از دیتابیس های گراف استفاده کنید برای مثال کاساندرا دیتابیس خوبیه. ( Cassandra)


mahmoudzadeh
@sayyed 5 سال پیش مطرح شد
0

@khanzadimahdi به نظر و تجربه شما Cassandra بهتر از mongodb برای این نیاز جواب میده؟؟ چون من تجربه کار با Cassandra ندارم میپرسم.


mahdi khanzadi
تخصص : Software engineer
@khanzadimahdi 5 سال پیش مطرح شد
1

@mahmoudzadeh

دیتابیس mongodb برای ثبت دیتا به صورت dump هست و به منظور گزارش گیری و لاگ گیری مورد استفاده قرار میگیره و برای محاسبات و حساب کتاب و پردازش های بالا پیشنهاد نمیشه.

اگه روابط یا همون relationها درون برنامه شما زیاد هست از دیتابیس های گراف مثل cassandra یا neo4j استفاده کنید. اگه ریلیشن ها زیاد نیست از mysql استفاده کنید.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام