在Visual Studio 2012中使用VMSDK开发领域特定语言1
摘要:在Visual Studio 2012中使用VMSDK开发领域特定语言(一)前言本专题主要介绍在Visual Studio 2012中使用Visualization & Modeling SDK进行领域特定语言(DSL)的开发,包括两个部分的内容。在第一部分中,将对领域特定语言进行简单介绍,并讲解如何使用Visual Studio 2012创建一个领域特定语言的开发解决方案,以及Visual Studio 2012集成开发环境对DSL开发的支持;在第二部分中,将以实际应用为例,介绍开发DSL的主要步骤,包括设计、定制、调试、发布以及使用等。本文为本专题的第一部分。领域特定语言概述在软件
阅读全文
实战低成本服务器搭建千万级数据采集系统
摘要:实战低成本服务器搭建千万级数据采集系统上一篇文章《社会化海量数据采集框架搭建》提到如何搭建一个社会化采集系统架构,讲架构一般都比较虚,这一篇讲一下如何实战用低成本服务器做到日流水千万级数据的分布式采集系统。有这样一个采集系统的需求,达成指标: 需要采集30万关键词的数据 、微博必须在一个小时采集到、覆盖四大微博(新浪微博、腾讯微博、网易微博、搜狐微博)。为了节约客户成本,硬件为普通服务器:E5200 双核 2.5G cpu, 4 G DDR3 1333内存,硬盘 500G SATA 7200转硬盘。数据库为mysql。在这样的条件下我们能否实现这个系统目标?当然如果有更好的硬件不是这个文章阐述
阅读全文
SOA体系结构基础培训教程
摘要:SOA体系结构基础培训教程-规范标准篇引子:本文是《SOA体系结构基础培训教程》第3章《SOA标准与规范》课件,版权所有,转载请注明出处。随着SOA在业界的应用日益广泛,SOA的标准化问题也成为各界日益关注的焦点。但是由于国际标准的不统一,给SOA的应用带来了不小的麻烦。好在中国SOA标准化小组的工作得到了普遍的认可,现在已经有部分标准通过了审核,确立了国家标准的地位。其中包括《信息技术 面向服务的体系结构(SOA)术语》,《信息技术 面向服务的体系结构(SOA)应用的总体技术要求》已经于2013年6月正式生效。本文旨在介绍SOA标准与规范的国际组织、国际标准,我国标准化组织,我国的SOA标准
阅读全文
.NET框架设计—常被忽视的框架设计技巧
摘要:.NET框架设计—常被忽视的框架设计技巧阅读目录:1.开篇介绍2.元数据缓存池模式(在运行时构造元数据缓存池)2.1.元数据设计模式(抽象出对数据的描述数据)2.2.借助Dynamic来改变IOC、AOP动态绑定的问题2.3.元数据和模型绑定、元数据应该隐藏在Model背后、元数据与DSL的关系3.链式配置Dynamic模式(爱不释手的思维习惯编程)4.委托工厂模式(要优于常见的 工厂,概念更加准确,减少污染)5.规则外挂(视委托为特殊的规则对象原型)1】开篇介绍通过上一篇的“.NET框架设计—常被忽视的C#设计技巧”一文来看,对于框架设计的技巧还是有很多人比较有兴趣的,那么框架设计思想对于我
阅读全文
消息的重试机制的设计思路
摘要:enode框架step by step之消息的重试机制的设计思路enode框架系列step by step文章系列索引:enode框架step by step之开篇enode框架step by step之事件驱动架构(EDA)思想的在框架中如何体现enode框架step by step之saga的思想与实现enode框架step by step之框架的总体目标enode框架step by step之框架的物理部署思路enode框架step by step之Command Service API设计思路enode框架step by step之Staged event-driven archite
阅读全文
SOA体系结构之基础培训教程-大纲篇
摘要:SOA体系结构之基础培训教程-大纲篇引言:最近受邀做了一个企业的SOA体系结构的内训,本文是内训课程的培训大纲,分享一下吧,希望大家能够喜欢。同时也想针对大纲中列出的内容对SOA架构体系做一次回顾,如果时间允许把完整的课件也想放上来共享一下吧。课程对象本课程主要面向企业高级IT管理人员,IT研发人员,企业信息化人员开发人员,设计人员,架构师,开发主管,项目经理。课程目的通过本课程的学习,学员能够学习到什么是SOA?SOA体系结构有什么特点?SOA体系机构常用的标准和规范有哪些?SOA体系结构能力成熟度如何度量和测算?SOA体系结构常用工具或技术有哪些?SOA体系结构与EAI,ESB是何种关系?
阅读全文
分布式EventBus的Socket实现 - 发布订阅
摘要:分布式EventBus的Socket实现 - 发布订阅在这篇文章中,EventBus实现 - 发布订阅 - XML加载所适用的范围只是本机的事件传播,要是牵涉到多台服务器之间的事件传播就不行了,解决办法有用msmq解决的,也有用redis的发布订阅解决的,这次用C# socket来实现,能实现立刻推送事件到所以server上。这次的子系统适用的场景如下:主要分2个部分:各个server使用的Event Bus Broker以及Event Bus Server。Broker与Server之间的通信协议就3个:ME、Subscribe、Publish。分别代表:我的名字是、我要订阅的事件是、我触发
阅读全文
C# 对象池的实现
摘要:C# 对象池的实现对象池服务可以减少从头创建每个对象的系统开销。在激活对象时,它从池中提取。在停用对象时,它放回池中,等待下一个请求。我们来看下主线程中,如何与对象池打交道:static void Main(string[] args) { InstancePoolResolver.Register(); while (true) { Thread.Sleep(2000); Console.Clear(); for (int ...
阅读全文
shuttle.esb
摘要:http://shuttle.codeplex.com/Why a service bus?If you need to have a task performed yousendacommandmessage:A command message goes to only oneendpointthat processes the message by interacting with your domain.If you need to have the command message performed from outside your application space such as
阅读全文
EventBus实现 - 发布订阅 - XML加载
摘要:EventBus实现 - 发布订阅 - XML加载受到CQRS的影响,写了个EventBus,能实现发布订阅模式执行event,在DDD模型中,可以使用如下代码触发事件:EventBus bus = EventBus.Instance();bus.Publish(new OrderAddedEvent());解决方案结构图如下,很简单易懂:xml事件配置代码sample如下(1个event可以定义多个订阅者,如下): ConsoleApplication2.code.Events.OrderAddedEvent ConsoleApplication2.code.Ev...
阅读全文
架构设计
摘要:当前标签: 架构设计架构和框架的区别蒋叶湖 2013-07-18 11:39 阅读:286 评论:1谈谈设计不足(under-engineering)与过度设计(over-engineering)蒋叶湖 2013-07-17 09:58 阅读:5 评论:0可扩展性(Extensibility): 构建灵活系统的思考蒋叶湖 2013-07-17 09:55 阅读:99 评论:1架构设计之性能设计经验蒋叶湖 2013-07-16 23:42 阅读:13 评论:0说说企业架构(企业级架构)和应用程序架构蒋叶湖 2013-07-16 23:36 阅读:134 评论:0大型网站系统架构分析蒋叶湖 201
阅读全文
架构和框架的区别
摘要:架构和框架的区别笔者发现,人们对软件架构存在非常多的误解,其中一个最为普遍的误解就是:将架构(Architecture)和框架(Framework)混为一谈。一图胜千言,图2-9切中肯綮地点出了架构和框架的区别。一句话,框架是软件,架构不是软件。框架是一种特殊的软件,它并不能提供完整无缺的解决方案,而是为你构建解决方案提供良好的基础。框架是半成品。典型地,框架是系统或子系统的半成品;框架中的服务可以被最终应用系统直接调用,而框架中的扩展点是供应用开发人员定制的“可变化点”。图2-9架构和框架的区别软件架构不是软件,而是关于软件如何设计的重要决策。软件架构决策涉及到如何将软件系统分解成不同的部分
阅读全文
Winform开发框架的重要特性总结
摘要:Winform开发框架的重要特性总结从事Winform开发框架的研究和推广,也做了有几个年头了,从最初的项目雏形到目前各种重要特性的加入完善,是经过了很多项目的总结归纳和升华,有些则是根据客户需要或者应用前景的需要进行的完善,整个Winform开发框架具有很好的通用性和借鉴性,本文从该Winform开发框架进行概括总结,力求把各个重要的特性进行一些详细的说明,使大家了解整个Winform开发框架的面貌和特性。Winform开发框架总体性概括有:支持插件化应用开发,能够动态配置及加载开发的插件;菜单支持动态配置,可根据用户权限进行动态控制显示;集成各种独立开发好的模块,如权限管理系统、字典管理模
阅读全文
订单系统开发
摘要:订单系统开发(仿淘宝和美团网) 之 项目总结(一)基于公司战略的调整和开发框架的升级换代,也伴随着SOP(面向服务编程)和SOA(面向服务架构)的软件开发思想在公司开发团队中的慢慢深入,最终讨论决定在将现有(旧)的支撑公司业务的项目模块(如:产品,商家和订单...)在进行底层架构升级的同时,要让这个模块在一定程度上可以达到复用性——即它应该可以满足新的栏目('同城网购')的相关需求且适当的考虑未来的需求扩展,它不能跟其它的模块耦合在一起,只负责属于这个模块领域内的数据服务(如:产品模块只用考虑产品相关数据的读写),可以独立公开作为一个服务,且可以满足分布式部署的需求(这个由新的
阅读全文
enode框架step by step之消息队列的设计思路
摘要:enode框架step by step之消息队列的设计思路enode框架系列step by step文章系列索引:enode框架step by step之开篇enode框架step by step之事件驱动架构(EDA)思想的在框架中如何体现enode框架step by step之saga的思想与实现enode框架step by step之框架的总体目标enode框架step by step之框架的物理部署思路enode框架step by step之Command Service API设计思路enode框架step by step之Staged event-driven architectu
阅读全文
基于BrokerPattern服务器框架
摘要:基于BrokerPattern服务器框架RedRabbit经典网游服务器架构该图省略了专门用途的dbserver、guildserver等用于专门功能的server,该架构的优点有:lLoginGate相当于DNS,可以动态的保证GameGate之间负载均衡。l由于Clientt的逻辑操作都是由GameServer处理的,而Client的消息请求都被GameGate转发到GameServer上,所以在不同的GameGate上的client仍能出现在相同的场景里。若在不同的场景,又可以将其分布在不公的GameServer处理,从而实现了GameServer的Scalability。lGameSe
阅读全文
公共建筑能耗监测平台的GPRS通讯服务器的开发方法分享
摘要:公共建筑能耗监测平台的GPRS通讯服务器的开发方法分享在这个文章里面我将用一个实际的案例来分享如何来构建一个能够接受3000+个连接的GPRS通讯服务器软件,这个软件被我认为是一个艺术品,实现周期为1.5个月,文章很长,有兴趣的同志慢慢看。在这里,我将分享GPRS通讯服务器设计过程中面临的问题,分享通讯协议的设计,分享基于异步事件的设计,分享避免内存泄露的解决方案,分享软件的发布与升级方法,分享通讯协议的单元测试构建等。1 GPRS通讯服务器软件介绍首先我们来看一下这个通讯服务器软件,如下图所示(这个界面框架是一个OSGi.NET插件,有兴趣可以从http://www.iopenworks.c
阅读全文
TOGAF架构内容框架之架构制品(下)
摘要:TOGAF架构内容框架之架构制品(下)4.2.31 数据生命周期图(Data Lifecycle Diagram) 数据生命周期图是在业务流程的约束之下对业务数据在其整个生命周期(从概念阶段到最终退出)中对其进行管理的核心部分。数据从本质上讲是一个实体,并独立于业务流程和活动。数据状态的每个变化都被表现在这张图中,这也可以包括引起此状态变化事件或规则。数据与流程的分离使得通用数据需求可以被识别出来,从而使得资源共享得以有效达成。4.2.32 应用组合目录(Application Por tfolio Catalog) 此目录的目标是明确和维护企业中所有应用的列表。一个经过批准的应用组合目录使得
阅读全文
enode框架step by step之框架的物理部署思路
摘要:enode框架step by step之框架的物理部署思路enode框架系列step by step文章系列索引:enode框架step by step之开篇enode框架step by step之事件驱动架构(EDA)思想的在框架中如何体现enode框架step by step之saga的思想与实现enode框架step by step之框架的总体目标开源地址:https://github.com/tangxuehua/enode上一篇文章,介绍了enode框架的总体目标,以及如何实现高吞吐、低延迟、高可用、无单点问题的实现思路。本篇文章,我们再分析一下其他一些需要考虑的问题。我发现写文章挺
阅读全文
enode框架step by step之Staged event-driven architecture思想的运用
摘要:enode框架step by step之Staged event-driven architecture思想的运用enode框架系列step by step文章系列索引:分享一个基于DDD以及事件驱动架构(EDA)的应用开发框架enodeenode框架step by step之事件驱动架构(EDA)思想的在框架中如何体现enode框架step by step之saga的思想与实现enode框架step by step之框架的总体目标enode框架step by step之框架的物理部署思路enode框架step by step之Command Service API设计思路开源地址:https
阅读全文