Java от Oracle, Java World, Open Systems Publishing

Една технология може да се счита за зряла, ако се поддържа от основните разработчици на СУБД. Но доставчиците на системи за управление на бази данни не само поддържат Java, но активно я използват в различни видове свои продукти: от инструменти до помощни системи. Например Oracle използва Java както в клиентски програми, които могат да работят на мрежови компютри, така и на сървъра на базата данни като съхранени процедури. В допълнение, Oracle е вградил Java в сървъра за приложения и дори в малка база данни, Oracle Lite, която също може да бъде изтеглена на компютър в мрежа. Естествено, Oracle също поддържа Java в своя инструмент за разработка на приложения Valhalla. Така Java се появява в следните продукти на Oracle:

  • набор от Java приложения и компоненти, насочени към мрежов компютър;
  • инструмент за разработване и отстраняване на грешки в Java приложения - проектът Valhalla;
  • два JDBC драйвера за комуникация с бази данни на Oracle;
  • малка база данни, предназначена за използване в тънки клиенти - Oracle Lite 3.0;
  • сървър за приложения - Oracle Application Server 4.0.

Предполага се, че с помощта на тези продукти е възможно да се изгради цялостна разпределена изчислителна система в Java - от клиентски софтуер до сървър на база данни.

Тънък клиент

Една от ключовите връзки в концепцията за мрежови компютри е използването на Java като универсална среда за изпълнение на програми. Характерна особеност на мрежовите компютри може да се счита, че те могат да изпълняват само Java програми, които позволяват достъп до изчислителните ресурси на компютърните мрежи. Между другото, терминът "мрежови изчисления" означава, че всички изчисления се извършват главно върхусървъри, а не на клиентски компютри.

Тъй като Java е връзката за мрежови изчисления, разработчиците на софтуер трябва да прехвърлят стандартни разпределени изчислителни технологии към тази платформа: монитори на транзакции, сървъри на приложения, механизми за отдалечено изпълнение на процедури, поддръжка за различни мрежови протоколи и много други технологии, които са компоненти за изграждане на разпределена изчислителна система. При разработването на системи е приемливо да се използват JDBC драйвери за достъп до бази данни и приложения и да се използват специални помощници за създаване на елементи на Enterprise JavaBeans. Освен това самите сървъри имат вградена Java среда, в която можете да стартирате части от различни Java приложения.

JDBC драйвери

Първата стъпка в предоставянето на мрежова изчислителна поддръжка за СУБД е разработването на JDBC драйвери за вашата база данни. Oracle има два такива драйвера: един "пълен" - за сървъра на приложения, а другият, лек (тънък), - за изтегляне към клиента. По този начин разработчиците на Java приложения, базирани на СУБД на Oracle, имат възможност да изберат архитектурата на системата клиент-сървър, която им подхожда най-добре - трислойна (многослойна), двуслойна или дори еднослойна (ако се използва Oracle Lite).

Oracle разработи интерфейс за извикване на отдалечени процедури (RCI), наречен интерфейс за извикване на Oracle (OCI) и комуникационен протокол SQL*Net за своите системи за управление на бази данни, който позволява няколко стандартни протокола на мрежовия слой (като TCP/IP, Named Pipes, DECNet) да комуникират между клиентски приложения, междинен сървър на приложения и сървър на база данни. Пълният JDBC драйвер е мост между JDBC и OCI метод извиквания и позволявапотребителят на приложението Java, за да активира протокола SQL*Net. С помощта на OCI можете да организирате поддръжка за специфични функции на СУБД на Oracle, като специфични типове данни (ROWID, REFCURSOR), а с помощта на SQL*Net е лесно да се постигне ефективна работа в мрежа за приложения, взаимодействащи с базата данни. Пълният JDBC драйвер на Oracle поддържа Oracle7 и 8.

Трябва да се отбележи, че мостът JDBC/OCI не изисква допълнителни библиотеки да бъдат инсталирани на клиентската машина или сървъра на приложения за поддръжка на OCI, SQL*Net или други технологии. Въпреки това, самият JDBC/OCI мост е твърде голям, за да бъде зареден през мрежата към отдалечена машина, като мрежов компютър. За да позволи на потребителите на мрежови компютри да имат достъп до бази данни на Oracle, компанията е разработила съкратена версия на JDBC драйвера, който е с размер само 150 KB и може да бъде изтеглен през мрежата на тънък клиент.

Thin JDBC драйверът е написан изцяло на Java и може да бъде изтеглен на всеки тънък клиент и да комуникира самостоятелно с базата данни на Oracle чрез OCI. Тънкият драйвер работи само с TCP/IP протокола и поддържа Oracle от версия 7.2. В резултат на това, използвайки тънък JDBC драйвер, можете да превърнете всеки мрежов компютър в пълноценен клиент на база данни. По този начин наличието на два различни JDBC драйвера ви позволява да изберете подходящия и да го използвате за изграждане на вашето приложение.

Java на сървъра

Съвременните технологии за СУБД са фокусирани върху използването на многостепенна архитектура клиент-сървър. Освен това, като връзка между клиента и сървъра на приложения, като правило, се използва HTTP транспортен протокол. Следователно разработчиците на софтуер за изграждане на сложни изчислителни системитрябва да създадете уеб сървъри, които едновременно да изпълняват функциите на сървъри за приложения. Oracle не прави изключение – разработи специализиран сървър Oracle Web Application Server.

Сървърът за уеб приложения на Oracle използва концепцията за касети, които са добавки за сървъра на приложения. Съвместната работа на касетите и тяхната комуникация със сървъра на базата данни се осигурява с помощта на брокери на заявки, които съответстват на архитектурата CORBA. Освен това касетите могат да бъдат написани на различни езици, включително Java. Oracle Application Server е фокусиран върху разработването на Java приложения, отговаря на стандарта CORBA 2.0 и позволява на Java касетите да взаимодействат с всички други сървъри, които поддържат IIOP протокола.

Леката версия на базата данни Oracle Lite се отличава с малък обем - от 350 до 700 KB. Тази версия на базата данни се инсталира през мрежата на всеки мрежов компютър и има вградени механизми за директно извикване на Java компоненти или достъп до тях чрез JDBC, съхраняване на Java обекти на отдалечен сървър и комуникация с други бази данни на Oracle. В допълнение, Oracle Lite включва Java Object Browser, който ви позволява да ги намерите в обширно хранилище. По този начин Oracle Lite предоставя на потребителите на Java не само база данни, написана на Java, но и средства за интегрирането й със съществуваща изчислителна система.

„300 процента Java“. Кой е по-голям?

Oracle пусна своя план за поддръжка на Java в базата данни, сървърите на приложения и клиентските интерфейси.

До края на годината Oracle ще вгради Java виртуална машина (JVM) по собствен дизайн в СУБД на Oracle 8.1. Това ще ви позволи да стартирате Java приложения за обработка на данни. „За JVM, произведена от Oracle, ще е достатъчно35 KB памет на потребител, докато други Java виртуални машини се нуждаят от 3 до 5 MB", каза Марк Джарвис, вицепрезидент на Oracle за системни продукти. „Въпреки това, Oracle няма да бърза да пренапише своята база данни в Java. „Нашият коз е двадесет години опит в разработката на бази данни и ние изобщо не възнамеряваме да рискуваме производителността."

Oracle наскоро обяви пускането на Java Software Developer's Kit за разработчици на Java приложения, насочени към бази данни на Oracle.

Междувременно компанията даде на Oracle Cartridges (разширение към базата данни за работа със сложни типове данни) различна роля - сега те ще станат опции за базата данни на Oracle. Тези опции могат също да включват Enterprise Java Beans (EJB).

В допълнение, Oracle 8.1 ще поддържа CORBA/IIOP (Internet Inter-ORB Protocol) брокер на заявки за обекти, за да позволи на компонентите да комуникират помежду си. Oracle Application Server ще бъде обогатен с CORBA/IIOP поддръжка, която ще позволи на разработчиците да създават приложения за обработка на транзакции, които ще работят както в базата данни, така и в сървъра на приложения. Компанията също така работи върху функции, които ще формират слоя за съобщения в опашка, но те ще бъдат внедрени в продуктите на Oracle на по-късна дата.

Oracle Application Server 4.0 за Enterprise е планирано да бъде пуснат тази есен. Първоначално компанията се бореше с ценообразуването на сървъра за приложения. Продава се едновременно от две подразделения и нито едно от тях не е успяло да установи ефективен маркетинг на този продукт. Тези проблеми обаче все пак успяха да бъдат решени и ценова схема беше преработена. Сега цената се определя не на базата на броя на централните процесори, а в зависимост отвърху броя на работните места.

Версии 3.0 и 4.0 на Oracle Application Server ще струват $195 на място. Application Server 4.0 трябва да поддържа Enterprise Java Beans (EJB). До края на годината базата данни ще може да използва EJB и Java съхранени процедури. Поддръжката на SQLJ за интегриране на Java и SQL команди вече е внедрена.

Наистина ли Oracle изпреварва своите конкуренти в популяризирането на Java? За разлика от Oracle, IBM DB/2 базата данни вече е внедрила поддръжка за Java Database Connectivity (JDBC) API, според IBM. Sybase също планира да вгради Java виртуална машина в своята база данни Adaptive Server Enterprise приблизително по същото време като Oracle.

Представители на Oracle казаха, че с помощта на неговите набори от инструменти Designer/2000 и Developer/2000 ще бъде възможно да се създават клиентски интерфейси, базирани на Java. Oracle вече предлага AppBuilder за Java 1.0 като част от Jdeveloper Suite. С него разработчиците могат да създават решения от страна на сървъра, които позволяват "пренасяне" на логиката на приложенията от клиенти към сървъри на приложения. AppBuilder за Java включва средата за разработчици на Borland JBuilder Java и разширения за база данни на Oracle като JSQL (език за заявки към база данни „с Java елементи“). Oracle също планира да пренапише своите приложения като Java компоненти.

Споделяйте материал с колеги и приятели