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

نام تاپیک: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

  1. #1

    سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    سلام.
    بهترین روش برای پر کردن dropdown با تعداد رکورد بالا مثلا 30.000 رکورد چی هست؟ میخوام روی dropdown بشه سرچ کرد. هم روی بروزر pc هم روی بروزر موبایل.

    الان از chosen jquery استفاده می کنم. مشکلش روی تعداد رکورد بالا روی سرچ هست که کنده.

    کسی پیشنهادی داره؟
    آخرین ویرایش به وسیله resident : پنج شنبه 18 آبان 1396 در 09:05 صبح

  2. #2

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    میتونید از select2 استفاده کنید سرعت قابل قبولی داره.
    اما مسئله اینکه آیا لود کردن 30000 تا رکورد و دریافت اون ها از دیتابیس و پر کردن Dropdown با اینهمه رکورد کار درستیه و حتما نیاز هست که برنامتون به این شکل باشه ؟

    بیشتر مشکل سرعت برای همچین چیزی برای پر کردن اطلاعات در ابتدا هست ; با یه تست ساده میتونید مطمئن بشید :


    <!DOCTYPE html>
    <html lang="en">


    <head>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
    <link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.4/css/select2.min.css" rel="stylesheet" />
    <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.4/js/select2.min.js"></script>
    </head>


    <body>
    <select id="select"></select>


    <script>
    for (var i = 0; i <= 30000; i++) {
    $('#select').append($('<option>', {
    text: 'Option ' + i
    }));
    }

    $(function () {
    $("#select").select2();
    });
    </script>
    </body>


    </html>



    بنظرم راه های بهتری رو میتونید امتحان کنید مثل اینکه Dropdown رو در ابتدا مثلا با 50 رکورد پر کنید و با سرچ کردن کاربر ( keydown ) ، به سمت سرور بصورت ajax ای request بزنید و نتیجش رو دریافت کنید و Dropdown رو باهاش پر کنید.

  3. #3

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    نقل قول نوشته شده توسط Moien Tajik مشاهده تاپیک

    بنظرم راه های بهتری رو میتونید امتحان کنید مثل اینکه Dropdown رو در ابتدا مثلا با 50 رکورد پر کنید و با سرچ کردن کاربر ( keydown ) ، به سمت سرور بصورت ajax ای request بزنید و نتیجش رو دریافت کنید و Dropdown رو باهاش پر کنید.
    به نظر شما این روش که با تایپ کاربر بره ajax ای بخونه، چقدر ممکنه تفاوت داشته باشه به لحاظ سرعت؟ اینطوری تعداد request ها به دیتابیس زیاد نمیشه؟ مشکل ساز نمیشه؟

  4. #4
    کاربر دائمی آواتار ali_md110
    تاریخ عضویت
    فروردین 1385
    محل زندگی
    شیراز
    پست
    1,181

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    کندو از Paging و virtualization توی اکثر کنترلهاش استفاده میکنه
    شاید بتونه کمکتون بکنه
    http://demos.telerik.com/kendo-ui/dr...virtualization

  5. #5

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    آیا select2 قابلیت سرچ روی موبایل هم داره؟
    من روی موبایل چک کردم، به صورت تصویر زیر نمایش داده میشه و نمیشه روش سرچ کرد.

    خونده بودم قابلیت سرچ روی موبایل رو داره. پس چرا اینطوریه؟

    ddl.jpg

  6. #6

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    آیا select2 قابلیت سرچ روی موبایل هم داره؟
    ورژن 3.5 به بالا بله داره اما ورژن 4 هنوز Mobile Support نداره.

  7. #7

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    نقل قول نوشته شده توسط Moien Tajik مشاهده تاپیک
    ورژن 3.5 به بالا بله داره اما ورژن 4 هنوز Mobile Support نداره.
    من با ورژن 3.5.4 و 4.0.3 تست کردم، موبایل رو ساپورت نمی کنن. نمیدونم من باید کاری انجام بدم یا نه.

    من فقط select2.js و select2.css رو به به برنامه اضافه کردم.
    رفرنس هاشم به برنامم اضافه کردم.


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

  8. #8
    کاربر دائمی آواتار debugger
    تاریخ عضویت
    اردیبهشت 1387
    محل زندگی
    Turkey
    پست
    843

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    البته 30 هزار تا رکورد برای sql server چیزی نیست ولی مشکل زمانی پیش میاد که صد نفر همزمان این کارو انجام بدن . جستجو را به شکل ajax بنویسید و حتما از stored procedure استفاده کنید و بحث index گذاری روی جدول هم به درستی انجام بشه . من جای شما بودن جستجو های تکراری را cache می کردم .

  9. #9

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    نقل قول نوشته شده توسط debugger مشاهده تاپیک
    البته 30 هزار تا رکورد برای sql server چیزی نیست ولی مشکل زمانی پیش میاد که صد نفر همزمان این کارو انجام بدن . جستجو را به شکل ajax بنویسید و حتما از stored procedure استفاده کنید و بحث index گذاری روی جدول هم به درستی انجام بشه . من جای شما بودن جستجو های تکراری را cache می کردم .
    ممنون از شما. به نظرتون ajax ای سرچ کردن هم با تاخیر انجام نمیشه؟

    چطوری جستجوهای تکراری رو کش کنم؟

  10. #10

    نقل قول: سرچ با سرعت خوب روی dropdownlist با تعداد 30 هزار رکورد

    نقل قول نوشته شده توسط debugger مشاهده تاپیک
    البته 30 هزار تا رکورد برای sql server چیزی نیست ولی مشکل زمانی پیش میاد که صد نفر همزمان این کارو انجام بدن . جستجو را به شکل ajax بنویسید و حتما از stored procedure استفاده کنید و بحث index گذاری روی جدول هم به درستی انجام بشه . من جای شما بودن جستجو های تکراری را cache می کردم .
    زمان اجرای کوئری روی SQL ، صفر ثانیه است.

    وقتی روی dropdown کلیک می کنم، چهار ثانیه می کشه که لیست رو باز کنه.

    به نظر من مشکل از SQL نیست. چون اطلاعات میاد روی browser قرار می گیره و به احتمال زیاد وقتی میخواد سرچ کنه از اطلاعات روی browser سرچ می کنه.

    من فکر می کنم مشکل جای دیگه است.

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

  1. پاسخ: 6
    آخرین پست: دوشنبه 13 مرداد 1393, 09:42 صبح
  2. سرعت اجرای کوئری در جدولی با تعداد ستون بالا
    نوشته شده توسط amir_monster1 در بخش تحلیل و طراحی بانک اطلاعات
    پاسخ: 6
    آخرین پست: جمعه 02 اسفند 1392, 21:10 عصر
  3. پاسخ: 1
    آخرین پست: سه شنبه 02 اسفند 1390, 21:41 عصر
  4. ایجاد شماره سریال با تعداد کاراکتر ثابت از روی داده های متغیر
    نوشته شده توسط parastoo_zamani در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 7
    آخرین پست: سه شنبه 19 آبان 1388, 10:27 صبح

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

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