孢子框架(spore)-开发视图

一个典型的孢子框架开发视图如下,这只是一个应用,我们假设有一个“电子商店”的应用。

依赖关系如下:

  不难看出只有接口访问层和服务接口之间是RPC通信,其它的都是JAR包调用。业务实体和公共模块提供给其它所有模块调用。公共模块封装了一些通用的工具,这些通用的工具如果比较大的话还可以单独作为一个JAR包,比如安全框架就可以独立为一个单独的JAR包,以及数据库分库类库也可以单独独立为一个单独的jar包。

在部署时只需要部署两个应用,分别是Web应用和Rest接口应用。另外一些公用模块也可以作为一些完整的服务(这时候该模块本身就是一个单独的应用,又有自己的entity、service、web等模块,但没有公共模块,公共模块是所有微服务应用公用的),比如支付,可以发布成REST服务来提供给接口访问端调用。

时间: 2024-09-29 08:08:16

孢子框架(spore)-开发视图的相关文章

孢子框架(spore)-存储架构

web应用从单点向高并发架构演变时往往遇到最大的问题就是数据库的分布式存储.因为web应用本身就可以集群部署,但其所使用的数据库确是单点的.如果一个web应用开始的时候没有考虑数据库的分布式架构,那么等到要进行数据库集群改造时会发现困难重重,此时通常的做法是将原系统拆分成多个子系统,然后每个子系统访问一个数据库,这几乎重写了整个系统(如果这还不能满足需求,大型企业接下来会增加数据存储总线).很多厂商都是这么做的,包括淘宝.如果你开始你能够考虑到数据库集群,并且这种集群的设置并不增加开发工作量和难

孢子框架-通信架构

关于微服务通信基础知识可先行参考文章: 中文连接:http://dockone.io/article/549 英文连接:https://www.nginx.com/blog/building-microservices-inter-process-communication/ 接口调用如果是远程调用,那么就构成了简单的分布式.最简单的远程接口实现方式是web service或rest.当然一个合理的分布式应用不仅仅是远程接口调用这么简单.还需要有负载均衡.缓存等功能.最简单实现分布式的技术是Re

孢子框架-接口访问层、ESB、微服务API GateWay对比

如果从百度去搜索“接口访问层”你会发现主要是.NET里面的技术,叫做IDAL,其实是数据访问层接口.它的主要作用是兼容多种数据库.比如你定义一个标准接口,然后实现改接口的SqlServer访问和Oracle访问,那么利用IDAL就可以自由切换数据库.看.NET DEMO PetShop4,总共有22个项目.大体思想是3层,从Model.DAL.BLL,然后他在各层上又采用了工厂模式,把逻辑与实现想分离,比如以前BLL直接调用DAL就好了,但现在BLL却调用了IDAL,IDAL就是一个接口层,里面

孢子框架-互联网金融平台微服务架构设计

按照孢子框架要义对互联网金融理财平台进行微服务架构设计.假设我们设计的目标是5年后的陆金所(https://www.lu.com/).陆金所简介,平安集团旗下理财平台,是中国最大的网络投融资平台之一,2011年9月在上海注册成立,注册资本金8.37亿元,lufax结合全球金融发展与互联网技术创新,在健全的风险管控体系基础上,为中小企业及个人客户提供专业.可信赖的投融资服务,帮助他们实现财富增值.截至2014年1月末,注册用户已逾570万. l 需求分析 参照陆金所,获得如下核心需求矩阵. 分类

孢子框架(微服务)成熟度模型.

笔者并不是微服务领域大牛,但当第一次看到微服务的概念就发现这是社会发展的必然趋势.记得在以前看到过一本书,现在也忘记是哪一本,里面提到将来社会的商业结构将不存在所谓的沃尔玛之类的大超市,而是以微商(个人提供商业服务)为主,那至少是在十年前的提法,当时都感觉不可思议,但现在看来还真有这个趋势.这个趋势和微服务的诞生其实都基于同样的原理:服务结构发展与社会发展同步.社会生产力要发展必须最大化个人的生产能力,所以社会整体生产力的提高的过程也是人的个性化发展的过程.以战争为例,封建社会军队使用人海战术,

孢子框架-网络游戏架构与微服务架构简单对比

笔者十年前做过网络游戏,当第一次看到微服务架构就发现它和网络游戏架构很像,如下图: 先来简单介绍一下这个网游架构,有些东西记不清了,如今的网游大牛看到可别丢砖头. 用户下载网游客户端,登录网游,首先会执行登录服务,登录服务主要就是给你分配一个网关,因为网关后面连接的才是真正的游戏服务器.登录后,进入游戏,发出指令,比如你移动到某个位置,这个指令会先发送到网关,然后再由网关识别发送到“移动系统”服务,移动系统计算后再经由网关发送给玩家客户端,玩家客户端执行一个动画让你移动到某个位置. 假如子服务间

孢子框架-微服务架构

微服务架构(Microservices ),是一个新的概念,但不是一项新的技术.看一下那些大型互联网企业,早在十年前就在使用类似架构,再看一下游戏行业,大型网游的架构从一开始就是采用类似的架构,这起码要追溯到二十年前. 微服务架构和传统SOA架构最大的区别是个性化(非通用化).传统SOA所采用的方式跟它的起源有关系,传统SOA是由IBM等大公司倡导的,它们把某些通用的企业应用封装成某类服务,然后卖给企业,企业就可以使用该服务,并且企业可以购买不同的服务进行组合.而互联网公司就不同了,它们从开始就

使用 CodeIgniter 框架快速开发 PHP 应用(六)

原文:使用 CodeIgniter 框架快速开发 PHP 应用(六) 简化使用 Session 和安全 理论说得够多了! 现在让我们开始写我们自己的应用. 在这一章里,我们将会大致描述一下我们要建立的一个应用系统,而且我们分析一些会影响到网站系统的的基本问题也就是会话管理和安全. 在这一章,我们将会见到: .如何使你的网页安全 .如何使用 CI 的会话类 开始用 CI 设计一个实际的网站 我们已经看过 CI 安装时生成的welcome页以及它内部动作中控制器文件和视图文件的动作流程. 实际上这就

使用 CodeIgniter 框架快速开发 PHP 应用(四)

原文:使用 CodeIgniter 框架快速开发 PHP 应用(四) 使用 CI 简化数据库开发 你学习CI 是因为你想要使编程更容易和更有生产力.这一章讲述CI的Active Record类. 如果CI只提供一个Active Record类,它还是物超所值的.当然,CI是免费的,只不过我要强调Active Record(以后简称AR)类的价值是非常高的,它是你提高生产力的主要工具. AR使你以最小的代价获得最大的回报. 它简单,易于使用和维护. 这一章描述CI如何连接到一个数据库,你如何使用A