大家都知道酒酿蛋是非常传统的美胸食品
产后丰胸产品,醪糟也叫酒酿,是由糯米或者大米经过酵母发酵而制成的一种风味食品,其产热量高,富含碳水化合物
丰胸产品燕窝酒酿蛋、蛋白质、b族维生素、矿物质等,这些都是人体不可缺少的营养成分
酒酿蛋丰胸方法。其中酒酿中含的醣化酵素,能促进乳房的二次发育,具有美胸的作用
燕窝酒酿蛋丰胸。
|
|
|
 |
|
SAKHA
RAVESH
CO. |
ا مروز
◄ |
جمعه |
27 |
فروردين |
1400 |
2021 |
Apr. |
16 |
Friday |
ToDay
►
|
|
صفحه اصلی |
مقالات |
نکته ها |
دايره المعارف
|
خودآموزها |
تازه ها |
خود آزمون ها
|
عنوان
|
نويسنده
|
مشاهده
|
تعداد
آراء |
امتياز
|
استراتژی دستيابی به داده ها در وب |
مديريت وب |
9498 |
6 |
3.8 |
با توجه به جایگاه داده در عصر حاضر و لزوم نگاه جامع به این مقوله مهم ، بر آن شدیم تا محوریت فعالیت های خود را بر روی این موضوع متمرکز نمائیم . از این رو گروه فابک با شعار فناوری اطلاعات برای کسب وکار شکل گرفت و خدمات خود را از طریق سایت www.fabak.ir به مخاطبان محترم عرضه می نماید
 |
استراتژِي دستيابي به داده ها در وب
استراتژی دستيابی
به داده ها در وب
در زمان طراحی و پياده سازی يک برنامه تحت وب و بمنظور دستيابی
به داده ها ، چالش های متعددی وجود
دارد: نحوه ارتباط با يک منبع داده ، نحوه ذخيره سازی داده ها در زمان رفت و آمد
صفحات بين سرويس گيرنده و سرويس دهنده ، محل ذخيره سازی داده ها در صورت تاکيد بر
ذخيره سازی داده ها و ... . نحوه برخورد با چالش های فوق و انتخاب راهکارهای
متاسب ، در طراحی و پياده سازی يک
برنامه تحت وب تاثيرات خود را بدنبال داشته و می تواند در نحوه اجراء و کارائی
برنامه ، پيامدهای مستقيمی را داشته باشد.
برای دستيابی به داده ها يک استراتژی ثابت و منفرد که در تمامی حالات پاسخگو باشد
،وجود نداشته و با انتخاب هر رويکرد می بايست پذيرای نکات مثبت و منفی آن نيز بود.
در ادامه به بررسی اصول اوليه در طراحی صفحات فرم های وب بمنظور دستيابی به داده ها
خواهيم پرداخت .
● ?
DataSet or Direct Access and Data Reader. يکی از
اولين موارديکه می بايست به آن پاسخ داد اين مطلب است که : " آيا می خواهيم رکوردها
را بکمک يک Dataset استفاده نمود و يا قصد دستيابی به بانک اطلاعاتی را مستقيما"
داشته و بکمک يک Data Reader از رکوردها استفاده نمائيم؟" برای انجام برخی عمليات
نظير ايجاد و ويرايش ساختار بانک اطلاعاتی نمی توان از يک Dataset استفاده نمود.
مثلا" اگر بخواهيم ، ايجاد يک جدول جديد را از
طريق برنامه انجام دهيم ،نمی توان از Dataset استفاده نمود. در حالت کلی برای
دستيابی به داده ها می بايست بين استفاده از يک Dataset و يا کار مستقيم با بانک
اطلاعاتی از طريق بخدمت گرفتن دستورات مربوطه يکی و يا هر دو را با توجه به شرايط
حاکم بر يک برنامه انتخاب نمود. هر يک از رويکردهای فوق،
دارای مزايا و معايبی می باشند. مثلا" Dataset جهت کار با جداول رابطه ای و کار با
داده های مستقر شده در چندين جدول مناسبت تر بنظر می آيند. در مقابل استفاده از يک
Data Reader دارای کارائی بيشتر مخصوصا" ازبعد استفاده از حافظه بوده که باعث حذف
مراحل اضافی برای تکميل و استقرار داده ها در يک DataSet خواهد شد. در اين حالت
امکان اعمال کنترل بيشتری بر روی داده ها از طريق عبارات و يا Stored Procedures ها
نيز وجود خواهد داشت .
● DataSet and Data
commands in web form pages . زمانيکه با صفحات فرم های وب کار می شود ،
فاکتورهای ديگری نيز جهت انتخاب DataSet و يا Data Reader وجود خواهد داشت . يکی از
اين فاکتورها " چرخه حيات يک صفحه وب " است . صفحات فرم های وب
، مقداردهی اوليه ، پردازش و در نهايت حذف
خواهند شد( به ازای هر رفت و آمد بين سرويس دهنده و سرويس گيرنده ) . در صورتيکه
بخواهيم داده ها را بسادگی بر روی صفحه نمايش دهيم ، می توان يک Dataset را ايجاد و
آن را از داده های مورد نظر تکميل و در نهايت آن را به يک کنترل Bind نمود. عمليات
فوق مستلزم overhead غير ضروری است ، چون
بلافاصله Dataset از بين خواهد رفت .در برخی موارد مناسبت تر است که از Data Reader
بمنظور بازيابی داده ها استفاده و با Bind نمودن کنترل به آن در زمان اجراء،
زمينه استفاده از داده ها را فراهم نمود. در حالت کلی می توان از دستورات مربوط جهت
اجرای عبارات SQL و يا Stored Procedurdes استفاده کرد. مثلا" جهت نمايش داده ها در
يک دستور DataList می توان يک عبارت SQL را اجراء و در ادامه کنترل مربوطه را به يک
Data reader نسبت داد. در اين زمينه برخی حالات خاص نيز وجود دارد که به آنها اشاره
می گردد:
▪
کار با جداول رابطه ای
. Dataset امکان پشتيبانی چندين جدول رابطه ای و حمايت از ارتباطات مربوطه را فراهم
می نمايد.کار با رکوردهای رابطه ای در يک Dataset بمراتب راحت تر از خواندن رکوردها
بصورت مستقل و بکمک اجرای دستوراتی در رابطه با يک بانک اطلاعاتی است.
▪ مبادله داده بين ساير
پردازش ها . در صورتيکه صفحات فرم های وب داده
های خود را از ساير عناصر اخذ نمايند ،( نظير سرويس های وب Xml) می بايست از يک
Dataset جهت نگهداری يک نسخه از داده ها استفاده نمود.Dataset بصورت خودکار Xml های
استفاده شده بين عناصر متفاوت در دات نت را خوانده و يا در آنها اطلاعاتی را خواهد
نوشت.
▪ کار با يک مجموعه
ثابت از رکوردها . در صورتيکه به مجموعه ای از رکوردها مکررا" نياز باشد ،(
مثلا" عمليات paging در يک grid) شايسته است که رکوردهای مورد نظر را در يک Dataset
قرار داد.
يکی از مزايای عمده Dataset ، برنامه نويسی
ساده تر آن نسبت به استفاده مستقيم از دستورات است .
●?
Save Dataset or Recreate each time . در صورت
استفاده از يک DataSet ، تصميم بعدی در رابطه
با اين موضوع خواهد بود که " آيا پس از هر رفت و آمد بين سرويس دهنده و سرويس
گيرنده ، می بايست مجددا" Dataset را ايجاد نمود؟ در رابطه با مسئله فوق دو رويکرد
وجود دارد :
▪ هر زمان که صفحه
پردازش می گردد ،يک نمونه از Dataset ايجاد و مقدار دهی شود،
.پس از اتمام پردازش صفحه و ارسال آن برای مرورگر ،Dataset حذف خواهد شد.
▪ ايجاد و تکميل
Dataset يک بار انجام شده ( اولين باری که صفحه اجراء می گردد) و درادامه
Dataset را با يک روش ذخيره و در نهايت امکان بازيابی و استفاده از رکوردهای موجود
در آن فراهم خواهد شد.
ايجاد Dataset در هر مرتبه ، بدين معنی است که هر زمان کاربری بر روی يک Button
کليک می نمايد ،يک Query و يا Stored Procedure اجراء خواهد شد. مثلا" می توان يک
فرم صفحه وب را داشت که کاربر اطلاعات را صفحه به صفحه مشاهده نمايد.
در صورتيکه هر بار Dataset ايجاد گردد ،فرم های وب يک query را در از منابع داده ئی
جهت دستيابی و اخذ رکوردهای بعدی جهت نمايش ، انجام خواهند داد.
در صورتيکه Dataset را ذخيره و مجددا" بازيابی نمائيم ،نياز به مراجعه مجدد به منبع
داده ئی برای اخذ رکوردهای جديد نخواهد بود. ذخيره نمودن يک Dataset دارای چالش های
جدی است. يکی از مهمترين چالش ها ،اشغال بخشی از حافظه توسط Dataset خواهد بود( در
زمان رفت و آمد صفحه بين سرويس گيرنده و سرويس دهنده ) در صورتيکه Dataset دارای
حجم بالائی باشد ،قطعا" حجم بالاتری از حافظه اشغال شده و اگر در چنين وضعيتی چندين
کاربر ديگر نيز Dataset هائی را ايجاد کرده باشند ،ميزان استفاده از حافظه بمراتب
بيشتر از وضعيت قبلی خواهد بود.( يکی از راهکارهای موجود ذخيره داده در صفحه است ).
يکی ديگر از چالش های موجود در اين زمينه ، مسئله
يکسان سازی ( نمودن ) داده های موجود در Dataset با منبع داده ئی است . با توجه به
اينکه Dataset تکميل و حاوی داده های درخواستی بوده و در زمان درخواست کاربر برای
داده ها ،Dataset مجددا" Refresh نمی گردد ،اين احتمال وجود خواهد داشت که داده های
موجود در Dataset يک تصوير زنده از داده های موجود در منابع داده ئی را نشان ندهند
.شايد بهتر باشد که برای هر رفت و آمد ،مجددا" Dataset را ايجاد نمود.
●?
Cache on Server or on the Client . در صورتيکه تصميم
به ذخيره سازی يک Dataset را داشته باشيم ( در زمان رفت و آمد صفحات بين سرويس
دهنده و سرويس گيرنده ) می بايست در رابطه با محل ذخيره سازی آن تصميم مناسب را
اتخاذ نمود. مورد فوق به استانداردها و روش های گفته شده در بحث State management
برخواهد گشت . در رابطه با ذخيره سازی Dataset دو رويکرد عمده وجود دارد :
▪ بر روی سرويس دهنده
،Dataset را در يک Session State , Application State و يا Cache ذخيره
نمود.
▪ بر روی سرويس گيرنده
،Dataset را با استفاد ه از View State و يا فيلد های مخفی ذخيره نمود.
ذخيره نمودن Dataset بر روی سرويس دهنده باعث افزايش استفاده از منابع سرويس دهنده
خواهد شد.در چنين حالتی درصورتيکه حجم Dataset بالا بوده و يا کاربران زيادی با
Dataset ها ی با حجم کم وجود داشته باشد ، بر کارائی سرويس دهنده اثرات منفی را
خواهد گذاشت . استفاده از cache هم مسائل مربوط به خود را دارد چون در صورتيکه
سرويس دهنده نيازمند حافظه بيشتری بوده و يا تاريخ اعتبار Cache به پايان رسيده
باشد ،مديريت Cache فضای اشغال شده را آزاد خواهد کرد. بهرحال در چنين مواردی
هيچگونه تضمينی وجود نخواهد داشت که Dataset در Cache موجود باشد و می بايست با
افزودن منطق مربوطه در صفحات ،در ابتدا بررسی گردد که آيا Dataset در Cache موجود
هست يا خير؟ در صورتيکه Dataset در Cache موجود نباشد ،مجددا" آن را ايجاد و يک
نسخه از آن را هم در Cache ذخيره نمود.
ذخيره سازی داده ها در صفحات ، بدين معنی است
که ازمنابع موجود بر روی سرويس دهنده برای ذخيره سازی داد ه ها استفاده نشده است .
در اين روش ، داده ها بعنوان بخشی از Html
Stream در صفحات وب قرار خواهند گرفت و اگر Dataset حجيم باشد در زمان لود صفحه در
مرورگر و يا ارسال برای سرويس دهنده ، مدت
زمان زيادی صرف خواهدشد. در اين راستا می بايست اين سياست: "همواره سعی گردد که
حجم Dataset به حداقل مقدار خود رسيده و صرفا" رکوردهای مورد نظر را ذخيره کرد "
، مورد توجه جدی قرار گيرد. در موارديکه می خواهيم يک Dataset را ذخيره نمائيم ،می
بايست با افزودن کدهای مربوطه در صفحه ، امکان ذخيره و بازيابی آن را در زمان معقول
تحقق بخشيد.
در برنامه زير برای ذخيره و بازيابی يک Dataset از يک Session state استفاده شده
است . Dataset با نام dsCoustomer1 بوده که از يک نمونه کلاس dscoustomer dataset
استفاده شده است . توجه داشته باشيد که Dataset بعنوان يک شی ذخيره شده است و در
زمان بازيابی Dataset می بايست آن را مجددا" به کلاس Dataset تبديل نمود.
ذخيره و بازيابی يک
Dataset بکمک يک Session state |
Private Sub Page_Load (ByVal
sender As System.Object, ByVal e As System.EventArgs)
Handles MyBase.Load
If Page.IsPostBack Then
dsCustomers1 = CType(Session("myDsCustomers"), dsCustomers)
Else
If Session("myDsCustomers") Is Nothing Then
OleDbDataAdapter1.Fill(dsCustomers1)
Session("myDsCustomers") =
dsCustomers1
End If
End If
End Sub |
|
| |

جستجو
|
جستجو
|
|
مقالات
|
مشاهده گروه ها
|
|
 |
تهيه شده در شرکت سخا
روش - 1382 |