[Architecture Pattern] Service Locator
摘要:动机Service Locator是一个在开发系统时,很常用的一个模式。在Martin Fowler写的Inversion of Control Containers and the Dependency Injection pattern里,可以发现这个Pattern的身影。Service Locator最主要是定义BLL层内对象生成、对象存放、对象取得的职责,让系统在取得对象时不需要知道对象是如何生成及存放,有效降低系统的耦合性。同时学习Service Locator,也为架构设计带入了空间的概念。在设计架构的时候,可以套用Service Locator来做为架构空间的封装。将经对象生成建
阅读全文
Portal-Basic Web 应用开发框架
摘要:Portal-Basic Web 应用开发框架(使用手册完整版 PDF 下载)Portal-Basic Web应用开发框架(简称Portal-Basic或PB)是一套功能完备的超轻量级Web应用开发框架,内置MVC Web基础架构,支持可扩展的数据访问接口(已内置Hibernate、MyBatis和JDBC支持),集成Action拦截、Form Bean装配、国际化、文件上传下载和缓存等基础Web应用组件,提供纯Jsp/Servlet API的使用接口,非常容易学习和使用。相关链接:Portal-Basic Web 应用开发框架 —— 概述Portal-Basic Web 应用开发框架:应用篇
阅读全文
[Architecture Pattern] Repository
摘要:动机Repository Pattern是一个在开发系统时,很常用的一个模式。在一些大师的著作:不管是在Martin Fowler所写的PoEAA或者是Eric Eban著作的DDD里,都有出现这个Pattern的身影。Repository Pattern最主要是定义如何切割BLL层跟DAL层之间的相依性,让BLL层不用依赖于DAL层的实做。并且在有需要更换DAL目标的时候,可以有抽换DAL层的能力。同时学习Repository Pattern,也为架构设计带入了边界的概念。在设计架构的时候,可以套用Repository Pattern来做为架构边界的封装。将外部的系统、模块、数据库…等等,隔
阅读全文
代码细节重构:请对我的代码指手划脚
摘要:“请对我的代码指手划脚”是我们群内搞的一个不定期的常规性活动,以代码审阅和细节重构为主线,大家可以自由发表自己的意见和建议,也算得上是一种思维风暴。感觉到这个活动很有意义,有必要总结并记录下来。今天我发起了4短代码,都有一定的代表性。今天我就其中的一个代码片段的重构做一个简单的总结和分享。首先我们看看目标代码: 1 public static string TestA(List<string> items) 2 { 3 var builder = new StringBuilder(); 4 5 foreach (var item in items) 6 { 7 ...
阅读全文
eaby技术架构变迁
摘要:最近在infoq上面看到 ebay介绍其系统架构变迁以及系统设计分享方面的讲座,其中陈述了ebay从1995年到2006年之间系统架构的变化过程。从这里,我们可以学习到许多宝贵的经验来设计一个大容量,高并发,分布式的系统。ebay的系统架构的变迁主要经历了4个阶段,下面一幅图展现了ebay系统架构变迁的时间表在ebay的V1版本,ebay采用的是FREEBSD + APACHE + PERL +DGBM,这是一个比较原始的模型,而且相对比较简单,操作系统,应用服务器,web服务器 以及 数据库服务器都是在同一台机器中,网络结构在物理上只有一层。整个网站有四个域名,每个域名对应不同的应用,每组应
阅读全文
[开源]KJFramework.Message 智能二进制消息框架 -- 对于数组的极致性优化
摘要:框架的介绍:1. 已经完成了对于消息内部类型的支持(int, short, long, uint, ushort, ulong, bool ,float, double, byte, sbyte, byte[], decimal, DateTime, IntPtr, Guid)2. 支持内部序列化元数据(.NET可序列化的对象)3. 对于智能对象内部的“智能对象”提供支持。 支持迭代元数据转换。[说明:]KJFramework框架中内置了一套,可以将网络传输实体自动转换为二进制元数据的能力框架。使用此框架,将使得用户不在关心底层传输时对于二进制编码/解码的繁琐过程,解放程序员的脑力劳动。目前此
阅读全文
ESFramework 使用技巧 -- 部署P2P服务器
摘要:可靠的P2P通信功能是ESFramework/ESPlus提供的一个基础而又强大的功能,ESFramework 开发手册(04) -- 可靠的P2P详细描述了在客户端如何使用框架提供的这一武器。本文我们则将介绍的重点放到P2P服务端。 P2P服务器用于协助客户端之间创建P2P通道。在ESPlus3.0以前的版本中,P2P服务器是集成在服务端Rapid引擎中的。在2012.04.23最新发布的3.0版本中,这种模式依然被支持,而且,ESPlus又提供了另外一种部署模型:独立部署P2P服务器。一.集成部署P2P服务器1.服务端IRapidServerEngine有一个UseAsP2PServer属
阅读全文
KJFramework.Message 智能二进制消息框架
摘要:[开源]KJFramework.Message 智能二进制消息框架 -- 对于数组的极致性优化框架的介绍:1. 已经完成了对于消息内部类型的支持(int, short, long, uint, ushort, ulong, bool ,float, double, byte, sbyte, byte[], decimal, DateTime, IntPtr, Guid)2. 支持内部序列化元数据(.NET可序列化的对象)3. 对于智能对象内部的“智能对象”提供支持。 支持迭代元数据转换。[说明:]KJFramework框架中内置了一套,可以将网络传输实体自动转换为二进制元数据的能力框架。使用此
阅读全文
Quartz.NET 2.0 学习笔记(5) :实例创建Windows服务实现任务调度
摘要:Quartz.NET 项目地址http://quartznet.sourceforge.net/Quartz.NET 2.0 学习笔记(1) :Quartz.NET简介Quartz.NET 2.0 学习笔记(2) :和1.0的几点不同Quartz.NET 2.0 学习笔记(3) :通过配置文件实现任务调度Quartz.NET 2.0 学习笔记(4) :cron表达式Quartz.NET 2.0 学习笔记(5) :实例创建Windows服务实现任务调度使用普通Windows服务创建Quartz.Net服务项目首先创建Quartz.Net.2.0解决方案,添加 Windows服务 项目,添加安装程
阅读全文
Quartz.NET – .Net平台作业调度组件(Enterprise Job Scheduler for .NET Platform)
摘要:Quartz.NET is a full-featured, open source job scheduling system that can be used from smallest apps to large scale enterprise systems.Quartz.NET是功能全面的、开源的作业调度系统,适用于从小的应用程序到大型的企业应用系统。Welcome to the home of Quartz.NET!Quartz.NET is a full-featured, open source job scheduling system that can be used f
阅读全文
使用EF构建企业级应用(三)
摘要:使用EF构建企业级应用(三)2012-04-10 14:42 by 谢中涞, 880 visits,收藏,编辑在前两篇文章中,我们已经实现了基于EF的数据库基本操作基类的构建,以及简单的介绍了如何方便的动态构建排序表达式,在第二篇文章结尾,我们遗漏下来了一个问题:如何方便的构建查询参数(即类似于这样的Expression<TEntity, bool> expression查询表达式)在往常的经验中,我们知道在和数据库交互的过程中,查询可能是最复杂的,做过数据持久化封装的同学们可能对这个认识尤为突出,其他原因我们就不细说了, 如何丰富的,易用的构建查询条件这个就有点让人迷惑.我们来分
阅读全文
DotNetMQ: A Complete Message Queue System for .NET
摘要:Download source code - 1.28 MBDownload binaries - 933 KBDownload samples - 534 KBArticle OutlineIntroductionWhat isMessaging?What isDotNetMQ?Why a NewMessage Broker?TheNeedfor a Message BrokerWhat AboutexistingMessage BrokersInstallingand Running DotNetMQFirst ApplicationUsing DotNetMQRegisteringApp
阅读全文
DotNetMQ-基于C#和.NET框架的开源消息队列系统
摘要:DotNetMQ-基于C#和.NET框架的开源消息队列系统这是一位NB的土耳其开发人员基于C#和.NET框架,编写的开源消息队列系统DotNetMQ。DotNetMQ消息组件支持消息可靠传输、路由、负载均衡、服务器部署图(Server Graphs)等等。企业级应用系统经常需要通过消息来进行沟通或集成,在Microsoft 平台,还有其他的类似解决方案,如MSMQ、BizTalk、SQL Server Service Broker等等,这些产品或解决方案有各自的特点和适用场景。这里推荐的DotNetMQ消息系统,也是其适应的业务场景。DotNetMQ 消息系统特性列表:Persistent o
阅读全文
CSLA.Net专注电子商务 – Focus on eCommerce
摘要:分类目录归档:CSLA.NetCSLA.Net 开源框架CSLA.NET 范例项目-Petshop Sample Applications发表于2011 年 09 月 09 日由EntLib.com关于 CSLA.NET 框架,可以参考链接。 下面是Petshop 范例程序,基于CSLA.NET 框架重新改写。 范例程序下载地址: http://code.google.com/p/codesmith/downloads/list发表在CSLA.Net |标签为CSLA.Net |评论关闭Benefits of CSLA.Net Framework发表于2011 年 09 月 03 日由EntL
阅读全文
NServiceBus-.Net平台下开源的服务总线(open-source service for .net)
摘要:←NServiceBus-.Net平台下开源的服务总线(open-source service for .net)基于NServiceBus的发布/订阅范例(Publish/Subscribe)具体的Pub/Sub 范例程序,可以到http://www.nservicebus.com/Downloads.aspx下载,项目所在路径:\Community.NServiceBus.2.5.0.1446\.net 4.0\samples\PubSub首先,以admin的权限,在dos命令窗口下,运行RunMeFirst.bat 文件,检查MSMQ 是否安装和配置;配置DTC服务和安装一些性能计数器。
阅读全文
NServiceBus---最流行的开源企业服务总线 for .Net资源学习篇
摘要:NServiceBus是dotnet世界里面最流行的开源企业服务总线. 它具有以下特点: 1.强大,轻量级 2.可插拨,简单易用 3.支持企业级开发 零安装,在五分钟内就可以实现订阅/发布,如果你正在使用WCF,BizTalk,WebSphere or Sonic,你应该考虑一下NServiceBus: 1.NServiceBus and WCF 2.NServiceBus and BizTalk 3.NServiceBus and WebSphere/Sonic NServiceBus开始于2006年,并且一直在持续的改进,而且社区很活跃,作者更新的也很快.而且NServiceBus已经被多
阅读全文
nopCommerce架构分析系列(一)nopCommerce简介
摘要:题外话作为一个菜鸟,很少去设计一个软件的架构,水平太洼了,但这挡不住俺对架构的兴趣。最近在研究MVC3,园子里有人推荐nopCommerce挺不错的,正好nopCommerce是用MVC3开发的,于是下载其工程,觉得其架构设计的不错,于是要和大家一起分享一下我对该项目架构的研究。nopCommerce简介nopcommerce是国外的一个高质量的开源b2c网站系统,基于EntityFramework4.0和MVC3.0,使用Razor模板引擎,有很强的插件机制,包括支付配送功能都是通过插件来实现的,基于xml的多语言版本,非常灵活的语言切换功能,包括在后台都能同时编辑产品的中英文属性,非常适合
阅读全文
How to become a software architect?
摘要:如何成为一个软件设计架构师?How to become a software architect?In industry specific forums, I often see questions like “what certification do I need to do to become an architect?”. The simple answer is that you don't need a certification to become an architect.It may help, but there is a lot more to it to bec
阅读全文
Portal-Basic Web 应用开发框架 —— 前言
摘要:Portal-Basic Web应用开发框架(简称Portal-Basic或PB)是一套功能完备的超轻量级Web应用开发框架,内置MVC Web基础架构,支持可扩展的数据访问接口(已内置Hibernate、MyBatis和JDBC支持),集成Action拦截、Form Bean装配、国际化、文件上传下载和缓存等基础Web应用组件,提供纯Jsp/Servlet API的使用接口,非常容易学习和使用。Porta-Basic的诞生源于当时实际的需要。那一年公司有几个Java项目急需上马,而我们的技术团队很年轻,很多成员的工作经验都不超过2年,更有不少应届毕业生和实习生,也有刚从PHP等其它语言转到J
阅读全文
简单的系统架构图
摘要:学习之路十:简单的系统架构图 刚刚来到一家新公司,首先会对项目进行一个大致了解,研究了两天了,有了个总体的把握了,下面就是我这个小菜鸟画的简单系统架构图! 有的时候架构庞大的吓人,有的时候架构一眼看穿,但里面却暗藏杀机,真的需要我们去认真学习,揣摩! 不久前在园子里面看过一篇文章其中说道,设计架构无非就是一个字 → “拆”,当时看到这个字,想起来还真的是这么一回事,不过这里面去包含了很多的东西,我们现在就是不知道怎么拆,这个也不是一时半会能够了解的,需要我们认认真真的做,慢慢的积累,到时候就知道怎么拆了,而且还拆的很到位,所以加油! 还请各位园友多多指教啊![02] 学习的那些事在...
阅读全文