2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

文章:采用模式和泛型技术为应用增加策略控制 (静态部分)

  • 2007-04-12
  • 本文字数:846 字

    阅读完需:约 3 分钟

随着大量分布式计算和 SOA 类型应用的加入,企业内部具体应用的服务功能也趋于多元化,为了快速实现不断变化的业务需求、充分利用团队开发资源,很多架构师在高层技术设计阶段往往会在应用架构中集成一些公共库,完成诸如数据访问、日志记录、异常管理、授权控制等常规技术实现。

但是就一个具有规模化信息系统的企业环境而言,常常需要对应用实施很多全局性的技术处理,范围可能涉及整个应用层面或整个组织层面。例如:每个企业、每个行业内部总会有一些主要业务数据,这些数据又分散在企业不同的业务系统中——生产、财务、风险分析和决策支持等,但是出于安全的考虑可能要对这类数据在不同系统的处理过程进行使用安全审计,这时候处理上就有了两个方式:

  1. 逐个修改现有功能公共库,把审计功能嵌入到每个功能库之中。
  2. 纵向提供一个统一的组织级审计策略控制机制,每个公共库调用之。

采用前者可以在短时间内快速实施改造,但如果这类策略变化相对频繁,而且又增加很多不同数据控制要求(例如:对于高价商品、低诚信度客户进行报警),那么反复改造带来的开发、测试、重新部署成本相对就比较可观,究其原因就是由于每个应用内部的个例处理对象与整体处置要求对象间耦合过于紧密。因此,本文试图通过增加一个策略控制框架来用尽可能小的代价集中解决这类问题,设计目标如下:

  1. 自身结构要灵活,可以动态的适应多种策略要求。
  2. 以配置为中心,便于测试和部署人员根据需要以 Plug & Play 的方式修改和维护策略。
  3. 同时对业务调用的前期和后期提供可以回调的响应机制。
  4. 定义多种策略匹配规则,确保规则可以按需被公共库的不同实现层次组成调用(程序集、类和接口、方法)。
  5. 确保本地调用和跨进程调用的界面一致性。

本文作者王翔为全国海关信息中心高级架构师,从事海关主要广域分布式系统的设计和实施,多次参与各业务系统的优化。此外,作为信息安全工作组副组长,他还一直致力于应用密码技术和公钥基础设施保障海关业务的安全运行。 此外,他还是《程序员》杂志的专栏作者。

阅读全文:采用模式和泛型技术为应用增加策略控制 (静态部分)

2007-04-12 21:531100

评论

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

Magic UI四子围城,2022折叠屏灵魂觉醒

脑极体

1月月更|推荐学Java——第一个MyBatis程序

逆锋起笔

Java mybatis SSM框架 MyBatis标签 mybatis配置

开源走向世界(下):从数据库技术演进看开源力量丨BDTC 2021

PingCAP

如何优雅的遍历Mycat分库表

编程江湖

mycat

“5G+区块链”护航新生儿转诊“生命通道”

CECBC

为什么要把系统拆分成分布式的?为啥要用dubbo?

JavaEdge

1月月更

面试突击15:说一下HashMap底层实现?及元素添加流程?

王磊

Kafka的生产集群部署

编程江湖

kafka

架构师实战营3期毕业设计

小饭🍎

Hibernate 如何生成 JPA 的 Metamodel

HoneyMoose

大咖眼中的AI开源 | 张建:图神经网络和DGL的实际应用

亚马逊云科技 (Amazon Web Services)

网络

一个基于PoS共识算法的区块链实例解析(升级版)

恒生LIGHT云社区

区块链 共识算法 PoS

模块六作业

Geek_e6f7f6

架构训练营

用复杂的方式学会数组(Python实现动态数组)

宇宙之一粟

Python 数据结构 数组 1月月更

react源码解析19.手写迷你版react

buchila11

React

TCP socket和web socket的区别

汪子熙

前端 node,js 1月月更

AWS Command Line Interface 使用S3入门

阿呆

AWS S3

JavaScript 12种设计模式汇总

编程江湖

JavaScript

尚硅谷《MySQL高级特性篇》教程发布

@零度

MySQL

Java 常用类大讲解!3️⃣(手写 API、源码必备)

XiaoLin_Java

Java 数组 1月月更

Amazon EC2 串行控制台——化繁为简,高效解决网络问题

亚马逊云科技 (Amazon Web Services)

网络

读《底层逻辑》

wood

300天创作

使用亚马逊云科技安全服务防御、检测和响应 Log4j 漏洞

亚马逊云科技 (Amazon Web Services)

网络

如何提高后台服务应用问题的排查效率?日志 VS 远程调试

汪子熙

node.js 后台开发 1月月更

城墙上的“云镜派”,如何守护云上资产安全?

脑极体

ReactNative进阶(十四):初探 Gradle

No Silver Bullet

Gradle React Native 1月月更

元宇宙,以区块链为核心的Web3.0数字生态

CECBC

站在面试官角度,看求职与内卷

程序人生

IntelliJ IDEA 的 Metamodel 配置

HoneyMoose

react源码解析20.总结&第一章的面试题解答

buchila11

React

大咖眼中的AI开源|王敏捷:深图在人工智能中的探索和研究

亚马逊云科技 (Amazon Web Services)

网络

文章:采用模式和泛型技术为应用增加策略控制(静态部分)_.NET_霍太稳@极客邦科技_InfoQ精选文章