PDA

View Full Version : برنامه نویسی برای سایت های پر ترافیک(پر بازدید)



Hamed Beyranvand
پنج شنبه 07 اسفند 1393, 22:57 عصر
سلام دوستان.
آیا برنامه نویسی برای سایت های پر بازدید مثلا stackoverflow یا سایت های داخلی مثل digikala،varzesh3،p30download با مابقی سایت های کم ترافیک فرق می کنه؟؟؟
مثلا از معاری های خاصی یا روش های خاصی استفاده می کنن برای نوشتن همچین سایت های یا فقط سرور های قوی دارن این طور سایت ها؟؟؟

Veteran
پنج شنبه 07 اسفند 1393, 23:00 عصر
نه! هیچ فرقی نداره و بستگی به درک برنامه نویس داره! که باید کد بهینه بنویسه یا نه فقط واسه زودتر تموم کردن پروژه کدی بزنه کار راه انداز باشه، نه کارا !!! البته سرور قوی و پایدار نیاز هر سایت پرترافیکی هست! ولی نه باین دید که چون سرور قویه نباید نگران بهینه بودن یا نبودن برنامه نباشیم!

Hamed Beyranvand
پنج شنبه 07 اسفند 1393, 23:04 عصر
مطمئنی دوست عزیز؟؟!!!!بحث بهینگی کد که فکر کنم با استفاده از یه فریم ورک قوی حل شه!!!!پس با این اوصاف فرقی نمی کنه؟؟؟

Veteran
پنج شنبه 07 اسفند 1393, 23:11 عصر
بله دوست عزیز، در مورد فریمورک هم طرز فکرتون اشتباه هست.
فریمورک به معنی بهینگی نیست، چون شمایید که سناریو ها و الگوریتم های برنامه رو پیاده میکنید، و در این بین با استفاده از فریمورک ها فقط در یک چارچوب مشخص و با یکسری ابزار ها کد هارو سریع مینویسید.
خوده فریمورک سربار زیادی داره! البته میتونید با روش های خاص مثلا DAO و یا پیاده سازی سیستم کش و... این سربار رو کمتر کنید.

rezaonline.net
پنج شنبه 07 اسفند 1393, 23:13 عصر
اتفاقا شدیدا باید میزان انتظار از سایت را برآورد کرد .
به طور مثال حجم داده ها در سایتهای پربازدید و اینکه به طور مثال نظرات کاربران چقدر میتواند باشد در نوع چیدمان و در ساده ترین حالت type فیلد id جدول کامنت مثلا :)
که tinyint باشه یا int یا bigint

(این یک مثال بود فقط !!)

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

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

Veteran
پنج شنبه 07 اسفند 1393, 23:17 عصر
بله رضا جان، منظوره منم همین بود! کد بهینه وقتی بخواد نوشته بشه از اسمون که نمیاد! با حساب و کتاب و در یک بسترهای مناسبی مثه دیتابیس بهینه و... پیاده میشه

Hamed Beyranvand
پنج شنبه 07 اسفند 1393, 23:23 عصر
ممکنه بیشتر در مورد بهینگی توضیح بدین؟؟؟
مثلا ببینید در برنامه نویسی بدون استفاده از فریم ورک شما برای چاپ خروجی باید بنویسید echo $x حالا به فرض طرف از مسایل امنیتی باخبر باشه بیاد همچین کاری رو بکنه

function HTMLEscape($value) {
return htmlentities($value, ENT_QUOTES, 'utf-8');
}

ولی در اخرین ورژن فریم ورک لاراول برای خروجی گرفتن از {{$x}} استفاده میشه که خود این دستور معادل کد بالاست.
پس بنابراین خود فریم ورک ها خیلی جاها از نوشتن کد های غیر بهینه جلوگیری می کنند با ابزارهایی که دراختیار ما قرار میدن

Veteran
پنج شنبه 07 اسفند 1393, 23:46 عصر
بنویسید echo $x حالا به فرض طرف از مسایل امنیتی باخبر باشه بیاد همچین کاری رو بکنه

چطور اگه خوده فرد بیاد اونکارو بکنه غیر بهینه اس ولی اگه فریمورک بیاد همون کارو کنه بهینه تلقی میکنید که نتیجع میگیرید


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

Mohammadsgh
جمعه 08 اسفند 1393, 11:33 صبح
تو سایت های پر بازدید خیلی چیزها باید لحاظ بشه کد نویسی باید بهینه باشه.برای نمونه دیتابیس باید نرمال سازی بشه که اگه اشتباه نکنم ۸ تا گام داره.درمجموع دیتابیس خیلی مهمه