随笔 - 3  文章 - 0  trackbacks - 0
<2017年7月>
2526272829301
2345678
9101112131415
16171819202122
23242526272829
303112345

常用链接

留言簿

随笔分类

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

1、可重用
一个服务创建后能用于多个应用和业务流程。
2、松耦合
服务请求者到服务提供者的绑定与服务之间应该是松耦合的。因此,服务请求者不需要知道服务提供者实现的技术细节,例如程序语言、底层平台等等。
3、明确定义的接口
服务交互必须是明确定义的。Web服务描述语言(Web Services Description Language,WSDL)是用于描述服务请求者所要求的绑定到服务提供者的细节。WSDL不包括服务实现的任何技术细节。服务请求者不知道也不关心服务究竟是由哪种程序设计语言编写的。
4、无状态的服务设计
服务应该是独立的、自包含的请求,在实现时它不需要获取从一个请求到另一个请求的信息或状态。服务不应该依赖于其他服务的上下文和状态。当产生依赖时,它们可以定义成通用业务流程、函数和 数据模型。
5、基于开放标准
当前SOA的实现形式是Web服务,基于的是公开的W3C及其他公认标准.采用第一代Web服务定义的SOAP、WSDL和UDDI以及第二代Web服务定义的WS-*来实现SOA。

思考:与ECS的区别,如何实现无状态服务,并将依赖定义为通用接口[单例的system, 用于提供通用服务,减少系统间的依赖调用]。
posted @ 2017-07-18 20:39 长戟十三千 阅读(0) | 评论 (0)编辑 收藏
目的:子类对象构造时,区分类型ID
实现:利用模板制作构造工具。
 1 class BaseSystem : entityx::help::NonCopyable {
 2  public:
 3   typedef size_t Family;
 4   static Family family_counter_;
 5 };
 6 
 7 template <typename Derived>
 8 class System : public BaseSystem {
 9  public:
10   // 这里,取得类型ID
11   static Family family() {
12     static Family family = family_counter_++;
13     return family;
14   }
15 };
16 
posted @ 2017-07-12 21:40 长戟十三千 阅读(0) | 评论 (0)编辑 收藏
    服务器宕机的代价是巨大的,好的书写和架构习惯可以有效减少宕机

   1、不跨作用域使用指针,使用时确保有效。

   2、使用ID作为操作的依据。

   3、函数入口地址处添加DUMP的堆栈纪录宏定义,宕机时可查找出错位置。

   4、区分状态,在相邻关联模块进行统一的互斥操作判定。

   

posted @ 2011-10-10 14:16 长戟十三千 阅读(21) | 评论 (0)编辑 收藏
仅列出标题