660 likes | 905 Views
Oracle9 i Application Server. Комплект технологий выполнения и интеграции приложений. Всего 3 продукта. Oracle DB Internet Developer Suite Internet Application Server. История. Oracle Web Server WebDB Apache и Mod_plsql. Portal. Web Services. Business Intelligence. J2EE.
E N D
Oracle9i Application Server Комплект технологий выполнения и интеграции приложений
Всего 3 продукта Oracle DB Internet Developer Suite Internet Application Server
История Oracle Web Server WebDB Apache и Mod_plsql
Portal Web Services Business Intelligence J2EE Application Integration Wireless & Mobile Clustering &Caching Management & Security Any Data Source
Архитектура Oracle9iAS Oracle DB Non-Oracle Browser Packaged Apps Wireless B2B Apps Web Services
Java Servlet JSP Oracle9i Application Server Perl PL/SQL, PSP Распределенные архитектуры • HTML/XML-приложенияпримеры API: JSP, PHP, Servlet
Oracle9i Application Server Распределенные архитектуры • Многоуровневые Java-приложениятехнологии J2EE, в частности EJB Java Servlet JSP PL/SQL, PSP Java EJB / BC4J
HTTP Serverpowered by Apache mod_plsql Oracle PL/SQL Web Toolkit • Компонент Oracle9i Database • HTML/XML-приложения: PL/SQL и PSP PL/SQL
PL/SQL Web Toolkit and PSP Web Toolkit PL/SQL Server Pages CREATE OR REPLACE PROCEDURE home_page AS BEGIN htp.htmlOpen; htp.headOpen; htp.title('My home page'); htp.headClose; htp.bodyOpen; htp.print ('This is the home page of ' || user || ' generated on ' || sysdate || '.'); htp.bodyClose; END; <HTML> <HEAD> <TITLE>My home page</TITLE> </HEAD> <BODY>This is the home page of <%= user %> generated on <%= sysdate %>. </BODY> </HTML>
Стратегия Java – ключевые слова • Современные API • Поддержка J2EE • Хранимые процедуры, SQLJ, JDBC • Сервер J2EE уровня предприятия • Скорость, рост, надежность • Интегрированная среда разработки: Oracle9i JDeveloper • Интегрированные средства управления: Oracle9iAS Enterprise Manager
Разработка приложений J2EE Servlets JSP Apache (9iAS) http EJBs (Session, Entity, MDBs) Browser EJB Client RMI JNDI JMS JCA JAAS Java Mail JTA JDBC CORBA Client RMI-over-IIOP J2EE Container JDK Java VM 9iAS
TL Двухзвенная: Java клиенты соединяются с СУБД через TopLink DB TL Трехзвенная: TopLink располагется на Java-сервере. Доступ происходит через серверные компоненты, клиентsы Web, Java и XML/CORBA. TL DB Session-Beans with Java Objects: Расширение трехзвенной архитектуры, в которой доступ к перманентным объектам Java идет через Session Beans. Часто используется совместно с JTS. SB TL DB SB BMP Entity Beans: Расширение предыдущей модели, доступ к перманентным данным происходит через Entity Beans (Beans Managed Persistence). EB TL DB CMP Entity Beans: Аналогично предыдущему, но вызовы TopLink для картирования, запросов проходят через контейнер. EB TL DB Пять архитектур TopLink … … Server … … Server … BMP Container Server … CMP Container Server
J2EE APIs OC4J Support JSP 1.2 Servlet 2.3 EJB 2.0 JDBC 2.0 Extension JMS 1.0 JNDI 1.2 Connector 1.0 JTA 1.0 JavaMail 1.1 JAF 1.0 JAXP 1.1 Oracle9iAS: поддержка J2EE 1.3 Реализация J2EE 1.3 в Oracle9iAS v.9.0.3
Oracle9i Application Server Поддержка кластерных архитектур Масштабируемость и высокая надежность Расширения архитектуры HTTP Server/ J2EE
Отказоустойчивость: OPMN Death Detection Рестарт сбойных процессов Конфигурирование: DCM Развертывание на кластерах Репозиторий Балансировка нагрузки: mod_oc4j Маршрутизация запросов Runtime конфигурации OC4J OC4J Элементы архитектуры Oracle9iAS Firewall Load Balancer Web Cache http 9iAS Instance OHS OPMN mod_oc4j DCM AJP OC4J
Process Pool mod_OC4J (Conn Pool) Node A Load Balance Node B RDBMS Dispatcher Node C Node D Расширяемость Кластер Oracle9iAS Кластер СУБД J2EE1 (Thread 1) JDBC State J2EE2 (Thread 2) JDBC State Pool J2EE3 (Thread 3) JDBC Load Balance State Apache (9iAS) 9iAS J2EE1 (JVM 1) JDBC State Apache (9iAS) J2EE2 (JVM 1) JDBC State J2EE3 (JVM 2) JDBC State Apache (9iAS) 9iAS
Oracle9i Application Server Производительность J2EE Тесты ECPerf: Oracle9iAS №1 !!! Oracle9iAS Java Object Caching Oracle9iAS WebCache
Архитектура победного теста ECPerf J2EE Server #1 Sun Fire 3800 8x900 MHz UltraSPARC III 32 GB RAM Driver Emulation Sun Fire 3800 12x900 MHz UltraSPARC III 24 GB RAM J2EE Server #2 Sun Fire 3800 8x900 MHz UltraSPARC III 32 GB RAM Database Server Sun Fire 6800 16x900 MHz UltraSPARC III 32 GB RAM J2EE Server #3 Sun Fire 3800 8x900 MHz UltraSPARC III 32 GB RAM Sun StorEdge T3 9x36 GB Disks
Java Object Cache • Производительность: SQL-to-Java • Масштабируемость: Share J2EE Objects • Распределенность: In-Proc, Cross-Proc • Скорость - Distributed Object Creation • Настраиваемость - Group, Pool, Pin • Сериализация - File System • Синхронизация обновления
Node A Node B Node C Node D Java Object Caching Cache (Cross- Threads) J2EE1 (Thread 1) СУБД Shared Object 1 Shared Copy J2EE2 (Thread 2) Shared Object Балансировка нагрузки J2EE3 (Thread 3) Shared Object 9iAS Apache 9iAS SQL Cache (Cross- JVM, CPU) J2EE1 (JVM 1) Shared Object J2EE2 (JVM 2) Shared Object SQL-Java Mapped 9iAS 1 Shared Copy Page J2EE1 (JVM 1) Shared Object 9iAS File 9iAS
Настройка производительности • Отчеты Oracle Enterprise Manager • поиск загруженных и спящих компонентов • DMS - Dynamic monitoring services: • выявление узких местпроизводительности • JDeveveloper Code Coach: • Визуальная оценка проблем производительности, выявление проблемных участков кода, рекомендации по оптимизации кода • Performance Tuning Guide
Database Trigger Увеличение быстродействия за счет кэширования INTERNET Cluster Content Delivery Network Web Cache 1 JSP Servlet PERL Web Cache 2 9iAS IBM, BEA Distributed Web Caches (INTRANET) Failover Microsoft ASP Web Cache 3 Web Cache (Local) • Intelligent Invalidation
9i Сеть Управление связностью кэша Триггер СУБД Клиент Программно Oracle9iAS Web Cache OHS / OC4J Oracle9i Database Вручную или через пакетное задание Data Center Admin Console Два метода: • Правила инвалидации (предсказуемые изменения) • Сообщения инвалидации (непредвиденные изменения) • Программные интерфейсы Java и PL/SQL
Oracle9i Application Server Безопасность и управление Инфраструктура безопасности Enterprise Manager
Oracle Internet Directory – ядро инфраструктуры безопасности • Масштабируемость • > 500 млн записей • тысячи клиентов • Надежность • свойства Oracle9i • Безопасность • Стандарты • LDAP v3 КлиентыLDAP OracleInternetDirectoryServer LDAP через SSL Ведениекаталогов
Инфраструктура безопасности FIREWALL Oracle HTTP Server J2EE/JAAS Web Cache HTTP-S Oracle DB Oracle9iAS mod_osso PL/SQL Apps HTTP-S Stored Procs Oracle9iAS Single Sign-On Server DB Tables Single Sign-On Single Sign-On with Oracle DB Other SSO Servers LDAP (Internet Directory) Certificates Privileges Roles • Интегрированная инфраструктура, основанная на стандартах • Модель сквозной безопасности для сервера приложений и БД • Единая директория данных о пользователях и их привилегиях
Enterprise Managerдля Oracle9iAS • Часть единой системы управления продуктами Oracle Oracle Management Server HTTP Server Notifications Oracle Agent OC4J Enterprise Manager Web Site EM Console Home Page
DMS E M D FM Performance E M D Faults Resource Мониторинг с Enterprise Manager Enterprise Manager App Servers Database Servers Oracle HTTP Server J2EE EMD DMS E M D FM Oracle HTTP Server J2EE E M D E M D FM FM DB Oracle HTTP Server J2EE E M D E M D FM FM Manage Security EMRepository SSO LDAP • Единая консоль для администрирования всех компонентов • Всесторонний мониторинг – статус, сбои, производительность, потребление ресурсов DMS=Dynamic Monitoring Services FM=Fault Monitor
Конфигурирование App Server Cluster 9. Online Reconfig Enterprise Manager Oracle HTTP Server J2EE XML .Conf FM FM 5. 6. Concurrent or Rolling Change OEM Runtime 1. Reconfig Cluster Oracle HTTP Server J2EE 7. DCM 8. Config XML .Conf FM FM Deploy Apps 2. 3. 4. Oracle HTTP Server J2EE Notification Service (Cluster Wide Fault Status) XML .Conf EMRepository FM FM EM Repos - Cluster Config
Oracle9i AS Enterprise Edition Расширенная функциональность Выполнение Oracle Forms и Reports Аналитическая отчетность Интеграция приложений Web Services Порталы
Oracle9i AS Enterprise Edition Порталы
Цель построения порталов • Единый доступ к приложениям и контенту • Текущая и аналитическая отчетность • Доступ к данным для клиентов, партнеров и сотрудников PortalFramework Page Assembly Context Security BI Reports Portlets Search Developer Kit Cache Портал Сервер приложений Данные
Гибкая персонализация в портале Поиск Приложения Collaboration Календарь Новости Traffic Конф. Прогноз погоды
Авторизация через Login Server по принципу Single Sign-On и с использованием Oracle Internet Directory Пользователи Portal
Декларативная разработка Build Manage Deploy • Описания на основе мастеров (Wizards) • Компоненты включают формы, отчеты, диаграммы, и т.д. Portlet
HTTP Web Sites URL JPDK Servlet HTTP JSP Existing Applications EJB W S D L Web Service PORTAL SOAP Web Services Программная разработка • PDK-Java • PDK-URL Services • PDK-PL/SQL • Сервисы API • настройка, управление сессиями, cookie, кэширование, Single Sign-On, локализация, обработка ошибок, реакция на события, журналирование по событиям, управление передачей параметров
Разработка средствами Oracle • Reports, Forms, Discoverer, JDeveloper • Портал упрощает доступ к данным и аналитической отчетности
JSP JSP <portlet> <region> PORTAL Oracle9iAS Portal JSP Bridge Generate to JSP Oracle JDeveloper Deploy personalizable JSP’s Oracle9iAS Portal tag library Portal repository Register any JSP with Portal Embed portletsin any JSP page Set ACL Deploy directly to Oracle9iAS
Oracle9i AS Enterprise Edition Выполнение Oracle Forms и Reports
Oracle9i Application Server Выполнение приложений Oracle Forms, Reports и Discoverer • Выполнения приложений «клиент-сервер» в web-архитектуре без изменения кода Reports Server HTMLXMLPDF Discoverer Viewer Java Forms Server
Web Client Авторизация Forms9iчерез SSO Oracle 9iAS V2 4. set cookie HTTP Server 1. http request mod_osso 2. authentication request 5. sso_cookie 3. authentication info Forms Servlet Oracle LoginServer
Авторизация Forms9iчерез SSO 5. sso_cookie mod_osso Forms Servlet 6. sso_user/apps name 8. connect info 7. username/password@database Forms Listener Servlet Forms Runtime Engine Oracle Internet Directory
Reports: одно определение, два формата вывода на бумагу в интранет, интернет (HTML, PDF)