写点什么

文章:使用 AOP 实现应用程序失败转移

  • 2007-11-16
  • 本文字数:546 字

    阅读完需:约 2 分钟

面向方面编程思想(AOP)一度是公开论战的中心。Gavin King 称之为完全言过其实、失败的技术,Cedric Beust 也对其成为编程主流思想表示极大的怀疑,但他仍然标榜 AOP 是非常好的思想,只是仅有一小部分开发专家才能真正掌握。

文章作者以一个大金融机构在最后一刻修改了一些横切关注点(cross cutting concern)需求为例,展示 AOP 技术给现实中的 JavaEE 项目所带来诸多好处。文中描述的场景和最终实现的解决方案很好地展现了 AOP 如何弥补 OOP 在商务应用模块化方面的不足。

文章作者一直采用 JavaEE 技术在为一个大型金融机构开发证券交易后台解决方案,使用 Oracle 10g RAC 做为数据库集群(database cluster)、Websphere MQ 为消息传送中间件。这个项目进入用户确认测试阶段(UAT phase)时,管理层要求在原有的集群构架上实现透明的应用程序失败转移(failover)服务。

传统解决方案是捕获每一个 SQLException 异常并加入特定的处理器去处理。但这个方案不得不被摒弃,因为在已经进入到用户验证测试阶段的情况下,这种方法会对代码库造成巨大恶劣的影响,而客户也截然不会乐意看到这些。经过对代码库进行慎重的分析之后,作者采用了 AOP 技术来解决这个问题,最终取得了非常好的效果,达到了将目前代码库所受影响最小化的目标。

阅读全文:使用 AOP 实现应用程序失败转移

2007-11-16 00:06899
用户头像

发布了 150 篇内容, 共 46.9 次阅读, 收获喜欢 10 次。

关注

评论

发布
暂无评论
发现更多内容

学会使用LiveData和ViewModel,我相信会让你在写业务时变得轻松🌞

编程的平行世界

JetPack Andriod

进入前六!博云在中国云管理软件市场销量排行持续上升

BoCloud博云

云原生 cmp 云管理

龙蜥社区开源 coolbpf,BPF 程序开发效率提升百倍

OpenAnolis小助手

Linux 开源 内核 龙蜥技术 BPF

大数据培训 | Scala语言知识分享,直击面试

@零度

scala 大数据开发

《你的灯亮着吗》开始解决问题前,得先知道“真问题”是什么

图灵教育

Go Web 编程入门:一探 GoConvey 测试库

宇宙之一粟

Go web Go 语言 7月月更

2022上半年英特尔有哪些“硬核创新”?看这张图就知道了!

科技之家

SpringBoot工程创建Swagger文档并自动生成调用代码

百家饭隐私计算平台创业者

JavaScript Spring Boot swagger

超90万个K8S实例可被发现暴露在公网上,14%位于中国

SEAL安全

安全

8款最佳实践,保护你的 IaC 安全!

SEAL安全

安全 IaC

JVM有哪些类加载机制?

源字节1号

软件开发

Linux设备驱动1:硬件基础

贾献华

7月月更

开源者的自我修养|为 ShardingSphere 贡献了千万行代码的程序员,后来当了 CEO

SphereEx

开源 代码 ShardingSphere

【Python技能树共建】requests-html库初识

梦想橡皮擦

7月月更

DBPack 赋能 python 微服务协调分布式事务

峨嵋闲散人

分布式事务 分库分表 读写分离 seata dbmesh

Fiori 应用通过 Adaptation Project 的增强方式分享

汪子熙

前端开发 SAP Fiori SAP UI5 7月月更

当你真的学会DataBinding后,你会发现“这玩意真香”!

编程的平行世界

JetPack andiod

从MLPerf谈起:如何引领AI加速器的下一波浪潮

OneFlow

人工智能 深度学习 加速器

2022 · 让我带你Jetpack架构组件从入门到精通 — Lifecycle

编程的平行世界

an'droid android jetpack

6年技术迭代,阿里全球化出海&合规的挑战和探索

阿里技术

阿里巴巴 最佳实践 方法论 全球化

焱融看 | 混合云时代下,如何制定多云策略

焱融科技

存储 文件存储 混合云 多云

hive数据导入:文件导入

怀瑾握瑜的嘉与嘉

大数据 hive 7月月更

使用强大的DBPack处理分布式事务(PHP使用教程)

峨嵋闲散人

分布式事务 分库分表 读写分离 seata dbmesh

软件产品管理平台有哪些?12个最佳产品管理工具盘点

爱吃小舅的鱼

产品经理 产品管理 PingCode

介绍一种对 SAP GUI 里的收藏夹事务码管理工具增强的实现方案

汪子熙

SAP abap SAPGUI 企业管理软件 7月月更

一文读懂TDengine的窗口查询功能

TDengine

tdengine 时序数据库

SpringSecurity的初始化流程

急需上岸的小谢

7月月更

【LeetCode】找树左下角的值Java题解

Albert

LeetCode 7月月更

Java培训 | 详解 Linux 中的权限,这一篇就够了

@零度

Linux JAVA开发

web前端培训Docker入门指南

@零度

Docker 前端开发

研发效能度量框架解读

思码逸研发效能

研发效能 效能度量

文章:使用AOP实现应用程序失败转移_Java_宋玮_InfoQ精选文章