ترکیب دو فریمورک!

سلام دوستان
میخاستم ببینم میشه مثلا جنگو و لاراول رو قاطی کرد تو یه پروژه و از ویژگی های هر کدوم جای مناسب استفاده کرد؟
اگه میشه چجوری و اگه نمیشه دلیل فنی چیه؟
ممنون.

شدنش می شه هیچ دلیل منطقی برای انجام این کار وجود نداره

حالا اگه محض یادگیری باشه چطوری میشه؟میتونید لینک اموزشی یا داکیومنتیشن بدید بهم؟

محض یادگیزی هم ارزش نداره و کار اشتباهی هست. چرا باید چند تا پروسس کملا مجزا داشته باشید و business logic رو بینشون پخش کنین و منابع رو بینشون تقسیم کنین؟

1 Like

نمیدونم محض یادگیریه میخاستم ببینم چجوری میشه

آخه هیچ کاربردی نداره براتون و کلا هم کار اشتباهی هست. وقتتون رو روی چیزی تلف می کنین که ارزشی نداره

ممنون که وقت گذاشتید

1 Like

سیستمش اینطوری میشه که چندتا از صفحه‌های سایت با این بالا میاد چندتای دیگه با اون.
حتی توی اشتراک گذاری شسن و کوکی هم به مشکل میخورید. چه برسه به کارهای دیگه.

1 Like

البته بنده نمی تونم شما تازه وارد هستید به مبحث برنامه نویسی یا خیر !! ولی خودم این سوال رو چند سال پیش پرسیدم دوستان زحمت کشیدن پاسخ دادند در انجمن های دیگه ولی من اون موقع متوجه نشدم. ببنید راه های ارتباطی هست که می شه هر بخشی رو حتی با چندین فریم ورک زد ولی ارتباطشون با api مثلا json مرتبط کرد. اینجوری جلوی تداخل رو می گیرید

مثلا یک فریم ورک از یک سیستم سشنی استفاده می کنه و یک فریم ور دیگه مثلا از یک orm خاص خودش استفاده می کنه.

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

و همینطور زبان هایی که این فریم ورک ها ازشون قدرت گرفتن هم دارای پارادایم های مخصوص به خودشون هست.

بخاطر همین اصلا نه ارزش داره برای تمرین نه در کل کار درستی هست

2 Likes

سلام،من 2 و نیم ساله حدودا برنامه نویسی میکنم و تازه واردم،از یه نفر که سابقه بالای 10 سال داشت تو کار وب و مدیریت سیستم و این چیزا شنیدم که بعضی پروژه هارو با ترکیب فریمورک ها میزنن حالا یا دو تا یا بیشتر،ارتباطشون رو هم با rest api و حالا هر مدل دیگه برقرار میکنن،برای یه کار که وسعتش زیاد بود 2 تا توسعه دهنده میشناختم که بهشون اعتماد داشتم و خب یکیشون مثل خودم توسعه دهنده جنگو بود و یکی دیگه لاراول، به خاطر همین تصمیم گرفتیم پراسس هایی که به هم تقریبا بی ربطن رو تقسیم کنیم و خب همه میتونستن از دیتابیس مشترک استفاده کنن، برای ارتباط هایی که نیاز بود تو لحظه انجام بشه برنامه این بود که از websocket ها استفاده کنیم ،مثلا سشن یا کوکی ،که خب تو مقیاس کوچیک خوب جواب داد،بحث بعدی منابع سیستم بود که نگرانی اصلیه و خب داکر کمی کمک میکنه ولی در کل بازم نگرانیه،حالا قصد من از پرسیدن سوال این بود که ایا راه کلاسیک برا این کار وجود داره یا نه که شما و دوستان راهنمایی کردید،ممنون

یه نگاهی به معماری microservice ها بندازین. نمی گم چیز خوبیه اما چیزی هست که شما دنبالشن. اما تقسیم کردن business logic بر اساس چیزی که نیرو هاتون بلدن کار اشتباهی هست. در کل به microservice ها که نگاه بندازین متوجه می شید که مرحله بعدی چی هست و چکار باید بکنین

1 Like

واقعا ممنونم ازتون که وقت میذارید.

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

توی معماری میکروسرویس هم (تا جایی که من میدونم) هیچوقت اینطوری نیست که دوتا فریموورک کار مشابه همدیگه انجام بدن.
اینطور که من فهمیدم از توضیحات شما، بعضی صفحه‌ها با django سرو میشه و بعضی با لاراول. در حالی که اصولا به این صورته که مثلا کار با دیتابیس رو میسپارن به یک میکروسرویس و کار رندر گرفتن صفحات رو به یک میکروسرویس دیگه (که هر میکروسرویس کار تخصصی‌تر انجام بده و کدهاش هم ساده‌تر باشه)