写点什么

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

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

    阅读完需:约 3 分钟

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

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

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

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

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

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

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

2007-04-12 21:531087

评论

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

保护客户代码和应用安全,CodeArts有7招

华为云开发者联盟

云计算 后端 华为云 12 月 PK 榜 华为CodeArts

转转用户画像平台实践

转转技术团队

大数据 用户画像 用户画像分析

IoT 设备定位服务——设备管理类

阿里云AIoT

物联网 API 定位技术

当云原生成为一种显学,对象存储和数据湖如何顺势而为

云布道师

对象存储 云存储

2022 年度“用 TDengine,写 TDengine”征文!

爱倒腾的程序员

数据库 tdengine 时序数据库

预训练时代的自然语言处理 魔搭社区NLP模型全解析

阿里技术

自然语言处理 NLP 大模型

React源码分析(一)Fiber

flyzz177

React

写个JS深拷贝,面试备用

helloworld1024fd

JavaScript

高级前端一面经典手写面试题汇总

helloworld1024fd

JavaScript

多线程永动任务设计与实现

小小怪下士

Java 多线程

轻量级的架构决策记录机制

京东科技开发者

团队管理 架构 软件架构 架构设计 架构决策

Python中图像平滑方法的两种非线性滤波:中值滤波、双边滤波

华为云开发者联盟

Python 人工智能 华为云 12 月 PK 榜

“零容忍”监管,金融机构如何应对数据泄露风险?

极盾科技

数据安全

每日一题之Vue的异步更新实现原理是怎样的?

bb_xiaxia1998

Vue

前端vue面试题汇总

bb_xiaxia1998

Vue

假如面试官要你手写一个promise

helloworld1024fd

JavaScript

看透react源码之感受react的进化

flyzz177

React

前端leetcde算法面试套路之二叉树

js2030code

高级前端一面必会react面试题(持续更新中)

beifeng1996

React

从源码角度看React-Hydrate原理

flyzz177

React

前端高频手写面试题集锦

helloworld1024fd

JavaScript

超大规模大数据集群管理平台的架构优化及实践

移动云大数据

基于云原生的集群自愈系统 Flink Cluster Inspector

阿里云大数据AI技术

机器学习 flink 运维 云原生 12 月 PK 榜

React-Hooks源码深度解读

flyzz177

React

从recat源码角度看setState流程

flyzz177

React

从react源码看hooks的原理

flyzz177

React

鸿蒙开发实例 | 鸿蒙原子化服务卡片开发完美体验

TiAmo

华为 鸿蒙 12月月更

前端leetcde算法面试套路之双指针

js2030code

JavaScript LeetCode

Go语言性能剖析利器--pprof实战

京东科技开发者

Go pprof 优化技巧 Go 语言 #go

前端常见内存泄漏及解决方法

达摩

Web 内存泄露

每日一题之Vue数据劫持原理是什么?

bb_xiaxia1998

Vue

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