View Full Version : بهترین روش برای اتصال به sql بر روی هاست
saeedhushmand
یک شنبه 05 مرداد 1393, 09:02 صبح
با عرض سلام
دوستان من یک سایت دارم میخوام اطلاعات یه جدولمو فراخوانی کنم از sql توی سایت های دیگه گشتم فهمیدم که باید یک وب سرویس با پسوند asmx بنویسم منم این کارو کردم و اطلاعاتم تونستم فراخوانی کنم ولی مشکلش اینکه برای دریافت اطلاعات خیلی زمان میبره و اصلا با اینترنت گوشی نمیشه و با adsl هم حدود 5 دقیقه طول میکشه
ولی بعضی نرم افزار ها رو که میبینم اطلاعات رو خیلی سریع حتی با اینترنت گوشی از روی سرورشون فراخوانی میکنن ، لطفا بهترین روش رو بهم بگید، واقعا ممنون میشم چون بهش نیاز دارم خیلی ممنون بابت کمکتون
saeedhushmand
یک شنبه 05 مرداد 1393, 11:52 صبح
کسی نیس کمکم کنه؟
id1385
یک شنبه 05 مرداد 1393, 14:20 عصر
اگه میخوای توی سایتها دیگه استفاده کنید بهترین روش و سرعت بالا استفاده از jquery و گرفتن اطلاعات بصورت json هست اگر هم توی اندروید می خوای استفاده کنی بازم از json استفاده کن.
بعد از اینکه json رو گرفتی دیگه تصمیم با خودته که بریزی توی دیتابیس یا همونو نشون بدی یا ...
موفق باشید
Nevercom
یک شنبه 05 مرداد 1393, 18:32 عصر
این که طول می کشه بستگس به این داره که اطلاعات رو با چه فرمتی رد و بدل می کنید، حجم اطلاعات دریافتی چقدر هست و اینکه کوئری دیتابیستون چقدر بهینه هست.
اول از همه چک کنید که هر قسمت از این پروسه چقدر زمان میبره، مثلاً ببینید کوئری دیتابیس چقدر زمان میبره، حجم اطلاعات تولیدی چقدر هست، اگر مثلاً جایی از این پروسه از توابع خاصی استفاده می کنید (مثلاً تولید String ...)، چک کنید ببینید چقدر زمان میبره.
بعد از اینکه عامل کندی رو کشف کردید، باید ببینید چطور می تونید اون قسمت رو بهینه کنید.
به هرحال توضیحات شما برای حل مشکل کافی نیست، اگر دقیقتر و با جزئیات بیشتر موضوع رو مطرح کنید میشه کمکتون کرد
saeedhushmand
سه شنبه 07 مرداد 1393, 22:24 عصر
با سلام خدمت دوستان از ابنکه کمکم کردید خیلی ممنونم من اطلاعات رو الان از یک وی سرویس asmx دات نت از سرور میگیرم و اونو به string تبدیل میکنم و از soap استفاده میکنم برای دریافتش در اندروید ولی متاسفانه انقدر کند هست که الان که اطلاعات سایتم رفته بالا اصلا قابل استفاده نیس و حدود 4 دقیقه طول میکشه قبلا بد نبود مثلا حدود 30 ثانیه ولی همه اینا با انینترنت 512 اگر با اینترنت خود گوشی برم که اصلا نمیادش
م تو اندروید زیاد سر رشته ندارم ازتون میخوام روشی که شماها استفاده میکنید رو بهم بگید با تشکر از همتون
Nevercom
سه شنبه 07 مرداد 1393, 23:45 عصر
فکر نمیکنم خود SOAP Call خیلی زمان ببره، یعنی احتمالاً دلیل کندی از توابع SOAP نیست و بر میگرده به پیاده سازی سمت وب شما.
میتونه کندی از دیتابیس باشه، که در اینصورت باید دیتابیس رو بهینه کنید (مثلاً ایندکس ایجاد کنید یا پارتیشن ایجاد کنید یا جدول رو به چند جدول تقسیم کنید...، که حارج از این بحث هست)، و یا کوئری ها بهینه نیست.
همونطور که گفتم اول دلیل کندی رو پیدا کنید، ساده ترین راهش اینه که قبل و بعد از فراخوانی تابع زمان رو لاگ کنید و اختلافشون رو بدست بیارید تا ببینید در خود سرور چقدر زمان صرف اجرای هرکدوم از توابع یا بخش های مختلف کدتون شده.
ضمن اینکه حواستون باشه که حجم داده ای که سرور برگشت میده خیلی زیاد نباشه، فقط اطلاعات لازم رو برگشت بدید
به هرحال تا جایی که به اندروید مربوط میشه، صدا زدن یک تابع SOAP به خودی خود باعث کندی سرعت نمیشه
saeedhushmand
سه شنبه 07 مرداد 1393, 23:50 عصر
دوست عزیز سایت بسیار سریع عمل میکنه برنامه نویسی سایت سه لایه هست و با حجم اطلاعات بالا ولی خیلی خوبه لود سایت 1 ثانیه هست
الان که اومدم اندروید سایت رو درست کردم این مشکل پیش اومده تو اندروید الان برای یک کار ساده مثلا دو عدد رو جمع کنم که اصلا ربطی به sql هم نداره باز هم 20 ثانیه ای طول کشید
راه دیگه ی به جز soap نیست؟
Nevercom
چهارشنبه 08 مرداد 1393, 00:22 صبح
من از کتابخانه ی kSOAP-android استفاده کردم و سرعتش برام مشکل ساز نبوده.
چرا راه دیگه قطعاً وجود داره و شخصاً SOAP رو چندان مناسب پلتفرم موبایل نمیبینم. شما میتونید HTTP Request به سرور بفرستید و پاسخ رو دریافت کنید، حالا این وب سرویس میتونه یک اسکریپت باشه که اطلاعات رو به شکل POST/GET دریافت می کنه و نتیجه رو print/echo می کنه، یا اگر فرصت بیشتری دارید وب سرویس رو RESTFul بنویسید.
این تاپیک میتونه کمکتون کنه: استفاده از کدام روش برای ارتباط با سرور ؟ (http://barnamenevis.org/showthread.php?462566-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%DA%A9%D8%AF%D8%A7%D9%85-%D8%B1%D9%88%D8%B4-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%D8%B1%D8%AA%D8%A8%D8%A7%D8%B7-%D8%A8%D8%A7-%D8%B3%D8%B1%D9%88%D8%B1-%D8%9F)
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.