写点什么

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

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

    阅读完需:约 3 分钟

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

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

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

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

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

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

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

2007-04-12 21:53860

评论

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

深入解析 Spring AI 系列:分析 Spring AI 可观测性

不在线第一只蜗牛

Java spring

ROS2与OpenAI Gym集成指南:从安装到自定义环境与强化学习训练

芯动大师

强化学习

Nexpose 7.3.0 for Linux & Windows - 漏洞扫描

sysin

Nexpose

Cisco ISR 1000 Series IOS XE Release 17.16.1a ED

sysin

Cisco

人形机器人的 ChatGPT 时刻即将到来,如何转入?

机器人头条

大模型 人形机器人 具身智能

JeecgBoot 低代码 AI 大模型集成 DeepSeek

JEECG低代码

低代码 零代码 ChatGPT JeecgBoot DeepSeek

读书笔记-《蛤蟆先生去看心理医生》

Flyman

读书笔记 心理学 蛤蟆先生去看心理医生

Cisco ISR 4000 Series IOS XE Release 17.16.1a ED

sysin

2025-01-18:施咒的最大总伤害。用go语言,一个魔法师掌握了多种不同的咒语,每个咒语对应一个伤害值,这些伤害值存储在数组 power 中,其中可能会有多个咒语具有相同的伤害值。 使用某个特定伤

福大大架构师每日一题

福大大架构师每日一题

C#中如何使用异步编程

不在线第一只蜗牛

C#

C#进阶-在Ubuntu上部署ASP.NET Core Web API应用

Damon小智

.net core

【连载 12】线程安全的集合类

FunTester

HarmonyOS Next 端云一体化(2)

万少

HarmonyOS NEXT 端云一体化

行业分享|AI+仿真,重塑前端设计研发价值(二)

Altair RapidMiner

AI 数据分析 智能制造 CAE 设计仿真一体化

Microland被评为智能自动化服务领导者

财见

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