软件架构系列二:Clean架构】的更多相关文章

外圈的层次可以依赖内层,反之不可以:内圈核心的实体代表业务,不可以依赖其所处的技术环境. 这是著名软件大师Bob大叔提出的一种架构,也是当前各种语言开发架构.干净架构提出了一种单向依赖关系,从而在逻辑上形成一种向上的抽象系统. 这种干净的架构图如下: 依赖规则Dependency Rule 上图中同心圆代表各种不同领域的软件.一般来说,越深入代表你的软件层次越高.外圆是战术实现机制,内圆的是战略核心策略. 使此体系架构能够工作的关键是依赖规则.这条规则规定源代码只能向内依赖,在最里面的部分对外面…
上一篇文章,主要分析了怎么建立一个Restful web service,系列二主要创建一个H5静态页面使用ajax请求数据,功能主要有添加一本书,请求所有书并且按照Id降序排列,以及查看,删除一本书. 1.   示例结构以及用到的技术点 1.1 项目逻辑架构 1.2 项目的技术选型 Spring-Data-JPA H5 Bootstrap jQuery + ajax 2.  后端服务 2.1  pom.xml依赖的jar包和系列一中结构完全一样,省略不表. 2.2  book表结构,book类…
最近时间又有了新的想法,当我用新的眼光在整理一些很老的知识库时,发现很多东西都已经过时,或者是很基础很零碎的知识点.如果分享出去大家不看倒好,更担心的是会误人子弟,但为了保证此系列的完整,还是选择分享出去,毕竟也是自己的成长过程,各取所好吧! 在分享知识库节点时,我会写清楚此知识库节点的入手级别,请大家根据需要下载,免得不必要的吐嘈.但我确定总有子节点对你有用,并且相信接下来的分享会更精彩,不了解前文请请移步:[知识库分享系列] 一.开篇 此篇文章是个提醒,文章内容本身没有什么技术含量,发到园子…
知识库分享系列: [知识库分享系列] 二..NET(ASP.NET) [知识库分享系列] 一.开篇 分享介绍 此知识库之所以为 Web 系列,因为和 .NET 没有完全的关系,其中的技术和实践实用于各种平台,大家掌握后灵活运用即可! 本知识库主要包含以下重点: 概念普及:HTTP.CDN等 前端优化:减少HTTP请求.压缩.样式表和JS的优化.客户端缓存等 缓存优化:从客户端.浏览器.服务器端多方面总结缓存使用技术 负载均衡:几种常见的方案 工具使用:调试器.性能分析.资源压缩等 解决方案 技术…
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理   http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html linux磁盘管理系列二:软RAID的实现  http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_041_raid.html linux磁盘管理系列三:LVM的使用        http://www.cnblogs.com/zhaojiedi…
Storm系列二: Storm拓扑设计 在本篇中,我们就来根据一个案例,看看如何去设计一个拓扑, 如何分解问题以适应Storm架构,同时对Storm拓扑内部的并行机制会有一个基本的了解. 本章代码都在: git@github.com:zyzdisciple/storm_study.git 项目下的 user_behavior包下. 问题案例 有这样一种场景,在前端存在会话,我们会不断收到来自前端的消息,消息包含消息的发送时间,消息内容,结束标识, 消息的发送者, SessionId等其他信息,…
转自:[CXF REST标准实战系列] 二.Spring4.0 整合 CXF3.0,实现测试接口 文章Points: 1.介绍RESTful架构风格 2.Spring配置CXF 3.三层初设计,实现WebService接口层 4.撰写HTTPClient 客户端,并实现简单调用 介绍RESTful架构风格 REST是REST之父Roy Thomas创造的,当时提出来了REST的6个特点:客户端-服务器的.无状态的.可缓存的.统一接口.分层系统和按需编码.其具有跨语言和跨平台的优势. REST是一…
先贴个本帖的地址,免得其它网站被爬去了struts2入门系列二之Hello World  即 http://www.cnblogs.com/linghaoxinpian/p/6898779.html 你可以在我的百度网盘上下载样例项目 https://pan.baidu.com/s/1pL7DgwF 在struts2 web Application中,当用户点击一个连接或是提交一个表单时,他的请求将会被发送到你指定的java类中,而不是其它服务器页面(不理解也没关系,写完你就明白了).那个指定的…
http://blog.csdn.net/yerenyuan_pku/article/details/71699515 MyBatis框架的架构 MyBatis框架的架构如下图: 下面作简要概述: SqlMapConfig.xml,此文件作为mybatis的全局配置文件,配置了mybatis的运行环境等信息.mapper.xml文件即sql映射文件,文件中配置了操作数据库的sql语句,此文件需要在SqlMapConfig.xml中加载. 通过mybatis环境等配置信息构造SqlSessionF…
Redis总结(五)缓存雪崩和缓存穿透等问题   前面讲过一些redis 缓存的使用和数据持久化.感兴趣的朋友可以看看之前的文章,http://www.cnblogs.com/zhangweizhong/category/771056.html .今天总结总结缓存使用过程中遇到的一些常见的问题.比如缓存雪崩,缓存穿透,缓存预热等等. 缓存雪崩 缓存雪崩是由于原有缓存失效(过期),新缓存未到期间.所有请求都去查询数据库,而对数据库CPU和内存造成巨大压力,严重的会造成数据库宕机.从而形成一系列连锁…