AICon 上海站|日程100%上线,解锁Al未来! 了解详情
写点什么

文章:使用 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:061000
用户头像

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

关注

评论

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

一小时快速拆解 Milvus 2.2.9

Zilliz

非结构化数据 Milvus Zilliz 向量数据库 zillizcloud

ICASSP 2023 | 深度窄带网络消除实时语音通信中的干扰音

阿里技术

实时语音 音频处理

VMware虚拟机和主机传输文件

Geek_7ubdnf

博睿数据应邀出席第五届双态IT北京用户大会,分享《如何帮助用户构建高级可观测性》

博睿数据

可观测性 AIOPS 智能运维 博睿数据 IT行业

基于阿里云 Serverless 容器服务轻松部署企业级 AI 应用

阿里巴巴云原生

阿里云 Serverless Kubernetes 云原生 ASK

三维人脸建模和驱动技术,让数字人快速“活”起来

华为云开发者联盟

人工智能 华为云 数字人 华为云开发者联盟 企业号 6 月 PK 榜

WiFi7来了,WiFi6会下岗吗?

脑极体

wifi

平凯星辰重磅支持 2023 开放原子全球开源峰会,开源数据库分论坛成功召开

编程猫

5款超级好用的开发效率工具,建议收藏!

引迈信息

程序员 前端 低代码 开发效率

《OpenHarmony 共建地图 2.0》在2023开放原子全球开源峰会发布

新消费日报

SpringBoot进阶学习?看这篇就够了!

程序员小毕

程序员 程序人生 架构师 springboot java面试

证券行业异构系统众多,微服务和网格如何全都要

网易数帆

微服务 云原生 服务网格 证券行业

不断进化!奇点云助豫园股份构建集团统一战略的数据平台

奇点云

数字化转型 奇点云 豫园股份

为数据弹性而生,阿里云云原生存储再提速

阿里巴巴云原生

阿里云 Serverless 云原生 Fluid EFC

直播预告 | 博睿学院:AIOps利器-混沌工程实践

博睿数据

可观测性 AIOPS 智能运维 博睿数据 博睿学院

Kubernetes关键组件解析

穿过生命散发芬芳

k8s 6 月 优质更文活动

WiFi7来了,WiFi6会下岗吗?

白洞计划

wifi

TiDB 7.1 LTS 发版:为关键业务提供业务稳定性和多租户场景支持

PingCAP

数据库 开源 TiDB

Django笔记四十二之model使用validator验证器

Hunter熊

Python django model validator

C语言编程—内存管理

芯动大师

C语言 内存管理 6 月 优质更文活动

提升网站速度,选择香港主机的三大理由!

一只扑棱蛾子

香港主机

ChatGPT与Web的完美结合:创造一加一大于二的化学反应

加入高科技仿生人

Web 低代码 ChatGPT

YRCloudFile 分布式存储加速基因测序 解锁生命密码

焱融科技

不一样的ECS U实例

六月的雨在InfoQ

MySQL nginx 阿里云ECS U 6 月 优质更文活动

更好的保护你的数据KEY

坚果

6 月 优质更文活动

软件测试/测试开发丨Python 常用数据结构-元组

测试人

Python 程序员 软件测试 自动化测试 测试开发

ThreadLocal变量存储为什么不用Map

M

原创 ThreadLocal Java'

魏可伟受邀参加 2023 开放原子全球开源峰会

KaiwuDB

KaiwuDB 2023开放原子全球开源峰会

AIGC繁花,绽放在精耕的算力土壤之上

脑极体

AI 服务器

软件测试/测试开发丨Python 常用数据结构-列表

测试人

Python 程序员 软件测试 自动化测试

Ubuntu安装Python

Geek_7ubdnf

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