WisDom.Net 框架设计(二) 服务总线
WisDom.Net 框架设计--服务总线
1.Soa 简介
soa 就是面向服务的体系结构 是一个组件模型,不同的组件之间通过定义良好的接口联系起来。就像盖房子一块砖头一块砖头的砌墙,一片一片的加瓦。SOA架构的思想就主张不要再一块砖一片瓦的干,一面墙一个屋顶一根梁等等都是人家做好的,拿过来自己搭起来就把房子盖好了,需要每家的房子要求不一样再自己改,墙上开个窗,屋顶搞个烟囱都随你自己搞,自己搞的这部分就是需要你自己做造型砌砖的地方。好处就是开发效率高,系统稳定,实施维护便捷,不管是开发还是维护成本都低廉
2.什么是服务总线
企业服务总线(ESB)是分布式的、基于消息的集成解决方案,遵循开放的标准。ESB的角色是在各种IT资源——比如企业中分布于不同的系统上的应用系统、平台和服务之间——更容易的建立可靠的通讯。当IT部门越来越关注构建SOA来降低开发成本并提升业务敏捷时,ESB就成为了建立企业SOA关键的第一步
3.WisDom.net.SevrInfo的设计思考
按照服务总线的定义在 WisDom.net.SevrInfo 中需要提供 这么几个功能 1.维护各个服务之间的心跳机制 2.提取各个服务的地址。进行相关接口的调用类似于注册服务的的功能 各个服务用wcf来进行通信

[ServiceContract]
public interface IRegSeverice
{
/// <summary>
/// 服务上线
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerLogin(string ServerName, string ServerAddress);
/// <summary>
/// 服务心跳更新
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerUpdate(string ServerName);
/// <summary>
/// 服务离线
/// </summary>
/// <param name="ServerName"></param>
[OperationContract]
void ServerLeave(string ServerName);
/// <summary>
/// 订阅服务
/// </summary>
/// <param name="Servername">服务名称</param>
/// <param name="SubscriptionName">要订阅的服务名称</param>
/// <returns></returns>
[OperationContract]
Dictionary<string,string> SubscriptionServer(string Servername, List<string> SubscriptionName); }
WisDom.Net 框架设计(二) 服务总线的更多相关文章
- JavaScript 框架设计(二)
JavaScript 高级框架设计 (二) 上一篇,JavaScript高级框架设计(一)我们 实现了对tag标签的选择 下来我们实现对id的选择,即id选择器. 我们将上一篇的get命名为getTa ...
- 游戏UI框架设计(二) : 最简版本设计
游戏UI框架设计(二) --最简版本设计 为降低难度决定先讲解一个最简版本,阐述UI框架的核心设计理念.这里先定义三个核心功能: 1:UI窗体的自动加载功能. 2:缓存UI窗体. 3:窗体生命周期(状 ...
- WisDom.Net 框架设计(五) 权限设计
WisDom.Net --权限设计 1.需求分析 基本在所有的管理系统中都离不开权限管理.可以这么说,权限管理是管理系统的核心所在. 权限管理说白一些就是每个人能够做什么,不能够做什么.可以说 ...
- WisDom.Net 框架设计(三) 数据缓存
WisDom.Net --数据缓存 1.几种缓存方式 1.静态全局变量 C#静态变量使用 static 修饰符进行声明,在类被实例化时创建,通过类进行访问不带有 static 修饰符声明 ...
- WisDom.Net 框架设计(一) 总体框架
WisDom.Net总体框架 1.目标 WisDom.Net 做为以后快速开发相关的软件的基础框架,实现用户,权限,角色,菜单,和工作流的管理功能.相关功能可以独立使用,快速用于其他程序的开发.预计 ...
- WisDom.Net 框架设计(七) 验证框架
WisDom.Net-验证框架 1.分类 这里我们将数据验证分为以下几种 数据类型校验 主要用于确保数据类型输入的正确 比如年龄一项输入 A岁 ,显然不合法 域检查 ...
- WisDom.Net 框架设计(六) license
WisDom.Net-license 1.为啥要用license license (许可证) 顾名思义就是说我的软件只能给在指定的机器上使用.毕竟很多项目都不是免费的,(说句题外话,其实我用的也 ...
- WisDom.Net 框架设计(八) 持久层
WisDom.Net ---持久层 1.什么是持久层 持久层负责最基础的功能支撑,为项目提供一个高层,统一,和并发的数据持久机制,提供了比如建立数据库连接,关闭数据库连接,执行sql语 ...
- WisDom.Net 框架设计(四) 用户安全
WisDom.Net ----用户安全 1.用户单机登录 正如其名这里要求其实就是显示用户只能在一台电脑上登录.防止多处登录,这里简单的说一下实现原理,我们在这里使用session +cookie ...
随机推荐
- [BZOJ 1014] [JSOI2008] 火星人prefix 【Splay + Hash】
题目链接:BZOJ - 1014 题目分析 求两个串的 LCP ,一种常见的方法就是 二分+Hash,对于一个二分的长度 l,如果两个串的长度为 l 的前缀的Hash相等,就认为他们相等. 这里有修改 ...
- [UOJ 74] 【UR #6】破解密码
题目链接:UOJ - 74 题目分析 题目中,将字符串 S 的第一个字符移到末尾,其他字符向前移动一个位置,f(S) 就从 Hi 变成了 Hi+1. 我们分析一下这个过程:假设第一个字符为 c, (H ...
- 【Java】java基本知识
1.int与Integer的区别 int是基本数据类型,Integer是一个引用数据类型. e.g: int num = 100; // 不是对象 Integer i = 100; // 是对象 // ...
- 常见的Robotium测试的问题总结:
常见的Robotium测试的问题总结:(从别处拿来的先mark一下) 1.Robotium的 测试类ActivityInstrumentationTestCase2继承了TestCase类,即robo ...
- 【转】在Ubuntu下编译Android源码并运行Emulator
原文网址:http://www.mcuos.com/thread-4553-1-1.html 建立编译环境 1.在VirtualBox上安装Ubuntu 2.安装JDK $ sudo apt-ge ...
- Spark RDD Persistence
Spark最为重要的特性之一就是可以在多个操作(Action)之间,将一个或多个RDD关联的数据集(Dataset)以分区(Partition)为单位进行持久化(Persist)或缓存(Cache), ...
- JPush三分钟之后的事 fragmentActivity(一)
JPush是我用过的平台中最快的,比leanCloud短信验证快的多,当然leanCloud正在飞速的成长 另外江宏 是我的偶像啊:http://tech.sina.com.cn/i/2015-01- ...
- 【转】MongoDB资料汇总专题
1.MongoDB是什么 MongoDB介绍PPT分享 MongoDB GridFS介绍PPT两则 初识 MongoDB GridFS MongoDB GridFS 介绍 一个NoSQL与MongoD ...
- unity3d 制造自己的水体water effect(一)
first,I wish you a happy new year, and study in spring festival’s eve means you are hardworking,haha ...
- UVa 3704 Cellular Automaton(矩乘)
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=15129 [思路] 矩阵乘法-循环矩阵 题目中的转移矩阵是一个循环矩 ...