نمایش نتایج 1 تا 14 از 14

نام تاپیک: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

  1. #1

    یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    سلام
    به نظر اساتید برای ذخیره تصاویر و نمایش آنها از کدام روش استفاده کنم:1- تمام اطلاعات رو کامل در دیتابیس ذخیره کنم(تصویر و نام و...) 2- یا نام تصویر رو در دیتابیس و فایل تصویر رو هم روی هاست اپلود کنم. 3- اصلا کاری به دیتابیس نداشته باشم و روی هاست آپلود کنم.
    کلا کدام روش مناسب هست هم از نظر امنیتی و هم از نظر سرعت بارگذاری!
    اصلا چه موقع باید از این سه روش استفاده کرد!
    میخوام یه اسلایدر درست کنم(تصویر و متن) و یه قسمت نمایش مشتریان(فقط تصویر).
    لطفا راهنمایی کنید از کدام روش بهتر است برای این دو منظور استفاده کنم!
    بااحترام

  2. #2
    کاربر دائمی آواتار leaping
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران از سنندج
    پست
    480

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    از نظر من حجم دیتابیس رو با این چیزا بالا نبر :)
    تصویر رو روی سرور آپلود کن

  3. #3
    کاربر دائمی آواتار reza_alie
    تاریخ عضویت
    فروردین 1394
    محل زندگی
    <Tehran/>
    پست
    449

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    بهتره که نام یا آدرس تصویر رو داخل دیتا بیس ذخیره کنی

  4. #4
    کاربر دائمی آواتار -سیّد-
    تاریخ عضویت
    فروردین 1393
    محل زندگی
    تهران
    پست
    233

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    بستگی به کاربرد داره.
    اگه اسم و/یا آدرس تصاویر رو توی پایگاه داده ذخیره کنید، به شما قابلیت انعطاف بیشتری می‌ده و مثلاً می‌تونید روش query بزنید و ازش آمار بگیرید. اما یه لایه به پیچیدگی کار اضافه می‌شه.
    از طرفی اگه مستقیم توی filesystem بزنید، ساده‌ترین و پرسرعت‌ترین کار هست و خیلی هم ساده هست، ولی دیگه خیلی نمی‌شه باهاش ژانگولر زد!
    در نهایت اگه کل عکس رو توی پایگاه داده بریزید، خیلی چیز خاصی به دست نمیارید و به قول دوستمون الکی حجم پایگاه داده بالا می‌ره.

  5. #5
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1394
    پست
    51

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

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

  6. #6
    کاربر دائمی آواتار -سیّد-
    تاریخ عضویت
    فروردین 1393
    محل زندگی
    تهران
    پست
    233

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    نقل قول نوشته شده توسط Vahid2016 مشاهده تاپیک
    روش سوم توصیه نمیشه..
    ممنون می‌شم دوستان با منبع صحبت کنن. یا حداقل با دلیل.
    من خودم برام مواقعی پیش اومده که روش سوم برام مناسب بوده. می‌شه اگه مشکل خاصی در مورد روش سوم مد نظرتون هست بفرمایید؟

    یه نکته هم یادم رفت بگم:
    استفاده از filesystem برای ذخیره‌سازی عکس‌ها (چه روش دوم، چه روش سوم) یه مزیت خیلی بزرگ نسبت به ذخیره‌سازی اونا توی پایگاه داده داره. وقتی شما فایل رو توی filesystem ذخیره می‌کنید و آدرسش رو مستقیم به client می‌دید، همه‌ی اتفاقات خوب می‌افته: فایل cache می‌شه، resume به صورت خودکار پشتیبانی می‌شه، سرعت خوندن فایل از روی دیسک احتمالاً بیشتر از خوندنش از پایگاه داده هست، در صورت آسیب دیدن دیسک دهها نرم‌افزار برای recover کردنش هست، دهها قابلیت دیگه که روی filesystem ها کار می‌کنن در اختیارتون هست (مثلاً replication) و ...
    اما در صورت استفاده از پایگاه داده، بعضی از اینا رو باید خودتون پیاده‌سازی کنید (مثل cache و resume) و بعضی رو هم باید دعا کنید که پایگاه داده‌تون پشتیبانی کنه! (مثل replication)

    در ضمن یه خوبی روش دوم (ذخیره کردن آدرس در پایگاه داده) نسبت به روش سوم (همینطوری فایل‌ها رو ردیف کردن توی filesystem) اینه که در روش سوم، احتمالاً اسم فایل‌هاتون باید قابل پیش‌بینی باشه تا بدون نیاز به پایگاه داده بتونید ازشون استفاده کنید (مثلاً img1.jpg و img2.jpg و img3.jpg و ...). در این صورت، اگه تعداد عکس‌هاتون نسبتاً زیاد باشه (مثلاً عکس‌هایی که کاربرا آپلود می‌کنن) اون وقت یه نفر می‌تونه یه برنامه‌ی خیلی ساده بنویسه و تمام عکس‌های سایت شما رو دانلود کنه! ولی اگه از پایگاه داده استفاده کنید، می‌تونید برای نامگذاری عکس‌ها از روش‌های کدینگ ساده استفاده کنید، یا مثلاً براشون یه GUID بسازید:
    https://en.wikipedia.org/wiki/Global...que_identifier
    در این صورت، کسی که بخواد همه‌ی عکس‌ها رو دانلود کنه، مجبوره برای هر پروفایل یه درخواست بده به شما و فهرست عکس‌های اون پروفایل رو استخراج کنه، بعد دانلودشون کنه. اینطوری هم کارش سخت‌تر و طولانی‌تر می‌شه، هم اینکه راحت‌تر می‌تونید block اش کنید.

  7. #7
    کاربر دائمی آواتار leaping
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران از سنندج
    پست
    480

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

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

  8. #8
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    فروردین 1394
    پست
    51

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    نقل قول نوشته شده توسط leaping مشاهده تاپیک
    کی گفته در روش آپلود بر روی سرور نمیشه عکسهارو خصوصی سازی کرد برای مشاهده؟
    نمی دونم ، کی گفته؟ شما بگین!!
    آپلود روی سرور؟ در هر صورت فایلا روی سرور ذخیره میشن ، فقط اگه از filesystem استفاده بشه به راحتی قایل دسترسی هستن . مگر اینکه بخواید یه باینری 500 کیلوبایتی رو هر بار موقع ذخیره و خواندن انکریپت و دیکریپت بکنید؟ آیا مد نظر شما این هست؟؟
    تازه درمورد ذخیره در دیتابیس هم خوندن عکس ها سخت میشه نه اینکه نشه خوندشون (البته باید کدهای حاوی کانکشن استرینگ و پسورد هم درد دید عموم قرار نگیره) ، در این روش هم فقط مبهم سازی صورت می گیره و نمیشه روش حساب کرد..
    اگر ایرادی در گفته های من هست اصلاح بکنید یا اگر صحبتی چیزی دارید بفرمایید ، اینجا چت روم نیست که بیایم یه جمله پرت کنیم بریم ، بعد مدتی تازه یکی بیاد بگه منظورت چی هست ، بعد تازه اون یکی بیاد توضیح بده..


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


    شما خودتون یبار بهم گفتین که برنامه نویسی اصولی .. رو میخواید یاد بگیری شاید تو همین پروژه های کوچیک به دردت نخوره و فک کنی بیهوده هست و مث چرخوندن لقمه دور سر اما باید خودت رو عادت بدی به کار کردن به این روش ، خب اینم مثل همون هست..
    من خودم مث شما تو پروژه های بزرگ کار نکردم و تا حالا تو یه تیم حرفه ای نبودم و تجربه شما رو ندارم اما همونطور که قبلنم بهتون گفتم سعی میکنم از افرادی مث شما یاد بگیرم ، الان شما نگاه کنید این همه پروژه Open-Source و حرفه ای تو نت موجود هست تو کدوم یکی اسم فایل و سایر موارد مرتبط تو جداول ثبت نشده ؟

  9. #9
    کاربر دائمی آواتار leaping
    تاریخ عضویت
    آذر 1391
    محل زندگی
    تهران از سنندج
    پست
    480

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    دوست عزیز چرا انقد پیچیدش میکنی؟ :D
    کافیه که از طریق آپاچی دسترسی مستقیم به تصویر رو ببنیدن و از طریق php و با اینکلود کردن فایل اون رو از طریق header به نمایش بگذارید.اینطوری میتونید خیلی راحت از طریق همون php شخصی سازیش هم بکنید. :)
    و هنوزهم میگم آپلود بر روی سرور بهترین روشه

  10. #10

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    فرض کنید 100 تا تصویر 3 کلیوبایتی درون سایت میخوایم نمایش بدیم
    خوب برای هرکدوم از این تصاویر مرورگر یه درخواست به سمت سرور میفرسته

    خب دوباره فرض کنید درلحظه و همزمان 100 تا کاربر وارد سایت بشند
    میشه 10000 درخواست

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

  11. #11
    کاربر دائمی آواتار Unique
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - اصفهان
    پست
    3,199

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

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

    جناب alavigold ، ذخیره در Database تا وقتی که دلیل بسیار قانع کننده ای وجود نداشته باشه اصلا و ابدا پیشنهاد نمیشه و میشه حتی گفت اشتباهه.
    در مورد اینکه نام فایل را ذخیره کنید یا نه ! (نام فایل مهمه و آدرس اصلا اهمیتی نداره چون مربوط به منطق برنامه شما میشه و اصولا شما میدونین فایل توی چه آدرسی ذخیره شده) مهم اینه که نام فایل بعدا به کار میاد یا نه ! مثلا فکر کنید میخوایم کاربر بتونه فایل را با همون نام اصلی دانلود کنه. پس ذخیره کردن نام اصلی فایل لازمه ! یا مثلا شما میخواین چند نوع فایل را ذخیره کنید مثلا jog و gif و png خوب حالا اگه نام فایل را نداشته باشین برای پسوندش هی باید جمله شرطی بنویسین !

    در نتیجه باید ببینین نام فایل جای استفاده داره یا نه ! فایل را هم با نام شماره ID رکورد نظیرش ذخیره کنید نه با اسم خودش ! اینجوری نیازی نیست نگران duplicate name ها باشین.

  12. #12
    کاربر دائمی آواتار -سیّد-
    تاریخ عضویت
    فروردین 1393
    محل زندگی
    تهران
    پست
    233

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    نقل قول نوشته شده توسط Vahid2016 مشاهده تاپیک
    شما خودتون یبار بهم گفتین که برنامه نویسی اصولی .. رو میخواید یاد بگیری شاید تو همین پروژه های کوچیک به دردت نخوره و فک کنی بیهوده هست و مث چرخوندن لقمه دور سر اما باید خودت رو عادت بدی به کار کردن به این روش ، خب اینم مثل همون هست..
    من خودم مث شما تو پروژه های بزرگ کار نکردم و تا حالا تو یه تیم حرفه ای نبودم و تجربه شما رو ندارم اما همونطور که قبلنم بهتون گفتم سعی میکنم از افرادی مث شما یاد بگیرم ، الان شما نگاه کنید این همه پروژه Open-Source و حرفه ای تو نت موجود هست تو کدوم یکی اسم فایل و سایر موارد مرتبط تو جداول ثبت نشده ؟
    ببینید برنامه‌نویسی اصولی به این معنی نیست که هر چی دم دستتون هست حتماً استفاده کنید!
    یه مهندس، باید بتونه کار رو درست و با هزینه‌ی مناسب انجام بده. اصولی انجام دادن کار، تضمین می‌کنه که کار درست انجام بشه. ولی معنیش این نیست که حتماً هزینه کلی بره بالا.
    یه جاهایی (این مثال رو نمی‌گم، کلی می‌گم) واقعاً نیازی نیست آدم از پایگاه داده استفاده کنه و کارش با filesystem معمولی راه می‌افته.
    یا مثلاً شما وقتی دیتاتون در حد چند صد هزار تا رکورد هست، واقعاً شاید نیاز نباشه برای پردازشش از MapReduce استفاده کنید!

    من بازم می‌گم: باید دید که چه کاربردی وجود داره. این رو قبول دارم که در اکثر موارد گزینه‌ی دوم بهترین گزینه هست. ولی جاهایی هست که گزینه‌ی سوم هم مطرح می‌شه. حتی یه جاهایی ممکنه گزینه‌ی یک هم کاربردی باشه.

    نقل قول نوشته شده توسط bagherok مشاهده تاپیک
    فرض کنید 100 تا تصویر 3 کلیوبایتی درون سایت میخوایم نمایش بدیم
    خوب برای هرکدوم از این تصاویر مرورگر یه درخواست به سمت سرور میفرسته

    خب دوباره فرض کنید درلحظه و همزمان 100 تا کاربر وارد سایت بشند
    میشه 10000 درخواست
    معمولاً مرورگرها همه‌ی درخواست‌های یه صفحه رو با هم نمی‌فرستن و محدودش می‌کنن به مثلاً ۱۰ تا همزمان. توی تنظیمات مرورگر می‌شه تنظیمش کرد.
    در ضمن یه سایتی که می‌خواد ۱۰۰ تا کاربر همزمان رو پوشش بده، و همچین load ای روش باشه، معمولاً از بیش از یک سرور استفاده می‌کنه و در نتیجه یهو ده‌ها هزار درخواست به یه سرور نمیاد که کم بیاره.

    نقل قول نوشته شده توسط bagherok مشاهده تاپیک
    نمیشه گفت بهترین روشه کدوم
    بهترین روش روشی هست که پرفرومنس بالاتری داشته باشه
    البته performance درسته که عامل مهمی هست، ولی تنها عامل تأیین کننده نیست! مسائلی مانند قابلیت انعطاف، قابلیت توسعه، و هزینه‌ی پیاده‌سازی هم مهم هستند.

  13. #13

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

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

  14. #14
    کاربر دائمی
    تاریخ عضویت
    اسفند 1393
    محل زندگی
    تهران
    پست
    174

    نقل قول: یه سوال از اساتید درمورد بهترین روش ذخیره تصاویر در برنامه نویسی

    بهترین کار ذخیره سورس فایل داخل یک دایرکتوری و بیرون root اصلی سایت و فراخوانی تصاویر یا فایل ها با یک فایل واسط مثلا image.php است !!!
    برای اینکه مدام کاربران رکوئست ندن و بخوان اون عکس رو بسازن باید cache کنید ...

تاپیک های مشابه

  1. پاسخ: 6
    آخرین پست: پنج شنبه 24 اسفند 1391, 16:21 عصر
  2. بهترین روش مطالعه و یادگیری برنامه نویسی چیست؟
    نوشته شده توسط ...StacK... در بخش تحصیلات دانشگاهی مرتبط با نرم افزار
    پاسخ: 6
    آخرین پست: پنج شنبه 08 بهمن 1388, 00:03 صبح
  3. سوال از اساتید درمورد نصبMSDE
    نوشته شده توسط farzad1343 در بخش تولید و توسعه برنامه های Setup و Install
    پاسخ: 0
    آخرین پست: جمعه 17 اسفند 1386, 23:50 عصر
  4. درخواست راهنمایی جهت بهترین روش ذخیره اطلاعات
    نوشته شده توسط rezamim در بخش Foxpro
    پاسخ: 10
    آخرین پست: یک شنبه 01 مهر 1386, 17:43 عصر
  5. بهترین روش ذخیره عکس
    نوشته شده توسط azam2005 در بخش ASP.NET Web Forms
    پاسخ: 12
    آخرین پست: شنبه 01 مهر 1385, 09:42 صبح

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •