دو دیتابیس برای یک وردپرس

sinamkh

تازه وارد
سلام بنده سایتی دارم که دارای یک بخش فروشگاهی و یک بخش جداگانه برای  غذا و کلا کارایی هست که کاملا مجزا از فروشگاه هسست...ما قالبی که برای فروشگاه و این قسمت استفاده می کنیم هم کاملا متفاوته...

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

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

بنظر شما راه حلی هست که بشه این دوبل شدن ها و کم شدن سرعت هارو با حفظ عدم تداخل محصولات در دو بخش ساییت... اجرا کرد ؟

 

جاویدان

کاربر عضو
با سلام دوست عزیز

این سوال شما در اصل سوال نیست جواب هست

اگر اینگونه می نوشتید که 1 دیتابیس برای دو وردپرس فکر کنم با لیست توضیحات شما صحیح تر بود .

این نشان میدهد شما اطلاعات کمی از وردپرس دارید و قطعا مطالعه هم نکردید.

در این مورد شما چند حالت هست

1- اینکه شما 1 فروشگاه دارید و یک بخش توضیحی مثل وبلاگ = (شما یک قالب نصب می کنید که هم فروشگاهی باشه هم بلاگی پس مشکلی نداره )

2- اینکه شما دو تا فروشگاه دارید مجزا از هم مستقل با احتمال دو وبلاگ اما بدون دسترسی کاربران به هر دو فروشگاه

(در این حالت بهترین شیوه استفاده از مولتی وردپرس هست یعنی شما یک وردپرس نصب می کنید یکی اصلی خواهد بود دیگری زیر شاخه

در هر دو قالب مجزا نصب می شود و افزونه های خودشان حتی یکسری افزونه ها یکسان خواهد بود این به مدیریت شماست و تنظیمات آن)

3- در این حالت شما دو وردپرس مجزا می خواهید ولی با یک دیتا بیس ولی با امکان دسترسی کاربر به هر دو

(در این حالت شما در سرور یک سایت اصلی دارید و باید یک ساب دامین نیز فعال کنید یا حتی یک دامنه مجزا بسته به پشتیبانی سرور دارد .

پس از نصب وردپرس اولی و کلیه مراحل دسترس دیتا بیس را برای دومی استفاده می کنید آموزش این مورد رو اینجا ببینید)



موفق باشید

 
آخرین ویرایش توسط مدیر:

sinamkh

تازه وارد
@جاویدان  والا در اینکه تازه کار هستم شکی نیست ... و تشکر می کنم از شما هم بابته وقتی که گذاشتین و ممنونم ازتون.

البته اقای مجتبی درویشی از  طراحان همیاروردپرس و ژاکت طی یه مقاله ای   نحوه توزیع اتصال وردپرس بین چند دیتابیس برای افزایش سرعت لودینگ سایت صحبت کرده و بهتره بگیم که در دنیای برنامه نویسی هیچ چیزی غیرممکن نیست.. فقط این وجود داره که ممکن هست اینکار عقلانی باشه یا نه!

هدف من فقط و فقط از طرح این تاپیک این بود که مانع بشم از اینکه سرعت سایت به واسطه استفاده از اینکار بیاد پایین...

این استفاده از وردپرس مولتی همون شبکه وردپرس هست درسته ؟

الان بنده 2 و 3 پاسخ شما من کمی گیج شدم، یه جا میگیم که مولتی وردپرس استفاده کنیم، اینجا قطعا ما فقط یک وردپرس نصب کردیم درحقیقت. اما تو بنده 3 و طبق لینک آموزشی ما داریم دو وردپرس با یک دیتابیس رو به هم متصل میکنیم .... کدوم یکی به کار ما میاد؟

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

ممنون از این لینک که گذاشتین آموزش خوبی داره... من بازم تشکر می کنم

بنظرتون اگر یک هاست وردپرسی از شرکتی معتبر تهیه کنیم .... این روش بر روی سایتی با بازدید متوسط به بالا... جوابگو خواهد بود؟ بیشتر سرعت سایت مدنظرمه

که قابل تحمل باشه برای مشتری... یا باید به فکر سرور بود؟

 
آخرین ویرایش توسط مدیر:

جاویدان

کاربر عضو
با سلام دوست عزیز

اینکه دنیای برنامه نویسی غیر ممکن نداره خب درست ممکن هست امروز بشود ممکن است فردا راهکار بهتری باشد .

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

قطعا یک سرور داخلی پینگ پایین تر و سرعت مناسب تری نسبت به خارجی دارد البته پهنای خروجی و ورودی نیز بسیار مهم است قطعا یک سرور با IO یک مگابیت با 10مگابیت در خروجی فرق دارد و این حتی از سوی بازدید کننده نیز تاثیر دارد. این خودش روی سرور تاثیر می گذارد اما کسی بهش توجه نمیکنه. اینکه چه میزان شما سهم از هسته cpu و ram داشته باشید خودش مهم است .چون هر چه سرعت پردازش بالاتر دریافتی سریعتر و خروجی کاملتر پس چند چیز دست به دست هم می دهد تا یک سایت سرعت خروجی مناسبی داشته باشد. اینگونه بگویم پردازش در یک سایت اشتراکی به میزان 5تا 10 درصد از سخت افزار موجود است گاهی یک سرور 8 هسته با 16 گیگ رم یا یک سرور با 24 هسته و 128 گیگ رم خب سرعت پردازش در این قطعا متفاوت و خروجی هم فرق می کند به اینها میزان سایتهایی که همزمان هستند اضافه می شود .در یک سرور مجازی قضیه کمی متفاوت هست یعنی شما یک هسته و مقدار اختصاصی رم دریافت می کنید و این می تواند افزایش یابد البته لایسنس پنل و برخی لایسنس های دیگر هم سربار خواهد شد ولی تعداد سایتها کمتر است . در یک سرور نیمه اختصاصی وضعیت بازهم بهتر است اما هزینه ها بیشتر و در یک سرور اختصاصی قطعا هزینه ها بیشتر می شود . پس باید درست و بجا اگر هزینه ها در می آید به سمت جلوتر رفت . مثلا ببینید سایتهای معروف دانلودی در ایران بیشترشون بر روی یک مجموعه یک شرکت خدمات میگیرند بگردید اسمش هست روش هم کاملا قابل پیگیری از سوی اونهاست

برای مثال یک سایت با فرمت html با کدهای css و js کمی که دارد یک بارگذاری فوق سریع را خواهد داشت اما اگر 5 عکس 1مگابیتی هم داشته باشد قضیه فرق می کند سرعت قطعا افت پیدا میکند. در وردپرس شما با حجم عظیمی از این کدها و در نهایت عکسها مواجه هستید که باید مدیریت شود .

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

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

مشکل اینجاست شما در نهایت نگفتید آیا می خواهید بجز پایین آوردن مصرف کاربر در دیتا بیس مشتریان دو فروشگاه دسترسی به هردو داشته باشند یا خیر؟ این جریان برای برخی مهم است .

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

و در نهایت روشهایی که برای بالا بردن بدون دریافت جواب از سوی شماست.

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

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

در بعد از اینها خروجی سرور است یعنی چه میزان پهنای باند در اختیار شماست 1 مگابیت 2 مگابیت 5 یا 10 مگابیت این مورد به قدری مهم است که میزان نقش تعیین کننده برای کاربر ایفا میکند مثلا اگر شما حتی یک سرور اختصاصی داشته باشید با یک پهنای باند 1 مگابیتی قطعا در روز اول اورلود خواهید شد. زیرا وقتی پردازش از لحظه درخواست اجرا می شود باید با یک سرعت مناسب و تقسیم بندی درست در اختیار کاربر قرار گیرد یعنی از لحظه استارت سرور برای پردازش تا بارگذاری بر روی سیستم هدف و بسیاری این حلقه را فراموش می کنند . یعنی  اصلی ترین نقش اتصال کاربر به سرور و بالعکس . هر چقدر میزان دریافتی و ارسال برای کاربر طول بکشد سرور در حالت روشن خواهد ماند تا دریافت تکمیل شود و بعد به نفر بعدی برسد به اینها میزان کانکشن های مجاز برای یک کاربر نیز اضافه می شود.

روش بعدی استفاده درست از کلود هایی چون Amazon Cloudfront یاCloudFlare یا MaxCDN یا مدل ایرانی اون در پارس پک که تا یه مقداری رو رایگان هم میده یا شرکتهای داخلی که جدیدا این روش رو در پیش گرفتند . این مدل خودش کمک زیادی در بالا بردن سرعت میکنه چون شما اطلاعات رو در برخی از این روشها در سرورهای مختلف ذخیره میکنید و کاربر شما در نهایت هیچ وقت غیر دسترسی نخواهد داشت . ضمن اینکه کلودها به علت وجود چندین سرور در کشورهای مختلف نهایت سرعت رو به کاربر بر اساس نزدیکی به یک سرور می دهند. به اینها استفاده از cdn برای سرور رو اضافه کنیم یعنی یک سرور کوچک دانلود داخلی مجزا که می تواند برخی فایلهای سنگین یا عکسها را در آن بارگذاری کرد و درخواستهای دریافتی را از آن سمت دریافت کرد و قیمت زیادی هم نسبت به برخی روشهای بالا ندارد.

یک مورد دیگر استفاده از حالت Gzip برای سرور و دریافت نهایی کاربر است چیزی که بسیاری از کلودها cdn ها و حتی کش ها نیازمند آن هستند و حتی وب سرورها تا یک فایل مثلا حجیم چند ده شاخه را در یک زیپ یکجا و با سرعت بالاتر و یکسانی ارسال کنند .این مورد به قدری حیاتی است که اگر در رایانه شخصی خودتان یا گوشی امتحان کنید می فهمید مثلا یک فایل چند صد مگابیتی با چند ده یا صد فایل را از یک نقطه به یک نقطه دیگر انتقال دهید و سپس همون رو به صورت زیپ انتقال دهید سرعت و پردازش به مراتب خیلی فرق می کند.

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

و در نهایت خود قالب وردپرس و درخواستهای مدیریت شده در یک قالب که چه میزان فایل css و js و عکس و نوشته در لحظه قرار است بارگذاری شود . با بررسی هایی که بنده داشتم عددهای 5 و 10 بسیار مناسب هستند برای صفحه اصلی برای سایتهایی که عکس های فوق سبک زیر 10 کیلو بایت دارند 10 گزینه مناسب و براس عکسهای سنگین تر 5 عدد مناسبتری است یعنی شما میزان کمتری فایل را در اختیار کاربر در صفحه اول قرار می دهید روش جستجو گوگل هم این شکل است تازه گوگل بیشتر تکست یا نوشته نشان میدهد از 10 استفاده می کند . این یعنی سرعت بارگذاری بیشتر

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

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

و در نهایت میزان دریافتی کاربر نهایی است یعنی استفاده کمتر از عکس و بیشتر از کدهایی مشخص و صد البته کمتر استفاده کردن از کدهای زائد فشرده سازی یا مینی فای کردن کدها خیلی در حجم و سرعت بارگذاری تاثیر دارد . گاها یک فایل 200 کیلو بایتی به نصف یا حتی بیشتر کاهش پیدا می کند به اینها بهینه سازی عکس برای دریافتی کاربر نیز اضافه می شود. و نکته آخر سرعت خود کاربر هست که آیا از یک سرعت زیر 100 کیلوبیت استفاده می کند یا از یک سرعت 2 مگابیتی اینها نقش تعیین کننده ای در پردازش نهایی دارد.

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

موفق باشید

 
  • Like
واکنش‌ها[ی پسندها]: Ebif_GSM
بالا