دلايل ظهور سيستم هاي Application Server
دلايل ظهور سيستم هاي Application server :
دليل توسعه و بسط اين سيستم ها در پاسخگويي گروههاي عظيمي از كاربران نهفته است. توسعه دهندگان احتياج به ابزاري داشتند كه بتواند كليه منابع سطح پايين مورد استفاده برنامه هاي كاربردي اينترنت را در قالبي منسجم و قابل استفاده كپسوله كند. به گونه ايي كه ايجاد برنامه هاي كاربردي محاوره ايي و كار آمد، براي اينترنت به راحتي ممكن شود.

از اين ديدگاه سيستم هاي Application server شباهت بسياري به سيستم عامل ها دارند چرا كه سيستم عامل هاي امروزي با ارائه ابزارهاي كار آمد خود امكانات مورد نياز جهت انجام كارهاي مختلف را در اختيار كاربران خود قرار مي دهند.همان گونه كه سيستم عاملها، مجموعه ايي از اسباب هاي سخت افزاري و سرويس هاي مورد استفاده جهت نمايش پنجره ها را كپسوله مي كنند، سيستم هاي Application server نيز انواع پروتكلها و داده ها و همچنين مجموعه هاي مختلفي از سرويسهاي مورد استفاده جهت برقراري ارتباط با كاربران را فراهم مي كند. سيستم هاي Application server همانند برنامه هاي ديگري كه زير بناي آنها دائما” از سوي توسعه دهندگان در حال تغيير و تحول است، ناچار به دگرگوني در مقابل نيازهاي آنان هستند.

همانند تغييراتي كه در دهه گذشته به دليل ظهور نيازهاي جديد، سيستم عاملها پذيراي آنها بودند، محيطهاي تجارت الكترونيكي و اينترنتي نسل آينده، موجب تحولي عظيم در سيستم هاي Application server خواهد شد. براي درك بهتر اهميت اين سيستم ها بحث خود را بررسي تاريخچه اين ابزارها بكار آمد پي مي گيريم.

تاريخچه سيستم هاي Application server :
توسعه نرم افزاري بر روي اينترنت از قدمت چنداني برخوردار نيست، با اين وجود طي همين مدت كوتاه به دلايل رويدادهاي مهمي كه در زمينه اينترنت رخ داده است، توسعه نرم افزاري به توسعه دهندگان سايت كرده است.
هدف توسعه دهندگان وب از تبديل صفحات ايستايHTML به صفحات ديناميك، به توسعه برنامه هاي كاربردي كارآمد بر روي وب تكامل يافته است. به واسطه اين تكامل به تدريج چار چوب هاي سيستمي كه امروزه به سيستم هاي application serverمعروف شده،تعريف و به مرور زمان تكميل شد. اما ابتدا به تكنولوژي وابزارهاي مختلفي كه موجب مطرح شدن اين گونه سيستم ها شدند نگاهي كوتاه بيندازيم.

CgIاولين تكنولوژي بود كه امكان ايجاد صفحات html پويا را در اختيار طراحان قرارداد. متاسفانه بهره گيري از اين تكنولوژي كارزيادي را از جانب توسعه دهندگان طلب ميكرد، چرا كه ايشان علاوه بر كد نوبسي قوانين كار در قالب صفحات HTMLمجبور بودند تا به منظور انجام كارهاي ساده مانند ارتباط با يك بانك اطلاعاتي وقالب بندي نتايج به صورت HTMLو حفظ اطلاعات مابين جلسات (نوبت هاي مختلف برقراري ارتباط با سرور)راه حل منحصر به فردي را پياده سازي كنند.

از آنجايي كه بيشتر كاربران با مسائل مشتركي دست به گريبان بودند، توسعه دهندگان به ايجاد كتابخانه هايي متشكل از كدهاي قابل استفاده مجدد اقدام كردند كه بدين ترتيب بسياري از مسائل حل مي شد. با وجود اين با پيچيده ترشدن برنامه ها،سرهم بندي اين قطعات (كدهاي قابل استفاده مجدد)در قالب يك برنامه كاربردي كامل و قابل اعتماد به تدريج مشكل ومشكلتر مي شد.در آن مقطع برخي از دست اندر كاران امركامپيوتر متوجه اين نكته مهم شدند و بدين ترتيب سيستم هاي Application Serverپا به عرصه ظهورگذاشتند. اين پيشگامان درابتدا اقدام به تدوين مجموعه ايي از منابع مفيدوقابل استفاده مجدد كردندند و آنها را در اختيار توسعه دهندگان پيش از اين از آنها استفاده مي كردندـ بسيار مفيد بودند. در ابتداي امر بيشتر اين فرآوردها همانند ابزاري سودمند به توسعه دهندگان وب فروخته شد.

همانند وضعيتي كه پيش از اين در مورد ابزارهاي مورد استفاده جهت توسعه برنامه هاي كاربردي وجود داشت، در اينجا منابع مورد نيازحين اجراي برنامه از طريق يك زبان Scriptو يا به واسطه مجموعه اي از امكانات كپسوله شده (درقالب كلاس) فراهم مي شد. نخستين پيشگامان در اين عرصه از تكنولوژي، شركت Allairبا نرم افزارColdfusion،شركت Net Scapeبا نرم افزارLive Wireبودند.

در اين هنگام تب وب در ميان كاريران عادي و تجاري همه گيرشده و به واسطه برنامه هاي كاربردي وب ، مجال بسيار مناسبي براي بهره گيري ازاين ابزارها فراهم شد. در نتيجه شمار بيشتري ازتوسعه دهندگان ، اقدام به توسعه برنامه هايي كردندكه قابليتهاي جامع تري را نسبت به آنچه كه پيشتر توليد مي كردند(صفحات پوياي وب )در اختيار مي گذاشتند. براي پاسخ به اين نيازها توليد كنندگان نرم افزار شروع به گسترش محوده فعاليت هاي خود كردند.

آنها براي گسترش زمينه كاري و افزايش كارايي نرم افزارهايشان از تكنولوژي TP monitorsنيز پيشيباني كردند. براي تسهيل در استفاده از نرم افزارهاي توليد شده به همراه سيستم هاي موجود ،ابزارهايي را جهت تطبيق با سيستم هاي E- mailو كاربا ORBها (جهت اتصال با برنامه هاي كاربردي موجود ) توسعه دادند. اين گونه برنامه ها به واسطه دارا بودن ابزارهايي جهت اعتبار سنجي و رمز گذاري از امنيت بالايي برخوردار بودند. به موازات توسعه اين قبيل برنامه هاي كاربردي ، اهميت فوق العاده آنها در تجارت الكترونيكي بيش از بيش براي دست اندر كاران كامپيوتر مشهود مي شد.

همزمان با ظهور اين گونه برنامه هاي كارآمد ، شركتهاي فعال در اين زمينه ، به امر بهبود ابزارها و زبان برنامه نويسي كه دسترسي به منابع مذكور را ممكن مي ساخت، سرعت بخشيدند. با اين هدف كه كار توسعه برنامه ها پربارتر شود. نتيجه اين فعاليت رشد فزاينده زبانهايScriptبود.

با وجود اينكه هنوز اصطلاح سيستم هاي Application Serverوارد واژگان اينترنتي ما نشده بود هر يك از اين سيستم هاي مسير تكامل خود را به طور جداگانه طي مي كردند ، تقريبا” در اواسط سال ۱۹۹۹بيشتر آنها برسر ساختار يكسان توافق كرده بودند. اين ساختار شامل مجموعه ايي از سرويسهاي حين اجرا و همچنين سرويس هاي مورد نياز جهت اتصال به ساير سيستم ها و منابع (بانكهاي اطلاعاتي ، فايل سرورها، خدمات پست الكترونيكي ) و ساير برنامه هاي كاربردي مي شد

براي دسترسي به اين منابع، توسعه دهندگان يك مدل دو لايه ايي در اختيار داشتند. لايه اول در اين مدل كه Application Layerنام داشت ، عهده دار نمايش اطلاعات به كاربران بود و ديگري با نام Business Logic Layer، فرايند دسترسي به داده ها و پردازش آنها را انجام مي داد با همه گير شدن تدريجي اين مدل ، اصطلاح Application Serverنيز برسرزبانها افتاد.

ضرورت ايجاد استانداردها :
طي دوسال گذشته در اثر حركت شركتهاي توسعه دهنده سيستم هاي Application Server به سمت استاندارد كردن ساختار آنها و نيز تدارك رابطهايي كه از آن طريق ، ساير توسعه دهندگان بتوانند به منابع موجود بر روي سرورها، دسترسي پيدا كنند، اين بخش از صنعت نرم افزار دستخوش تغييرات بسياري شد .

در ابتدا اين استاندارها به صورت مجزا مطرح شدند. براي نمونه ابزار Java Server Pagesبه عنوان دو ابزار بسيار كار آمد جهت استفاده از جاوا در لايه اول از مدل دو لايه ايي ذكر شده در قسمت قبل مورد توجه بسياري از توسعه دهندگان قرار گرفتند. از طرف مايكروسافت با ابزار Aspو شركت All air با محصول cfmlابزارهاي ديگري را جهت استفاده در اين لايه معرفي كردند.

به طور مشابه دو تكنولوژي Ejb از شركت Sun MicroSystem و com /com +
از شركت مايكرو سافت به عنوان استانداردهايي به توسعه لايه دوم مطرح شدند.
در گام بعدي SUNو سايراعضاي جامه جاوا سعي كردند تا اين استانداردهاي مجزا را در قالبي همگن و مجموعه ي كاملي از API ها كه هم اكنون آنرا با نام java 2EE ميشناسيم ، گردآوري كنند.

تا زماني كه حركت به سمت استاندارد كردن مدلهاي برنامه نويسي ادامه دارد، اين وضعيت وفعاليت توسعه دهندگان دستخوش تغييرات شگرفي خواهد شد. مشابه حركتي كه در مورد استاندارد كردن WIN32 Apiصورت گرفت و موجب ظهور برنامه هاي كاربردي كارآمد تري شد، در اينجا نيز وجود مجموعه همگني از ابزارهاي برنامه نويسي اين امكان را در برابر توليد كنندگان نرم افزار را مجبور خواهندكرد، هزينه حمل برنامه هاي كاربردي از يك سرور ديگر را كاهش دهند.

با اين وجود قابل حمل نبودن برنامه هاي كاربردي ، مزيت بزرگي براي توسعه دهندگان نرم افزارها قرار مي دهد تا بتوانند بسته هاي نرم افزاري قابل حملي را بر روي سيستم هايApplication Serverمختلف ايجاد كنند. چنانچه ايده قابل حمل بودن برنامه ها برروي اين سيستم هاي متفاوت كاملا تحقق نيابد، توليد كنندگان نرم افزار مجبور خواهند شد ، هزينه حمل برنامه هاي كاربردي ازيك سرور ديگر را كاهش دهند.

با اين وجود قابل حمل نبودن برنامه هاي كاربردي ، مزيت بزرگي براي توسعه دهندگان محسوب مي شود . چرا كه توسعه برنامه تحت سرورها و انواع سيستم هاي عامل را تجربه مي كنند.
متاسفانه استاندارد كردن نيز معايبي دارد. براي نمونه از آنجايي كه تكنولوژي J2EEجزييات سيستم هاي عامل را پنهان نگاه مي دارد. برنامه هاي كاربردي ساخته شده را با استفاده از اين تكنولوژي اغلب از كليه سرويسهاي غني ارائه شده توسط سيستم عامل ها ي امروزي بهره كافي نمي گيرد.

علاوه براين تكنولوژي J2EE مدل پيچيده ايي براي توسعه دهندگان محسوب مي شود. تسلط بر كليه ابزارهاي اين تكنولوژي توسط تنها يك توسعه دهند اغلب مستلزم تلاش بسياراست و اين كار تنها از عهده توسعه دهندگان حرفه ايي بر مي آمد. چنين مي توان نتيجه گرفت كه يكي از كارها ي مهمي كه توسعه دهندگان سيستمهايApplication Server از ابتداي ظهورشان با آن مواجه بودند و قابليت به كارگيري آنها به همراه ساير تكنولوژي هايي است كه ابزارها به يك توسعه دهنده جهت توسعه برنامه ها محسوب مي شوند.

براي نمونه با متداول شدن روز افزون سيستم هاي قابل حمل (همانند تلفن همراه) و افزايش تصاعدي تعداد اتصا لات ، كاربران اين ابزارها خواهان دسترسي به سرويسهايي هستند كه درحال حاضر از طريق وب قابل استفاده است. با اين وجود،آنهايي كه اين گونه سيستم ها داراي رابطهاي كاربردي متفاوتي بوده و پهناي باند آنها به اندازه ايي نيست كه بتوان از آنها در يك مرورگر وب استفاده كرد ، نياز به تكنولوژي هاي مختلف در لايه Web Application S erverمطرح مي شود .
مزاياي سيستم هاي Application Server

صفحات سرويس دهنده فعال (Active Server Pages) جديد ترين تكنولوژي در زمينه سرويس دهنده مي با شند، كه توسط شركت ماكروسافت براي ايجاد صفحات HTMLمحاوره ايي و پويا در سايت وب جهاني و شبكه هاي داخلي طراحي شده است.
با استفاده از اين تكنولوژي به راحتي مي توانيد با پايگاه داده هايي كه در سرويس دهنده ها قرا ردارند ارتباط برقرار كنيد. بنا به نياز خود آنها را تغيير دهيد: دادهاي خود را با كاربران ديگر به اشتراك بگذاريد.

همچنين مي توانيد خود را به سايتهاي گوناگون معرفي كرده، علايق خود را به آنها بشناسيد و اطلاعات مورد نياز خود را از آنها در يافت نماييد. ASP ها با شماري از اجزاء اكتيوايكس روي سرويس دهنده استاندارد دسته بندي شده. اين اجزاءبه شما اجازه كارهايي مثل تصميم گيري در مورد قابليتهاي مرورگر هاي مختلف يا گنجاندن يك شماره در صفحه وب را مي دهد.
شما نبايد خود را فقط به اجزاء استاندارد اكتيوايكس محدود كنيد، هر چند كه اين اجزاء بسيار مفيد مي باشند. شما مي توانيد اجزاء الحاقي اكتيوايكس را براي خود ايجاد كنيد. اين بدان معنا است كه هيچ محدويتي در چگونگي توسعه ASP براي شما وجود ندارد.
با استفاده از اشياء تعبيه شده قابل دسترس دريك ASPشما مي توانيد اسكريپت هاي خود را بسيار قويتري كنيد دربين چيزهاي ديگري اين اشياء به شما اجازه دريافت و ارسال اطلاعات به مرورگر يا از آن را ميدهد. براي مثال با استفاده از شيءRequestمي توانيد اطلاعاتي را يك كاربر با فرم HTMLارسال كرده دريافت و به آن اطلاعات توسط يك اسكريپت پاسخ دهيد.

همچنين با بكارگيري اسكريپتهاي روي سريس دهنده يك ٍِ‍ شما مي توانيد صفحات وبي با اجزاءپويا ايجاد كنيد. به عنوان يك نمونه بسيار ساده شما مي توانيد صفحه وب را ايجاد كنيد كه هريك پيغام جديد يا تاريخ آن روزرا نمايش دهد.
مي توان بدون توزيع بانك اطلاعاتي در سطح شبكه از طريق اين صفحات و با استفاده از وب سرور با بانك اطلاعاتي محلي ارتباط برقرار نموده، وتحت كنترل ايستگاه سرويس دهند اطلاعات را در اختيار متقاضي قرار داد. براي اين منظوربا استفاده از شيء كوكي مي توان متقاضي صفحه ASPرا شناسايي نمود و براساس هويت وي سطح دسترسي به اطلاعات را مشخص نمود.

اين عمل در بانكهاي توزيعي به سادگي قابل اجرا نيست. نكته قابل توجه در اينجاست كه بانك اطلاعاتي كاملا به صورت محلي نصب مي شود اما در عمل همانند بانك توزيعي دسترسي مي گردد. گلوگاه دسترسي فرم ASPمي باشد.
ميتوان با استفاده از امكان هدايت تقاضاي متقاضي هاي صفحاتASP ، تقاضاي هر متقاضي را به ايستگاه مناسب انتقال داد. براي نمونه فرض كنيد متقاضيان با يك سرويس دهنده وب به عنوان سرويس گيرنده در ارتباط مي باشند. متقاضي خواهان مشاهده فيش حقوقي خويش است. فيشهاي حقوقي در سرويس دهنده هاي متفاوت محاسبه ميشوند. سرويس دهنده ها در سطح وب مي بايست در يافت شود.

به عبارت ديگر فرم اوليه كه در آن مشخصات متقاضي فيش حقوقي قرار داده مي شود. در داخل اين فرم اطلاعات متاقضي شامل نوع فيش حقوقي و شماره كارمندي وارد شده و براي سرويس دهنده ارسال ميشود. اكنون سرويس دهنده بر اساس نوع تقاضاي متقاضي يك دستگاه كاري مشخص نموده و تقاضا را كه دريافت فرم دوم جهت مشاهده فيش حقوقي است را ارسال مي نمايد. براي اين منظور از دستور العملRedirect Response مي توان استفاده نمود.

پس از بكارگيري اكتيوايكس شكل توانمندي از ASP ها مي باشد. با ايجاد ASPهايي كه ميتوانند با يك پايگاه دادوستد كنند، شما قادرخواهيد بودكه سايتهاي وب بسيار پيشرفته ايي را ايجاد كنيد.

توزيع بار كار سرويس دهنده:
از آنجائيكه تعداد متقاضيان سرويس دهنده هاي وب مي تواند بيشمار و غير قابل پيش بيني باشد لذا، در اين بخش تكنيكي براي طرح وپياده سازي برنامه ها برروي وب ارائه مي شود.كه تاحدي بار كار سرويس دهنده هاي وب را مي توان با استفاده از اين نكنيك كاهش داد.
مي توان با استفاده از امكان هدايت تقاضاي متقاضي هاي صفحات ASP، تقاضاي هر متقاضي را به ايستگاه مناسب انتقال داد.

ايستگاه مناسب در واقع ايستگاه رياست كه از لحاظ با ركاري سربار كمتري دارد.در اينجا براي مثال صفحه اول از روي سرويس دهنده به متقاضي داده مي شود در اين صفحه متقاضي صفحه بعدي ASPرا انتخاب مي كند. سرويس دهنده براساس وضعيت سرويس دهنده هاي ديگري ازلحاظ ميزان با ركاري تصميم مي گيرد كه صفحه دوم را از كدام سرويس دهنده وب براي متقاضي بايد ارسال نمود.
اين سرويس دهنده هاي وب همگي درارتباط با يكديگر هستند.و همگي داراي كليه صفحات مورد تقاضا بايد باشند.و همگي قدرت تصميم گيري و انتخاب سرويس دهنده وب بعدي را دارند. به اين ترتيب بار كاري در بين ايستگاهاي كاري توزيع مي گردد.
در اينجا دو مسله مطرح است كه بايد به آنها پرداخت، اين دو مسله در ارتباط با انتقال اطلاعات بين صفحات يك متقاضي و همچنين انتقال اطلاعات سراسري در بين متقاضيان متفاوت است. در ادامه به راه حل پيشنهادي خود براي اين دو مسله مي پردازيم.

اولا” چنانچه صفحه اول از روي يك سرويس دهنده انتخاب شده باشد، صفحه دوم بر روي هر سرويس دهنده ديگري كه قرار داشته باشد، از طريق سرويس دهنده اولي اطلاعات به آن قابل ارسال خواهد بود.
ثانيا” مي توان اطلاعات سراسري را در بين سرويس دهنده ها از طريق فيلدهاي پنهان درون فرم براي صفحات بعدي ارسال نمود.

قابليتهاي برنامه نويسي با ASPو چگونگي كار با آن :
فناوري ASP يك روش براي ايجاد نبشته هايي(Script) است كه در سمت كارگزار اجرا ميشود و نتيجه ي آنها توليد پويا و ارسا ل صفحات ابر متن به سمت كاربر مي باشد. ازاين فناوري مي توانيم به منظور اجراي برنامه هاي كاربردي مبتني بر وب استفاده كنيم،‌همچنين مي توانيم صفحات ابر مبتني دستورات نبشته و مولفه هاي Activexرا بايكديگر تركيب كنيم تا برنامه هاي كاربردي مبتني بروب نيرومندي ايجاد شوند.
اگربا صفحات وب آشنا باشيد در ادامه متوجه خواهيد شد كه نبشته هاي يك ASP راه آسان براي ايجاد صفحات پوياي وب ميباشد. به عنوان مثال ، اگرتا كنون خواسته باشيد اطلاعات وارد شده توسط كاربر در يك فرم ابر متن را در سمت كارگزار استخراج و پردازش كنيد و يا قابليتهاي نگاه ابزار (Browser) مشتري را تشخيص داده و از آن استفاده كنيد، فناوري ASP امكانات كاملي را در اين زمينه براي شما فراهم مي آورد.

در گذشته اگر مي خواستيم كه اطلاعاتي را از فرمهاي ابر متن جمع آوري كنيم، لازم بود با تسلط بر يك زبان برنامه نويسي، برنامه ايي نوشته و در سمت كارگزار قرار مي داديم كه كار استخراج و پردازش اطلاعات مشتري را به عهده داشت. با استفاده ازٍِ‍ASP مي توانيم با به كار گيري دستورات ساده ايي، اطلاعات يك فرم ابر متني را جمع آوري كرده و آن ها را تحليل كنيم و نياز به يادگيري يك زبان سازي به صورت كامل نيست.

در صفحات ASP از زبانهاي VBScript وJavaScript براي نبشته نويسي استفاده مي شود. توجه به اين نكته ضروري است كه ASP يك تكنولوژي است و نه يك زبان، لذا اسكريپت صفحه ASP مي تواند با هر زباني نوشته شده باشد. و تنها كسي كه كارگزار ابزار لازم براي اجراي اين اسكريپت را داشته باشد.
تكنولوژي ASP :
ASP تكنولوژي جديد است كه با ميزبان وب مايكروسافت(IIS) مي آيد و برنامه نويسان را قادر مي سازد تا برنامه هايي بنويسند كه در كامپيوتر ميزبان اجرا مي شود. اين يكي از قوي ترين ابزارهاي ايجاد صفحات ديناميك وب است. اما ASP دقيقا” چگونه كار مي كند؟يك صفحه وب شامل يك سند HTML و مقداري كد اسكريپ است كه با پسوند ASP ذخيره ميشود تا از صفحات معمولي HTMLمتمايز باشد. وقتي كاربر يك صفحه ASPرا باز مي كتد اتفاقات ذيل مي افتد:
• ميزبان تقاضايي براي صفحهASPدريافت مي كند.
• ميزبان صفحه را باز كرده و كد HTMLو اسكريپت آن را تحليل مي كند.

• بر اساس اسكريپت و HTMLاين صفحه يك صفحه جديدHTMLايجاد مي شود.
• صفحه جديد HTML به كامپيوتر مشتري فرستاده مي شود و در كاوشگر آن نمايش داده ميشود شكل زيراين فرايند را به تصوير كشيده است.
صفحهASP

.شكل سند ASPدر ميزبان وب پردازش شده وبعد ازايجاد سند HTMLآنرا به مشتري ميفرستد.
زبانهاي اسكريپت نويسي Asp
توجه به اين نكته مهم است كه ASPيك تكنولوژي است نه يك زبان اسكريپت صفحه ASP مي تواند با هر زباني نوشته شده البته استفاده ازهر زبان ويژگيهاي خاص خود را دارد بطور مثال درVbscritpt نمي توان يك تابع را از خواندن آن صدا زد (صدا زدن قبل از تعريف تابع نمي تواند صورت گيرد ) ولي در gavaScaipt اين كار ممكن است. البته از هر زبان مزايا و معايبي دارد كه ما نمي خواهيم در اينجا به آن بپردازيم.

ساختار يك صفحه ASP :
صفحات ASPماند صفحات HTMLمبتي هستند. در اين صفحات از همان برچسبهاي HTML استفاده مي شودو فقط داراي تعدادي ساختار منطقي هستند كه د رHTMLوجود ندارد اين ساختار با بر چسب > % …% < مشخص مي شوند. سندي كه به كاربر برگردانده مي شود تركيبي از HTML اولي كه در صفحه ASP وجود دارد و HTML ايجاد شده توسط اسكريپت ..
ASP داراي دو نوع مشخص كننده اسكريپت است كه در بالا با يكي از آنها يعني > %…%< آشنا شديم. نوع دوم كه از آن براي نمايش خروجي عبارات استفاده مي شود چنين است:
< = % 000 % >
اين برچسب مي گويد كه مقدار عبارت را دركاوش گر نمايش بده. مثلا” اگر total يك متغيير Vbscrip باشد عبارت ذيل مقدار آن را در كاوش گر نشان خواهد داد.

 

< % = Total .. % >
اشيا ميزبان فعال :
يك ميزبان ASP اشيايي دارد كه مي توان در اسكريپت هاي نوشته شده از آنها استفاده كرد. اين اشيا اطلاعاتي را درباره محيط ميزبان در اختيار قرار مي دهند، فرمها را مديريت مي كنند و داده ها را ذخيره مي كنند براي آنكه بتوان برنامه هاي موثر ASP نوشت بايد با اين اشيا آشنا بود لذا در اينجا به آنها اشاره مي شود.
Application
شي Application براي به اشتراك گذاشتن داده ها بين كاربران يك برنامه مورد استفاده قرار مي گيرند. تمام فايلها وزير داير كتوري هاي برنامه جز اين شي هستند و اطلاعات اين شي در دسترس تمام صفحات و تمام كاربران قرار دارد.
توجه : شي Application اطلاعات نسبتا” محدودي را مي تواند ذخيره كند برنامه هاي ASP نبايد از اين شي براي ذخيره كردن مقادير حجيم داده استفاده كنند.
براي ايجاد متغييري از شي Application بايد چنين عمل كرد :
Application,, Varname,, = Value

كه در آن Varname ‍‍‍‎‏ نام متغيير و Value داده اي است كه در آن ذخيره مي كنند و براي خواندن اين مقدار اگر هدف قرار دادن در متغيير My name باشد بايد به طريقه زير عمل كرد :
My name = Application ( ,, Varname,,)
اما اگر داده ها با متد Post ارسال شود از كلكسيون فرم استفاده خواهيم كرد :
Var = Reouest.Form (,, input Name,,)
كه در هر دو دستور input name نام عنصر ورودي HTML است كه مي خواهيم داده هاي آن را بخوانيم.