写点什么

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

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

    阅读完需:约 3 分钟

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

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

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

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

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

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

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

2007-04-12 21:531134

评论

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

收藏吃灰系列!阿里内部“SpringCloudAlibaba学习笔记”这细节讲解,神了

Java 程序员 架构 面试 微服务

HarmonyOS学习路之开发篇——公共事件与通知(二)

爱吃土豆丝的打工人

HarmonyOS 通知事件

业务架构模块7 作业 王者荣耀商城异地多活

好吃不贵

业务架构

AI技术在银行内部反欺诈中应用的新思路

索信达控股

人工智能 大数据 金融科技 风控 反欺诈 人工智能模型

33岁公司倒闭,被迫走上大龄Java程序员求职之路

Java架构师迁哥

低代码“三合一”模式,解决产品研发系统沟通问题!

优秀

低代码

阿里JDK源码小册(2021版)火了!下载量超60W次!

Java架构师迁哥

“创客北京2021”百度飞桨AI产业创新应用专项赛报名啦

百度大脑

人工智能 大数据

【GOTC 预告】王思宇:从 OpenKruise 看云原生应用负载发展趋势

阿里巴巴云原生

2021值得考虑的一类新型微服务架构:ServiceMesh

BoCloud博云

微服务

程序员35岁以后就真的要返乡种田了么?如果没田种怎么办?|话题

花花

话题讨论 话题 话题王者 话题广场

Qunar DNS体系建设

Qunar技术沙龙

DNS DNS服务器

为什么有些人不喜欢低代码?

优秀

低代码

抑制不住的喜悦!耗时2个月整理的Java面试指南在Github上破百万star!

Java架构师迁哥

SpringBoot 拦截器妙用,让你一个人开发整个系统的鉴权模块!

陈皮的JavaLib

Java 面试 springboot

浅谈大数据建模的主要技术:维度建模

云祁

大数据 数据仓库 维度建模 7月日更

剑指“双碳”目标,浪潮云牵手中科谱光一起做「光谱捕手」

云计算

5分钟速读之Rust权威指南(三十四)面向对象

wzx

rust

为什么 FaaS 系统的复杂性不会随着规模的增长而指数增长?

朱峰 Ben

Serverless Faas

同程旅行基于 RocketMQ 高可用架构实践

阿里巴巴云原生

百度VidPress Sports团队获SoccerNet-v2足球视频理解竞赛双料冠军

百度大脑

人工智能 欧洲杯 足球

党建百年,矛盾论指导架构设计

三石

架构设计

Hadoop 数据仓库建设实践(理论结合实践)

云祁

hadoop 数据仓库 7月日更

时间管理:通过折叠时间放大时间价值

石云升

读书笔记 时间管理 7月日更

又曝出程序员删库跑路,业界何时能推出互联网企业和程序员之间的约束准则?|话题

三掌柜

话题讨论 话题 话题王者 话题广场

🏆 【JVM性能调优】「对象内存分配」虚拟机参数调优分析

码界西柚

GC jvm调优 内存分配 7月日更

念念不忘,必有回响!6月更文活动的一些总结

编程三昧

程序员 程序人生 代码人生

超24W字,2021最新一线大厂Java高级架构师面试题总结,共计480页

Java架构师迁哥

碳达峰碳中和目标下,区块链如何赋能能源管理?

旺链科技

Flink运行架构

五分钟学大数据

flink 7月日更

CodeDay#7 启动 | 北京欢迎你

蚂蚁集团移动开发平台 mPaaS

小程序 webview 移动开发 mPaaS

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