ПЕРЕЛІК ДИСЦИПЛІН:
  • Адміністративне право
  • Арбітражний процес
  • Архітектура
  • Астрологія
  • Астрономія
  • Банківська справа
  • Безпека життєдіяльності
  • Біографії
  • Біологія
  • Біологія і хімія
  • Ботаніка та сільське гос-во
  • Бухгалтерський облік і аудит
  • Валютні відносини
  • Ветеринарія
  • Військова кафедра
  • Географія
  • Геодезія
  • Геологія
  • Етика
  • Держава і право
  • Цивільне право і процес
  • Діловодство
  • Гроші та кредит
  • Природничі науки
  • Журналістика
  • Екологія
  • Видавнича справа та поліграфія
  • Інвестиції
  • Іноземна мова
  • Інформатика
  • Інформатика, програмування
  • Юрист по наследству
  • Історичні особистості
  • Історія
  • Історія техніки
  • Кибернетика
  • Комунікації і зв'язок
  • Комп'ютерні науки
  • Косметологія
  • Короткий зміст творів
  • Криміналістика
  • Кримінологія
  • Криптология
  • Кулінарія
  • Культура і мистецтво
  • Культурологія
  • Російська література
  • Література і російська мова
  • Логіка
  • Логістика
  • Маркетинг
  • Математика
  • Медицина, здоров'я
  • Медичні науки
  • Міжнародне публічне право
  • Міжнародне приватне право
  • Міжнародні відносини
  • Менеджмент
  • Металургія
  • Москвоведение
  • Мовознавство
  • Музика
  • Муніципальне право
  • Податки, оподаткування
  •  
    Бесплатные рефераты
     

     

     

     

     

     

         
     
    Перенесення Бази Даних на WEB-сервер
         

     

    Інформатика, програмування

    1. Вибір теми для дипломного проектування.

    Вибір теми для дипломного проектування, на мій погляд, досить складна річ. В дипломної роботі потрібно проявити самостійність з одного боку та рівень знань з іншого. Але крім цього хотілося освітити проблему досить цікаву і нову, тому я вибрав тему диплома пов'язану з технологіями Internet.

    Internet розвивається досить стрімко. Швидко росте кількістьвидань, присвячених Мережі, що віщує широке її поширення навіть удалеких від техніки областях. Internet перетворюється з великої іграшки дляінтелектуалів у повноцінне джерело всілякої корисної інформації длявсіх. Процеси розвитку глобальних інформаційно-комунікаційнихтехнологій дуже динамічні в даний час, а їх можливості для суспільствата економіки ще тільки починають масштабно використовуватися. Ще два-три рокитому Internet розглядався переважно як гігантська бібліотека іголовним його завданням вважалася допомогу в пошуку потрібної інформації іорганізація доступу до неї. На даний "комунікаційний" етап свогорозвитку головним завданням мережі Internet є допомога в пошуку бажанихпартнерів і надання коштів для організації з ними потрібного виглядукомунікацій з необхідною інтенсивністю. Результати останніхдосліджень показали, що використання Internet-технологій може принестиреальну економію і прибуток. Очікується істотне зростання збільшення обсягів
    Internet-комерції, особливо в таких областях, як подорожі, роздрібнаторгівля, фінанси, тематична реклама, а також в комп'ютерному секторі. Усвіті накопичено величезну кількість інформації з різних питань. НайчастішеНайбільше ця інформація зберігається в базах даних (БД). Щоб опублікувати її в
    Мережі доводилося експортувати БД в HTML-документи, що вимагало великихвитрат і ускладнювало пошук інформації. Сьогодні є великий досвід подібнихробіт. Практично будь-який користувач Мережі не раз стикався з подібними
    БД. Наприклад, головне в роботі популярного пошукового сервера Yahoo (адреса-http::www.yahoo.com) - це запити до бази даних WWW-сервера за ключовимисловами. Відповідь сервера - список гіпертекстових посилань на знайдені в Мережісторінки, що містять потрібну інформацію. Саме сьогодні проблема Web -інтерфейсу до БД як ніколи актуальна.

    2. Розробка технічного завдання на дипломне проектування.

    Працюючи у фірмі «Телефонна Комерційна Служба Санкт-Петербурга
    008 »переді мною, було поставлено завдання:

    . Перенести базу даних про клієнтів фірми з сервера в локальній мережі телефонного довідкової служби фірми на її WEB-сервер.

    . Вибрати спосіб реалізації.

    . Зробити вибір між доступними на сьогоднішній день серверами баз даних, для подальшої реалізації, на його основі, бази даних «Телефонної Комерційної Служби Санкт-Петербурга 008».

    . Зробити вибір між способами доступу до бази даних.

    . Здійснити розробку доступу до бази даних фірми за допомогою

    Internet-браузера.

    3. Вибір методів і засобів вирішення.

    1. Вибір сервера баз даних.

    У даному розділі потрібно визначити за допомогою яких методів ізасобів вирішення можна здійснити реалізацію проекту. Відразу треба сказати,що коштів вирішення цього завдання на сьогоднішній день досить багато, алепрактично завжди все залежить від кількості ресурсів надаються длярішення - типом і характеристиками сервера, операційною системою і т.д.
    Відразу треба сказати, що комп'ютер, виділена під WEB-сервер достатньопотужний (Pentium II - 300мг, 128Мб. оперативної пам'яті, SCSI - диск). На ньомувстановлена операційна система Microsoft Windows NT 4.0, так самовстановлений WEB-сервер Internet Information Server.

    Доступна споживачеві інформація про самих системах, операційнихсистемах, програмне забезпечення інфраструктури (СУБД та монітори обробкитранзакцій) як правило, має дуже загальний характер. Структура апаратнихкоштів, на базі яких працюють програмні системи, стала настількискладною, що експерти в одній області рідко є такими в іншій.
    Інформація про реальне використання систем рідко є точною. Більшетого, користувачі завжди знаходять нові способи використанняобчислювальних систем як тільки стають доступними нові можливості.
    При стільки невизначеності просто дивно, що багато конфігураціїсистем працюють досить добре. Оцінка конфігурації все ще залишаєтьсядеяким видом мистецтва, але до неї можна підійти з наукових позицій.
    Набагато простіше вирішити, що певна конфігурація не зможе оброблятипевні види навантаження, ніж визначити з упевненістю, що навантаженняможе оброблятися всередині певних обмежень продуктивності.
    Більш того, реальне використання систем показує, що має місцетенденція заповнення всіх доступних ресурсів. Як наслідок, системи, навітьщо мають деякі надлишкові ресурси, з часом не будуть сприйматидодаткове навантаження.

    Слід зазначити, що вибір тієї чи іншої апаратної платформи іконфігурації визначається і рядом загальних вимог, що пред'являються дохарактеристиках сучасних обчислювальних систем.
    До них відносяться:
    - відношення вартість/продуктивність;
    - надійність і відмовостійкість;
    - масштабованість;
    - сумісність і мобільність програмного забезпечення.

    Вже досить давно розвинені комерційні СУБД грунтуються наархітектурі "клієнт-сервер". При цій організації найбільш трудомісткіоперації над базами даних виконуються на виділеному комп'ютері-сервері,який повинен бути досить потужним і володіти відповідним наборомресурсів основної та зовнішньої пам'яті. До певного серверна частина СУБД володілапростий організацією: запити, що надходять з клієнтських частин системи,оброблялися послідовно з невеликою оптимізацією для поєднанняпроцесорної роботи з роботою пристроїв зовнішньої пам'яті. Однак з появоюна ринку мультипроцесорних симетричних апаратних архітектур,виробники СУБД були змушені переглянути організацію своїх серверів,допустивши в них внутрішню паралельність.

    Internet дійсно несподівано бурхливо увірвався в усталене життярозробників клієнт-серверних додатків. Проте первинний шокдосить швидко минув, як тільки настало усвідомлення нехитрого взагалі-тофакту, що структура Internet/Intranet додатків має багато спільного зтрадиційної платформою "клієнт-сервер". Вірніше кажучи, World Wide Web
    (WWW) також грунтується на клієнт-серверній архітектурі. Справді, Web -браузер є типовим клієнтським front-end'ом, основна відмінністьякого від клієнтських місць, побудованих за допомогою Visual C + +, Visual
    Basic, Visual FoxPro та інших засобів розробки, полягає в більш гнучконастроюваної функціональності, яка може визначати навіть під часвиконання програми. При цьому не потрібно ні перекомпіляції, ніпереустановки модулів, що вже саме по собі є нетривіальною завданняму великих і складних клієнт-серверних системах масштабу корпорації. Правда,спочатку браузери використовувалися лише як засоби форматуваннястатичного тексту. Проте активно розвивається в Internet бізнес незабаромперестав задовольнятися простий публікацією реклами підприємства ідовідкової інформації про його діяльність. Наприклад, клієнт мав повнеправо хотіти вибрати з рекламного проспекту фірми сподобалися йомузразки і зробити покупку. Подібно до типового інтерфейсу клієнтськогопрограми на VB, VFP і т.д., сценарій роботи припускав заповненняклієнтом певної форми, населеної, взагалі кажучи, різними елементамиуправління, надсилання відповідного запиту на сервер та отримання результатівобробки. Таким чином, вимоги бізнесу висунули на перший планпринципи динамічної взаємодії браузера і Web-сервера всередині сесії,що змусило задуматися як про активну роль браузера, так і про розширенняфункціональності сервера в порівнянні з простим зберіганням і пересиланням HTML -документів.

    Багато фірм-виробники програмних продуктів випускають аборозробляють засоби публікації баз даних в Internet-мережах. Основніфункції таких програмних продуктів даного виду такі:

    1. забезпечити відображення інтерфейсу користувача у форматі HTML для відображення програмою перегляду клієнта, зокрема Internet-браузерами.

    2. забезпечити формування запитів до бази даних найбільш простими для непідготовленого користувача засобами.

    3. забезпечити аутентифікацію користувача (для розмежування доступу).

    4. забезпечити обробку запиту і повернення результату в HTML форматі для відображення програмою перегляду користувача.

    При цьому необхідно пам'ятати про захист переданої по Мережі інформації тапро привабливості і зрозумілості інтерфейсу.

    Для серійно випускаються програмних продуктів даного типу характернівисока вартість самого програмного забезпечення (ПЗ), апаратноїплатформи, самої СУБД (наскільки мені відомо, ПЗ для зв'язку з WWW поки невключається в постачання СУБД). До позитивних якостей можна віднести хорошудокументування, наявність технічної підтримки, низьку вартістьподальших оновлень програмного забезпечення. Хоча останнім часомпочинають з'являтися програми такого типу для «настільних» СУБД типу Visual
    FoxPro, Paradox і т.д. Але тут інша проблема - при низькій вартості
    (деякий ПЗ можна отримати по Мережі безкоштовно - потрібно лише мати СУБД)відсутній потужність і гнучкість. Таке ПО годиться хіба що для публікаціїневеликих за обсягом і нескладних баз даних.

    Можна згадати наступні СУБД:


    SQL-server фірми Microsoft (потребує потужного сервера баз даних підуправлінням ОС Microsoft Windows NT server).


    Sybase System фірми Sybase (потребує потужного UNIX-сервера).


    Informix фірми Informix Software (також вимагає потужного UNIX-сервера).


    Progress фірми Progress Software (працює на тій же апаратній платформі,що і два попередніх).


    InterBase фірми Borland (є варіант для Windows NT і для UNIX).

    Крім перерахованих вище достоїнств можна також відзначити гарнумасштабірумость (нарощуваність), стійкість в роботі, захист віднесанкціонованого доступу і потужність цих програмних продуктів. Всіце ПЗ, як мені здається, дуже добре підходить для роботи з великимипроектами в області баз даних.

    Наприклад, останнім часом, все частіше згадують Intranet ( «внутрішня»
    Мережа). Це великі корпоративні обчислювальні мережі, засновані натехнології Internet, що використовують ті ж протоколи, формати даних і т.д.що мають або не мають вихід глобальну мережу Internet. Переваги Intranetв тому, що не треба переучувати персонал при переході на нове ПЗ (можна, впринципі, залишити старі інтерфейси), так як навчивши один раз людиникористуватися Internet 'ом, можна легко навчити його роботі з ПЗ підприємства
    - Для відображення інформації можна скористатися тими ж браузерами. Дозагальних рис перерахованих вище програмних продуктів можна віднестипідтримку стандартного мови запитів до баз даних SQL, що полегшуєразі потреби перехід від однієї СУБД до іншої, практичну відсутністьобмежень на розміри файлів баз даних.

    Оригінальна версія SQL - це інтерпретується мова, призначенадля виконання операцій над базами даних. Мова SQL був створений на початку 70 --х як інтерфейс для взаємодії з базами даних, заснованими на новійдля того часу реляційної теорії. Реальні програми зазвичай написані наінших мовах, що генерують код на мові SQL і передають їх в СУБД у виглядітексту в форматі ASCII. Потрібно також зазначити, що практично всі реальніреляційні (і не тільки реляційні) системи крім реалізації стандарту
    ANSI SQL, відомого зараз в останній редакції під ім'ям SQL2 (або SQL-
    92), включають в себе додаткові розширення, наприклад, підтримкаархітектури клієнт-сервер або засоби розробки додатків.

    Як говорилося вище, вибір реалізації того чи іншого рішенняпоставленого завдання пов'язаний, перш за все, з технічними показникамикомп'ютера-сервера, а так само з операційною системою, встановленою на ньому.

    Microsoft SQL Server 7.0 входить до складу сімейства Microsoft
    BackOffice, що об'єднує п'ять серверних додатків, розроблених дляспільного функціонування в якості інтегрованої системи. Вонадозволяє користувачам підвищити продуктивність процесу прийняттярішень засобами систем, що базуються на архітектурі клієнт-сервер. Крімтого, Microsoft SQL Server 7.0 завершує лінію засобів розробки,включають Microsoft Access, Visual FoxPro ®, Visual Basic і Visual C + + ™.

    Розширені можливості масштабування і висока продуктивність.

    Особливу увагу, яку було приділено підвищенню продуктивності
    СУБД, дозволило підвищити швидкість виконання деяких операцій майже на
    400% на багатопроцесорних комп'ютерах. Це досягається активнимвикористанням многопроцеcсорной архітектури комп'ютера і многопоточнойархітектури операційної системи. Серед операцій, що виконуютьсяпаралельно, можна назвати сканування таблиць, завантаження,створення/відновлення страхувальної копії. Все це дозволяє забезпечитивисокопродуктивну роботу з великими і дуже великими базами даних.

    Підтримка дуже великих баз даних і знімних носіїв.

    Для версії 4.21а дуже великий вважалася база даних розміром 10-15 Гб
    (хоча деякі організації, наприклад, Sprint, працювали з базами данихрозміром 60 Гб і більше). Високошвидкісна паралельна обробка робитьможливу підтримку роботи з базами даних розміром 100 Гб і більше навідповідним чином конфігурувати системах. Не тільки процесстворення страхувальних копій виконується швидше, але і такі операції, якперевірка цілісності бази даних (виконується командою DBCC), сильновиграють від використання паралельного сканування і збільшених блоківвведення/виводу. Можливість збереження в страхувальної копії (відновленняз копії) індивідуальних таблиць дозволяє скоротити час, необхідний назбереження (відновлення) окремих таблиць бази даних. Підтримкарозповсюдження баз даних на знімних носіях (таких як CD-ROM)дозволяє випускати різного роду довідники або інформаційніматеріали. Цікаво відзначити, що гнучкість SQL Server виявляється і прироботі з дуже маленькими обсягами інформації. Так, для того щоб базуданих можна було зберегти на дискеті, її мінімальний розмір знижено до 1
    Мб.

    Розширення можливостей мови та програмного доступу.

    Існуюча версія SQL Server забезпечена потужним мовою програмування
    -Transact-SQL, що дозволяє створювати складну логіку тригерів і збереженихпроцедур. У новій версії мова значно розширений, тепер він відповідаєстандарту ANSI-92, і програмісти отримали нові можливості (такі якнові, що відповідають ANSI-стандарту, типи даних і відповіднастандарту ANSI підтримка декларативної цілісності даних). Крімперерахованих можливостей, програміст може скористатися генератором,автоматично створює унікальні значення для ключових полів таблиці,можливістю передавати ідентифікатори і дані типу TEXT і IMAGE якпараметри що зберігається процедур і багато іншого. Використання збереженихпроцедур, які запускаються автоматично при кожному старті SQL Server,дозволяє створювати системи, здатні виконувати різного роду завданнябез участі адміністратора. Найбільш ж цікавим нововведенням єскролліруемие, двонаправлені курсори. Курсори SQL Server підтримують всірежими, визначені розширеними вимогами ANSI, а також і ODBCсемантику; вони сумісні з існуючими курсором, що підтримуються API в
    DB-Library.

    Продуктивність і масштабованість.

    Microsoft SQL Server 7.0 має паралельну архітектуру, інтенсивновикористовує багато потоковість операційної системи для забезпечення високоїпродуктивності та масштабованості на багатопроцесорних системах. Всіуправління завданнями SQL Server організовано витісняють для підвищеннянадійності та ізолювання можливих збоїв. За рахунок динамічногорозподілу навантаження на процесори SQL Server досягає автоматичноїбалансування завантаження всіх ЦП комп'ютера. Microsoft називає це
    "симетричною архітектурою сервера".

    Переваги симетричною архітектури.
    Симетрична архітектура Microsoft SQL Server надає наступніпереваги:

    - знижує складність системи.

    SQL Server не дублює служби операційної системи (наприклад, диспетчеризація, розподіл пам'яті, управління чергами), що робить архітектуру системи більш ефективної і стабільної;

    - підвищує продуктивність.

    SQL Server здатний забезпечити високу швидкість?? иполненія транзакцій і володіє високою пропускною здатністю на мікропроцесорних системах, навіть при одночасній роботі сотень користувачів;

    - адаптується до зростання навантаження.

    Навантаження на SQL Server динамічно розподіляється по декількох ЦП, що підвищує масштабованість на симетричних багатопроцесорних системах. підвищує надійність

    Завдання користувача виконуються в самостійних потоках, і при необхідності одне завдання примусово завершується, не надаючи впливу на виконання інших. Наприклад, SQL Server здатний перервати "сплячий" процес без того, щоб це вплинуло на роботу всієї системи. Ні одне завдання не може "вийти з-під контролю".
    Удосконалення, пов'язані з паралельною обробкою даних в SQL Server

    7.0.

    У SQL Server 7.0 Microsoft ще більше розширила можливостіпаралельної обробки симетричною архітектури сервера. За рахунокпаралельного виконання широкого діапазону внутрішніх функцій СУБД звикористанням множинних потоків операційної системи при роботі набагато процесорних системах різко зростає продуктивність імасштабованість багатьох операцій (таких як певні типи запитів,сканування таблиць, створення індексів, створення/відновленнястрахувальних копій, перевірка цілісності бази даних і т.д.).

    Паралельне сканування і асинхронне випереджаюче читання.

    Паралельне сканування і асинхронне випереджаюче читання підвищує на
    40 - 400% швидкість виконання деяких типів запитів та інших операційнад базою даних у багатопроцесорних системах. Підвищення продуктивностідосягається за рахунок використання SQL Server 7.0 множинних потоківопераційної системи і алгоритмів визначення наступного блоку даних,необхідних для виведення в кеш. Ця операція є типовою для тривалого запитуз обчисленнями або операції створення звіту. Подібна технологіязабезпечує різке підвищення продуктивності для будь-якої операції,що вимагає перегляду таблиць, наприклад, SELECT, UPDATE і DELETE знеобхідністю пошуку, CREATE INDEX, DBCC, DUMP/LOAD і т.п.

    Паралельна завантаження.

    При роботі з новою версією SQL Server можна запускати кількапаралельно працюючих копій BCP або SQL Enterprise Manager і виконуватипаралельні перекриваються операції завантаження даних в SQL Server.
    Подібні можливості виявляються особливо корисними при необхідностімасивного копіювання даних в обмежений термін.

    І звичайно ж безпека:
    - Покращена інтеграція з безпекою NT;
    - Аутентифікація засобами NT (як поточний користувач - без пароля, як інший - login + pwd );
    - Mixed (можлива аутентифікація засобами SQL Srv);
    - Повна підтримка користувачів, груп і ролей;
    - Ролі можуть бути приписані користувачам і групам NT, а також користувачам Sphinx;
    - Ролі можуть бути вкладені;
    - Прикладні ролі для 3-рівневий систем;
    - Дозволяють призначати права при доступі через додаток, а не isql;
    - Гнучка шорсткого прав і системних ролей;
    - Попереднє визначення ролі ServerAdmin , SecurityOfficer, ... ;
    - Підтримка делегування до NT 4.0;
    - На 2-му сервер не як віддалений користувач, а під тим же ім'ям;

    - Просте і потужне адміністрування.

    Тому було прийнято рішення встановити сервером бази даних -
    Microsoft SQL Server 7.0.

    2. Вибір методів доступу до бази даних.

    Далі необхідно порівняти способи реалізації доступу до бази даних.
    Схематично можна уявити взаємодію бази даних та WEB-сервера так:

    3.2.1 CGI - Common Gateway Interface.

    Першим способом стали програми Common Gateway Interface (CGI),оскільки специфікація CGI дозволяє браузеру викликати той чи іншийвиконуваний модуль або скрипт на Web-сервер, який міг звернутися ззапитом до бази даних, побудувати в HTML-кодах сторінку результатів іпередати її назад Web-серверу, що ж, у свою чергу, відсилаврезультати браузеру. CGI-додатки можуть містити виклики іншихпрограмних (написаних, наприклад, на С + +) або командних (. bat,. cmd)файлів. За допомогою CGI-cкріптов, а точніше на мові PERL (Practical
    Extraction and Reporting Language), побудовано чимало інтерактивних Web -додатків. На жаль, кожен такий скрипт виконується як інший, ніж
    Web-сервер, процес, що швидко "з'їдає" ресурси навіть досить
    "навороченной" за сьогоднішніми мірками машини, особливо при великомукількості входів на сервер.

    3.2.2 PHP - Personal Home Page Tools.

    Модуль PHP почав життя як проста невелика CGI оболонка, написанана Perl. Щоб позбавитися від значних непродуктивних витрат черезнеобхідність запуску Perl при кожному зверненні до сервера в стандартномузверненні CGI. Спочатку використовувався для маленьких Internet-сторінок.
    Пізніше був вбудований інструмент для включення SQL в WEB-сторінки. Це була
    CGI-оболонка, яка аналізує запити SQL і полегшує створення форм ітаблиць, заснованих на цих запитах.

    PHP/FI версії 2.0 - повна перезапис з цих двох пакетів,об'єднаних в одиночну програму. Це тепер розвинулося по суті в простіймова програмування, впроваджений всередину HTML файлів. PHP/FI сьогоднівикористовується більше для створення цілих WEB серверів, ніж для малих домашніхсторінок. Модуль усуває потребу в численних малих cgi програмахна Perl, дозволяючи помістити прості скрипт-програми безпосередньо у ваші
    HTML файли. Пакет також спрощує управління великими WEB серверами, розміщуючивсі компоненти WEB сторінки в одиночному файлі HTML. Вбудована підтримкарізноманітних баз даних робить тривіальної розробку WEB сторінок з доступом добаз даних. Багато хто знаходять, що мати справу з впровадили в html-документимовою набагато простіше, ніж створювати окремі HTML і CGI файли.

    3.2.3 ISAPI - додатки.

    3.2.3.1 dBWeb.

    Крім виконання CGI-скриптів , Microsoft Internet Information Server
    (MS IIS) надає розробникам можливість створення за допомогоювідповідного API (ISAPI) додатків у вигляді dll, запуск якихвідбувається у відповідь на команду або вибір лінка на Web-сторінці. Кожне такевиконується програма в адресному просторі Web-сервера, що,природно, підвищує швидкість роботи і суттєво економить машинніресурси. Залежно від складності сайту та програм, dll можуть бутипредзагружени одночасно із запуском сервера, абодовантажувати/розвантажуватися з пам'яті в міру необхідності. До найбільшвідомим засобам розробки додатків на основі ISAPI відносятьсящо входить до складу MS IIS Internet Database Connector (IDC), а такожвільно розповсюджується dbWeb.

    Microsoft dbWeb являє собою шлюз між 32-бітними ODBC -ресурсами, як які можуть виступати, наприклад, Microsoft SQL
    Server, Microsoft Access, Microsoft Visual FoxPro, Oracle і т.д., і MS IIS.dbWeb передбачає створення схеми, яка містить опис даних іпов'язаних з ними Web-сторінок. Він підтримує виконання запитів вреальному режимі часу на основі "pull"-моделі публікації, дозволяючи тимсамим створювати активні Web-сторінки.

    Рис. 1 Структура dbWeb.

    Microsoft dbWeb структурно складається з двох основних компонентів: dbWeb
    Service і dbWeb Administrator. dbWeb Service є типовим ISAPI -додатком, що обробляє запити користувачів, що направляютьсявідвідувачем сторінки через браузер, і управляє з'єднаннями міжбраузером, ODBC-ресурсом і IIS. До функцій dbWeb Administrator відноситьсястворення HTML-сторінок, що містять результати виконання запитів на основівже згадуваних схем, за допомогою яких здійснюється управлінняпублікованими даними. Схеми визначають сам запит і структуру сторінок. Прицьому не вимагається знання HTML або ISAPI, так як до складу dbWeb
    Administrator входить інтерактивний майстер-будівник схем (Schema Wizard),який у традиційній для будь-якої програми-майстра манері дозволяє задатиполя пошуку за методом Query-by-Example (QBE), вибрати поля для відображенняв таблиці сторінки результатів і визначити переходи зі списку записів уокремі сторінки, що містять розгорнуту інформацію з поточного запису.
    Настроюванням відповідних властивостей можна дозволяти або забороняти операціївставки, видалення та редагування. Для перевірки прав користувачавикористовується система безпеки тієї СУБД, до якої відбувається доступ.dbWeb має в своєму складі широкий спектр шаблонів сторінок, які принеобхідності можуть бути легко відкориговані і налаштовані розробникомдля більш повної відповідності його завданням. Таким чином, dbWeb НЕє кінцевим для користувача додатком. Швидше його можнаохарактеризувати як досить легкий у використанні інструментарійрозробки, який, як кожен майстер, не підтримує мовипрограмування. Проте, ця програма успішно справляється завтоматизацією більшості рутинних операцій з організації з'єднань іпублікації даних з БД і покриває, за різними оцінками, порядку 40-60%потреб бізнесу середньостатистичної фірми при організації доступу досвоїх джерел даних через Internet.

    3.2.3.2 IDC.

    IDC є іншим прикладом досить давно і успішно використовується
    ISAPI-додатки. Він входить до складу MS IIS. За допомогою викликів функцій ODBC
    API IDC забезпечує прямий зв'язок між полями HTML-форми й відповідним
    ODBC-досяжним джерелом даних, наприклад, базою даних MS SQL Server,без необхідності написання хитромудрих CGI-скриптів. Схема роботи IDC:

    Рис.2 Схема роботи IDC.

    Для доступу до даних та публікації на Web IDC використовує файли двохтипів -. idc і. htx. Файл з розширенням idc містить всю необхіднуінформацію про з'єднання з джерелом даних, текст запиту, а також посиланняна відповідний htx-файл. Файл з розширенням htx служить шаблономсторінки, на якій будуть опубліковані дані з бази, а також елементиоформлення у вигляді статичного тексту, графіки, відео і т.п. MS IISрозпізнає розширення. idc як виклик httpodbc.dll, яка зчитує http -заголовки з керуючого блоку ISAPI для визначення параметрів запиту.
    Httpodbc.dll читає і розбирає idc-файл, вказаний в URL. Назва джерела,ім'я користувача, пароль і пр. використовуються для підключення довідповідного ресурсу ODBC, після чого httpodbc передає на виконання
    SQL-запит і отримує результати. Результати використовуються для наповненнязаготовки у вигляді htx-файлу, після чого отриманий HTML-документ MS IISпередає браузеру.

    3.2.3.3 ADO - Active Data Objects.
    Active Data Objects. Коли мова заходить про компоненти ActiveX, як правило,неявно мається на увазі клієнтська частина програми. Microsoft Active Server
    Pages (ASP) - активні серверні сторінки-являють собою інструментдля ефективної розробки серверних Web-додатків, що інтегрують у своємускладі HTML-код, VBScript і компоненти ActiveX. Це означає, що у вжеіснуючі напрацювання легко можуть бути вбудовані фрагменти коду на VBScriptабо JavaScript, а також виклики відповідних об'єктів ActiveX. Як,напевно, відомо, VBScript - це звуження добре знайомого мовипрограмування Visual Basic на область створення Web-сторінок. Основнимідейним відзнакою VBScript від VB, на мій суб'єктивний погляд, є те, що
    VBScript не містить операторів файлового вводу-виводу і взагалі засобівпрямого доступу до операційної системи (напрошуються паралелі, якщо Javaзіставити з С/С + +, чи не так). Крім цього, в VBScript існуєтільки один тип змінних - variant, відсутні декларативні константи іт.п. Наявність звичного синтаксису мови високого рівня істотноспрощує створення HTML-сторінок. Крім цього, до складу середовища активнихсерверних сторінок (ASP Framework) входять наступні 5 основних вбудованихоб'єктів.

    . Application (додаток) - для розділення інформації між всіма користувачами цього додатка.

    . Request (запит) - для отримання тих значень, які броузер клієнта передає на сервер по HTTP-запиту, тобто, грубо кажучи, для отримання інформації про користувача або від користувача

    . Response (відповідь) - для передачі інформації клієнту.

    . Server (сервер) - надає можливість звернення до методів і властивостей сервера для керування середовищем виконання ASP.

    . Session (сеанс) - для зберігання інформації, що відноситься до даної користувача сесії.

    Крім базових об'єктів, ASP підтримують численні компоненти
    ActiveX, які спрощують створення і значно підвищують функціональністьактивних Web-сторінок. До них відносяться різні елементи управління,компоненти, що створюють зміст програми, компоненти введення/виводу в файлта багато інших. Але нас в першу чергу будуть цікавити компоненти,що дозволяють організувати доступ до баз даних, або Active Data Objects
    (ADO). На відміну від добре відомих Data Access Objects (DAO) або Remote
    Data Objects (RDO) ADO мають менше ієрархічно строгу структуру і томубільш зручні при роботі з базами даних.

    Рис.3 Структура DAO і ADO.

    ADO є універсальним інструментом доступу до даних. Ви можетебез змін використовувати інтерфейс ADO з даного прикладу при роботі збазами даних на VB, Visual FoxPro і т.д. Нарешті, за допомогою ADO, у своючергу, можуть бути побудовані для користувача компоненти, для звернення досервера баз даних як з боку "товстого" (Win32), так і з бокутонкого (Internet Browser) клієнта. Функції забезпечення цілісностітранзакцій, сервіси безпеки та злагодженої роботи компонент урозподіленому додатку може взяти на себе Microsoft Transaction Server.

    3. ASP (Active Server Page) - Активні серверні сторінки.

    Особливе місце серед засобів розробки займають активні серверністорінки (Active Server Pages або ASP). Вони призначені для організаціїдоступу до WEB-сервера, клієнтів, мають в своєму розпорядженні тільки броузером. ASPявляють собою набір інтерпретуються сервером MS IIS (Microsoft
    Internet Information Server) сценаріїв, що містять розмітку HTML іпрограмний код на мовах VBScript і Javascript, який за бажаннямрозробника, може виконуватися або на сервері, або на клієнті. Цедозволяє в одному ASP-файлі поєднувати серверну і клієнтську логіку. Тачастина коду, яка виконується на сервері, може використовувати "рідні"інтерфейси для спілкування з сервером і реалізації як базових, так ірозширених функцій MAPI. При цьому спілкування клієнтської і серверної частин
    ASP-додатки відбувається виключно засобами протоколу HTTP. Запідтримка сесії між клієнтської і серверної частинами відповідає Internet
    Information Server.

    Active Server Pages є звичайним ISAPI-фільтром, що працює вконтексті процесу MS Internet Information Server, починаючи з версії 3.0.
    (Технологія ASP доступна і для інших серверів. Фірмою Chili! Softвипускається пакет Chili! ASP, після установки якого сервера іншихвиробників починають "розуміти" ASP - сторінки.) Відмінність від ASPпрепроцесора полягає в можливості роботи з COM-об'єктами (у контексті
    ASP їх називають Installable components).
    Проект під назвою Denali майже ідеально вписується в технологію "клієнт -сервер ", тепер уже не настільки популярну. Хоча, що може кращепідходити для Мережі, ніж технологія створення програм "логічноцентралізованих - фізично децентралізованих ". Говорячи простою мовою,логічно централізовані - це розподілені обчислювальні системи,доступні та керовані з будь-якої точки, а фізична децентралізація - цеможливість розширення, масштабування, підвищення надійності.
    У першу чергу, ASP має досить розвинений командний мову. І навіть неодин, а як мінімум два: VBScript і JScript. "Як мінімум", тому щооб'єктна модель OLE для «скриптових» машин дозволяє легко вбудовувати всереду інші мови. Тому розробникам на Perl або REXX можна неперевчатися, а використовувати свій накопичений досвід. І все-таки мовою "поумовчанням "для ASP є VBScript, фактично підмножина Visual Basic,і в цьому, звичайно ж, немає нічого дивного - продукт Microsoft
    Corporation. JScript, з іншого боку, - підмножина Java і так само схожийна С + +. І у той, і інший скрипт-машини є як свої переваги, так інедоліки. Якщо коротко, то JScript все-таки здається більш потужні і майжедотягує за можливостями до нескриптовим мов. Це далеко не асемблер,практично неможливо подлубатися в потрухи у системи, але, по всійвидимості, розробники ASP вважають це додатковим захистом відвторгнення ззовні.
    Саме кодування не вимагає ніяких додаткових витрат у виглядіспеціальних середовищ розробки. Оскільки ASP-файли мають текстовий формат,вони легко можуть бути модифіковані для додання клієнтської і серверноїчастинам необхідної функціональності. Microsoft рекомендує використовувати MS
    InterDev, але майже у всіх сучасних версіях HTML-редакторів (наприклад,
    Allaire HomeSite) є підтримка тегів ASP. Код "вставляється" прямо в HTML -текст в оточенні спеціального тегу

    , після цього файлу потрібно дати з розширенням. asp, щоб вінбув переданий на вхід ASP-фільтра для переробки в звичайний HTML і видачі IIS -сервера, який вже і віддасть результат браузеру. Причому будь-кому, не маєзначення, MS IE це, Netscape Navigator або браузер "третього світу".
    Головне, щоб він розумів HTML, а це ж бо взагалі-то першорядне завданнябраузера. Чим не універсальна платформа, до якої довго і наполегливопрагнуть все? Звичайно??, Все ж таки є відмінності в браузерах, тобто в їхінтерпретації стандартного HTML. Всім це знайоме: одні й ті ж сторінки,написані на самому що ні на є стандартний HTML, виглядають інодізовсім по-різному в IE і NN. А взагалі ASP має можливість впоратисяі з цією "проблемою". Просто визначається тип браузера, з яких прийшли, інавігація йде по сторінках, написаним для цього типу.

    Походження однією з найважчих проблем при створенні Інтернет -додатків в самій природі Мережі. Це відсутність гарантованої постійноїзв'язку, і, звідси, неможливість створення безперервного каналу длявідстеження дій конкретного клієнта. Єдиний вихід з цієїситуації - якщо клієнт при кожному зверненні буде "представлятися". Самеце і зроблено за допомогою "cookie". Чимало списів було поламано з приводубезпеки, але на даний момент, начебто, вирішили, що вони доситьнешкідливі, якщо не вважати декількох десятків байт, з'їдаються на диску.
    Зате користі від них, як можна побачити, набагато більше. Після старту сервервидає кожному клієнтові прийшов унікальний ідентифікатор (SessionID) ввигляді "cookie" і протягом сесії може розуміти "хто - де". ID унікальнітільки в період безперервної роботи сервера. Якщо зупинити і зновуперезапустити сервер, то можна отримати значення такі ж, як доперезапуску. Тому застосовувати SessionID в додатках у вигляді унікальногоідентифікатора не рекомендується - краще формувати свої.
    Для установки сесії можна використовувати два об'єкти: Application і Session,кожен з яких має по два оброблюваних події OnStart і OnEnd.
    Перший клієнт, що прийшов на сервер, викликає створення об'єктів Applicationі Session та відпрацювання для них своїх процедур OnStart. Кожен наступнийвикликає створення об'єкту Session для себе і відпрацювання OnStart для свогооб'єкта. Після відходу клієнта для відповідного об'єкту Sessionвідпрацьовується процедура OnEnd, і об'єкт знищується. З відходом останнього,крім того, викликається процедура OnEnd для об'єкта Application, ізнищується об'єкт Application. Догляд клієнта відбувається або з тайм-ауту,період якого задається у хвилинах властивістю Timeout об'єкту Session (позамовчуванням 30 хвилин), або силовим методом Abandon того ж самого об'єкта.
    Фактично, об'єкт Session потрібен для персоналізації, тобто зберіганнязмінних середовища конкретного клієнта, а Application - для зберіганняглобальної інформації за все програми. Процедури для обробки подій
    OnStart і OnEnd описуються у файлі Global.asa, що повинен лежати вкорені віртуального каталогу.
    Механізм прийому-передачі даних в ASP реалізований з допомогою двох вбудованихоб'єктів: Request та Response. Використовуючи властивості і методи цих об'єктів,можна добитися справжньої інтерактивності, єдиним незручністю залишаєтьсянеобхідність закачування нової сторінки кожного разу при виконанні якого -небудь дії. Але тут не варто забувати, що ASP - це саме серверначастина до клієнт-серверної моделі, а для клієнтської частини існують іншірішення.
    Як вже було сказано вище, COM-об'єкти відіграють важливу роль у житті ASP. Інайбільш значущим серед них є Database Access. Про

         
     
         
    Реферат Банк
     
    Рефераты
     
    Бесплатные рефераты
     

     

     

     

     

     

     

     
     
     
      Все права защищены. Reff.net.ua - українські реферати ! DMCA.com Protection Status