280 likes | 760 Views
Oracle WebLogic Server 和 Oracle Database RAC 在融合中间件上的性能. Frances Zhao-Perez Oracle 云应用程序基础产品管理. 议题. Oracle Database RAC 和 WebLogic Active GridLink 快速连接故障切换 运行时连接负载平衡 XA 和会话关联 WebLogic 和 Oracle Database 12c 集成 问答. 免责声明.
E N D
Oracle WebLogic Server 和 Oracle Database RAC 在融合中间件上的性能 Frances Zhao-PerezOracle 云应用程序基础产品管理
议题 • Oracle Database RAC 和 WebLogic Active GridLink • 快速连接故障切换 • 运行时连接负载平衡 • XA 和会话关联 • WebLogic 和 Oracle Database 12c 集成 • 问答
免责声明 以下内容旨在概述产品的总体发展方向。该内容仅供参考,不可纳入任何合同。其内容不构成提供任何材料、代码或功能的承诺,并且不应该作为制定购买决策的依据。此处所述有关 Oracle 产品的任何特性或功能的开发、发布以及相应的日程安排均由 Oracle 自行决定。
Oracle RAC无缝可伸缩性 • 从小型机开始,逐渐扩展 • 可伸缩且高度可用 • 根据需要增加容量且不停机
Oracle RAC灵活性、高可用性 • 完全可用性……不受限制的伸缩性 • 服务器硬件可在应用程序之间共享 Web Web ERP ERP CRM HR DW ERP 数据 Web 数据 DW 数据 CRM 数据
WebLogic 与 Oracle RAC 相集成使用 Active GridLink for RAC 后,性能提高多达 3 倍 WebLogic WebLogic WebLogic WebLogic WebLogic WebLogic GridLink GridLink GridLink GridLink GridLink GridLink XA 80% 20% 无论 RAC 怎样发生变化也能保持连接 RAC 节点的事务关联性 感知 RAC 节点负载的连接请求 • 将 WebLogic 与数据库 RAC 集群相集成 • 动态负载平衡 RAC 节点请求 • RAC 节点事务关联为本地处理 • 无论 RAC 怎样发生变化也能保持连接
Active GridLink for RAC 配置比多数据源更简单 SCAN 支持 使用基于事件的模型(ONS 和 FAN)实现自适应池管理 快速连接故障切换 运行时连接负载平衡 通过关联实现连接路由(XA、会话、数据) WebLogic 连接标记、获取 (10.3.6+) Data Guard 支持 RAC One Node 支持 (Database 11gR2+)
用于融合中间件的 Active GridLink for RAC经认证可用于融合中间件 从 11.1.1.6 开始,所有配置向导中均提供可选的Active GridLink安装
增强可用性和灾难恢复 WebLogic Server WebLogic Server 3 倍的 OLTP 3 倍的 OLTP Active Data Guard 和 Golden Gate Active GridLinkfor RAC Active GridLinkfor RAC 集成的WebLogic/RAC 集群 • RAC 感知池与 RAC 节点关联 • (会话/事务)、RAC One Node 支持与快速连接故障切换 多个数据中心架构 • 与 Active Data Guard(事务日志)集成
客户案例研究 开办了在线商店的英国大型零售商 在旧式 Oracle WebLogic Server 上运行的电子商务应用程序 解决方案 挑战/问题 情形 • Active GridLink 提供托管实例关闭功能,以实现多种目的,如滚动升级 • 带 RCLB 功能的 Active GridLink 可用于在多种情况下(尤其是在高峰时段)迅速降低风险 • RAC 集群的多数据源,提供 test-on-reserve 和数千个并发数据库会话 • 如果 RAC 节点在重新启动时出现故障,则要等到第二天晚上(当服务器/连接池重新启动时)才能恢复正常使用状态 • 全天候超繁忙网站 • 应用程序层需要较长的重新启动时间才能重新加载产品缓存
RAC 数据库 故障切换处理器 线程 开始 ONS 订阅 处理事件 ONS 发布 Active GridLink for RAC 快速连接故障切换 • 数据库故障快速检测 • 中止和删除池中的无效连接 • 为意外中断和计划中断提供支持 • 识别加入 Oracle RAC 集群的新节点 实例 1 实例 2 WebLogic RAC 感知连接池 实例 3
RAC 数据库 我忙 实例 1 我很忙 实例 2 我空闲 实例 3 Active GridLink for RAC运行时连接负载平衡 • 管理池连接以确保高性能和可伸缩性 • 接收持续提供的针对工作百分比的建议 • 根据后端节点容量调整工作分配情况 • 针对集群重新配置中的更改快速进行反应 30% 连接 WebLogic Server 连接池 10% 连接 应用程序 60% 连接
RAC 数据库 实例 1 实例 2 实例 3 连接 关联上下文 Active GridLink for RACXA 事务关联 • 使 XA 和 RAC 能够协同工作,并提高灵活性 • 事务关联是指自动将全局事务本地化为单个 RAC 实例的功能 • 事务关联范围是指全局事务的生命周期 TX 客户端 2 TX 客户端 1 WebLogic 连接池
Active GridLink for RACWeb 会话关联 • 第一个连接请求使用 RCLB 来选择连接 • 后续请求强制实施关联 • 连接选择在关联结束后退回到 RCLB 集群等待时间 - 随机负载 启用关联 禁用关联 25 个线程 - 20 毫秒的思考时间 - 100 个总连接数 250 200 150 100 集群移动平均时间(毫秒) 50 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 30 秒的间隔
通过内置的 Oracle Database 12c 集成和动态集群提供云的灵活性 • 通过通用的安装、更新和管理工具简化管理 • 提供对 Maven、HTML5、WebSocket 等的支持,从而提高开发人员的生产效率 WebLogic Server 12.1.2 跨常规环境与云环境的世界第一的应用服务器
WebLogic Server 12.1.2 和 Database 12c 持续的可用性、大规模应用的性能、多承租方 WebLogic域 1 WebLogic域 2 WebLogic域 n 数以百计的 … • 装有 Database 12c 的 WebLogic Server • WebLogic 10.3.6, 12.1.1 - 认证 • WebLogic 12.1.2 - 新特性集成 • 持续的可用性功能 • 事务防护和应用程序连续性 • 多承租方数据库支持 • 可拔插数据库,可在数据库容器中运行 • 新的可伸缩性集成 - 在云环境中的中间层性能 • 数据库驻留连接池 • 多站点可用性 • 全局数据服务 重放读/写基于事务防护信息 多承租方数据库 DBMS 驻留连接池 PDB 1 PDB 2 PDB 3 PDB 4
利用在 12c 数据库中受支持的特性 常规数据源和GridLink数据源 在数据源层捕获的数据库异常 示例:RAC节点故障、数据库瞬时问题 自动重放请求 对应用程序透明 支持读写请求 不支持 XA 事务 好处:改进最终用户体验 应用程序连续性 - JDBC 重放增强弹性以改进用户体验 WebLogic 集群 计算机 1 计算机 2 GridLink 数据源 受管服务器 1 受管服务器 2 2. 创建与幸存节点的连接;如果安全则重放 1. FAN 故障事件: “节点 3 故障” RAC 集群 监听器 监听器 监听器 计算机 1 计算机 2 计算机 3 故障 ONS ONS ONS RAC 节点 1 RAC 节点 2 RAC 节点 3
应用程序连续性 在 WebLogic 中的工作原理 • Active Gridlink数据源和常规数据源(仅 12c 驱动程序) • 利用 JDBC 重放(在 12c 数据库中重新实现) • 通过oracle.jdbc.replay.OracleDataSourceImpl驱动程序类进行启用 • 发生故障时自动创建新连接 • 对应用程序透明! • 当应用程序连接上时,重放已完成 限制:不能用于 XA、PLSQL、代理身份验证、DRCP
事务防护第一个可保留 COMMIT 结果的数据库 WebLogic Server 数据源 • 了解每个事务的结果 • 支持一次性事务执行 • 可用于WebLogic、JDBC(瘦)、OCI、OCCI、ODP.net • 可供应用程序连续性使用 • 没有事务防护,重试可能导致逻辑损坏 1. 请求 5. 有保证的结果 Oracle JDBC THIN 驱动程序 4. 实施结果 2. 调用 3. 错误 12c ORACLE 数据库
数据库驻留连接池 对数据库连接进行虚拟化以改进系统伸缩性 • 数据库驻留连接池 • 数据库连接/会话在数据库中汇集成池 • 允许对数据库资源、数据库和应用程序可伸缩性进行更好的共享 • WebLogic 与 DRCP 相集成 • Active Gridlink 数据源和常规数据源 • 数据源汇集了连接占位符并可在内部附加/去除连接 WebLogic WebLogic WebLogic WebLogic DRCP 12c 数据库
数据库驻留连接池 在 WebLogic Server 中的工作原理
WebLogic 与可拔插数据库相集成 增强密度和可伸缩性,多承租方 WebLogic 集群 数据源 受管服务器 1 受管服务器 2 应用程序 1 应用程序 1 获取连接 承租方2 获取连接 承租方1 应用程序 2 应用程序 2 • 可拔插数据库 • 在单个容器数据库中托管的多个“虚拟”数据库之一 • 提供承租方隔离功能,同时充分利用单个统一的容器数据库的优势 • 提高效率(CPU、磁盘) • 统一安全管理 • 简化升级 • WebLogic Server 与可拔插数据库相集成 • 无缝集成 • 使用 Set Container 自动连接到PDB(承租方),从而提供多承租方支持 • 要求 Oracle 12c 数据库 设置容器 PDB2 设置容器 PDB1 … PDB2 承租方 2 PDB1 承租方 1 容器数据库
WebLogic 与全局数据服务相集成 提高 WebLogic 和数据库云的性能、可伸缩性和可用性 WebLogic 集群 GridLink 数据源 计算机 1 计算机 2 受管服务器 1 受管服务器 2 • Oracle Database 12c 中的全局数据服务 • 跨分布式数据库云对数据库服务进行集中管理 • 根据负载和可用性对服务进行动态迁移 • 通过添加 RAC 集群进行扩展 • 在可用数据库上重新启动发生故障的服务 • WebLogic Server 与数据库“云”相集成 • GridLink 数据源支持 GDS • GridLink 数据源配置可指定一个用于在本地访问全局服务的主区域,以及每个区域的地址。 • 基于 FAN 事件重新连接到迁移的服务 – 针对数据库云的类似于 RAC 的故障切换 FAN 事件 高负载情况下的服务 2 服务 1 服务 2 服务 1 服务 2 GDS DataGuard,GoldenGate RAC 集群 RAC 集群 RAC 集群 RAC 集群 地区:马德里 地区:巴塞罗那
Oracle WebLogic Server 和 Oracle Database RAC 在融合中间件上的性能 Frances Zhao-PerezOracle 云应用程序基础产品管理