阿里、蚂蚁、晟腾、中科加禾精彩分享 AI 基础设施洞见,现购票可享受 9 折优惠 |AICon 了解详情
写点什么

Enterprise Library 4.0 CTP 发布

  • 2008-04-07
  • 本文字数:882 字

    阅读完需:约 3 分钟

前几天,EntLib 团队更新了他们在 CodePlex 的项目发布页面,并对外提供 EntLib 4 CTP 源码、安装脚本的下载。一直以来,EntLib 以其严谨的结构、系统化的面向对象设计和对“纯.NET”方案的支持在很多互联网应用以及企业内部应用中被开发团队用来借鉴和学习,但由于其规模庞大,因此也形成了比较陡峭的学习曲线。

此次发布的 CTP 版本包括如下内容:

  • ObjectBuilder / ObjectBuilder 2 (二进制形式)
  • Unity / Unity.StaticFactory (二进制形式)
  • 缓存——Cache
  • 异常处理——ExceptionHandling
  • 数据访问——Data
  • 日志——Logging
  • 策略注入——PolicyInjection
  • 安全——Security(包括授权和安全存储机制)
  • 加密——Security.Cryptography
  • 验证——Validation

另外最值得一提的是对 WMI 2 的支持,在新的 EntLib 4 中,所有的应用代码块的主要工作类型都有自己独立的 WMI 类型对象,运行监控机制可以用类似 SQL 语句的方式直接检索运行组件的性能计数或配置属性情况,例如下面就是用 WQL(WMI Query Language)访问一个测试配置节的示例:

using ( ManagementObjectCollection.ManagementObjectEnumerator resultEnumerator
= new ManagementObjectSearcher (
“root\\enterpriselibrary”, " SELECT * FROM MockConfigurationSectionSetting " )
.Get().GetEnumerator())
{
Assert.IsTrue(resultEnumerator.MoveNext());
Assert.AreEqual(“Foo”, resultEnumerator.Current.Properties[“ApplicationName”].Value);
Assert.AreEqual(“Bar”, resultEnumerator.Current.Properties[“SectionName”].Value);
Assert.IsFalse(resultEnumerator.MoveNext());
}

区别于其他很多提供类似功能的.NET 开源框架,EntLib 的实现一直比较庞大,因此对于项目初期开发团队而言会感到学习曲线过于陡峭,但在项目投入生产环境之后,随着物理层 IT 环境的不断变化以及为了满足用户可用性指标提供的运行监控机制都会令后来的框架越来越向 EntLib 的方向发展,但由于很多企业应用运行机制都是后来“补”齐的,因此会对应用底层框架带来比较大的冲击或令设计比较繁琐。对于类似情况的应用反而不如项目初期就选择具有整体性设计的 EntLib。

2008-04-07 20:25723
用户头像

发布了 61 篇内容, 共 96035 次阅读, 收获喜欢 0 次。

关注

评论

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

微博评论高性能高可用架构设计

tjudream

高可用架构 微博评论 高性能计算架构 多级负载均衡 多级缓存

埋土灰

箭上有毒

8月日更

手撸二叉树之二叉树的层平均值

HelloWorld杰少

数据结构与算法 8月日更

数字化为企业带来哪些价值?

boshi

数字化转型

【Flutter 专题】62 图解基本 Button 按钮小结 (二)

阿策小和尚

Flutter 小菜 0 基础学习 Flutter Android 小菜鸟 8月日更

方法调用:一看就懂,一问就懵?

阿Q说代码

8月日更 虚方法 非虚方法 静态分派 动态分派

架构训练营模块二作业

高铎

架构实战营

手把手教你写 Gradle 插件 | 数据采集

神策技术社区

android 程序员 Gradle 神策数据

vue入门:element组件与动画使用

小鲍侃java

8月日更

Python代码阅读(第14篇):列表求并集

Felix

Python 编程 Code Programing 阅读代码

DCS_FunTester分布式压测框架更新(三)

FunTester

分布式 性能测试 测试框架 测试开发 FunTester

Python对系统数据进行采集监控——psutil

Python研究者

8月日更

NDK 编译代码(一)

Changing Lin

8月日更

ShardingSphere 知识库更新 | 官方样例集助你快速上手

SphereEx

数据库 开源

神策分析 iOS SDK 全埋点解析之启动与退出

神策技术社区

程序员 大前端 后端 代码 神策数据

SpringBoot 自动装配源码解析

Rubble

8月日更

【LeetCode】反转字符串 IIJava题解

Albert

算法 LeetCode 8月日更

再谈安全架构《一》

I

读书笔记 方法论 安全架构 企业安全 安全建设

面试侃集合 | LinkedBlockingQueue篇

码农参上

队列 Queue 8月日更

LeetCode题解:2. 两数相加,迭代,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

图解:为什么非公平锁的性能更高?

王磊

Java 8月日更

BPM敏捷Activiti开发平台,工作流引擎springboot整合activiti

金陵老街

Java MySQL Vue springboot Activiti

字节跳动《实时音视频通讯技术》学习笔记之服务器端开发入门

Regan Yue

git 字节跳动 Go 语言 8月日更

python接口测试unittest使用详解

与风逐梦

Python 软件测试 接口测试

解决参数依赖,接口之间传递数据——apipost

Proud lion

大前端 后端 Postman 开发工具 接口文档

Springboot+quartz源码探索

4ye

Java 后端 springboot quartz 8月日更

是时候封装限制 UITextField、UITextView 的最大字符长度了

fuyoufang

swift iOS 知识体系 8月日更

架构训练营模块三作业

高铎

想知道你未来宝宝长什么样吗?

华为云开发者联盟

modelarts 图像 图像生成 父母照片 照片

架构训练营模块四作业

高铎

架构实战营

【Vue2.x 源码学习】第四十一篇 - 组件部分 - 生成组件的真实节点

Brave

源码 vue2 8月日更

Enterprise Library 4.0 CTP发布_.NET_王翔_InfoQ精选文章