java架构模式与设计模式
文章平均质量分 82
常见的架构模式与设计模式总结
秋天的猿
这个作者很懒,什么都没留下…
展开
-
java基础总结(八十七)--Ack机制
原文链接1、ack是什么ack 机制是storm整个技术体系中非常闪亮的一个创新点。通过Ack机制,spout发送出去的每一条消息,都可以确定是被成功处理或失败处理, 从而可以让开发者采取动作。比如在Meta中,成功被处理,即可更新偏移量,当失败时,重复发送数据。因此,通过Ack机制,很容易做到保证所有数据均被处理,一条都不漏。另外需要注意的,当spout触发fail动作时,不会自动重发失败的tuple,需要spout自己重新获取数据,手动重新再发送一次ack机制即, spout发送的每转载 2021-02-26 19:56:00 · 1589 阅读 · 0 评论 -
java架构模式与设计模式(十一)--云原生时代下的12-Factor应用与实践
原文链接作者简介:黄庆兵,网易蜂巢首席技术布道师,浙大硕士毕业,从事云计算、Docker、Go等相关开发及技术布道工作;喜欢开源,乐于分享,勤于布道,折腾过开源小工具,制作过Docker课程,分享过 Gopher Meetup。欢迎一起来探讨技术!个人主页:http://bingohuang.com/以下为正文:1. 简介在云的时代,应用会更多的迁移到云端,基于云的架构设计和开发模式需要一套全新的理念去承载,于是云原生思想应运而生,而针对云原生应用开发的最佳实践原则,12-Factor脱颖而转载 2021-02-24 20:24:55 · 487 阅读 · 1 评论 -
java架构模式与设计模式(十一)--IaaS,PaaS,SaaS 的区别
原文链接越来越多的软件,开始采用云服务。云服务只是一个统称,可以分成三大类。IaaS:基础设施服务,Infrastructure-as-a-service PaaS:平台服务,Platform-as-a-service SaaS:软件服务,Software-as-a-service它们有什么区别呢?IBM 的软件架构师 Albert Barron 曾经使用披萨作为比喻,解释这个问题。David Ng 进一步引申,让它变得更准确易懂。请设想你是一个餐饮业者,打算做披萨.转载 2021-02-24 20:23:40 · 742 阅读 · 0 评论 -
java架构模式与设计模式(十)--失效模式与影响分析
原文链接失效模式与影响分析失效模式与影响分析即“潜在失效模式及后果分析”,或简称为FMEA。FMEA是在产品设计阶段和过程设计阶段,对构成产品的子系统、零件,对构成过程的各个工序逐一进行分析,找出所有潜在的失效模式,并分析其可能的后果,从而预先采取必要的措施,以提高产品的质量和可靠性的一种系统化的活动。FMEA分为DFMEA/PFMEA以及FMEA-MSR。中文名失效模式及后果分析外文名Failure Mode and Effects Analysis最早出现1950年飞转载 2021-02-25 21:53:49 · 716 阅读 · 0 评论 -
java架构模式与设计模式(九)--一文了解原生云
原文链接目录前言后端架构演化史集中式架构分布式系统架构容器技术新纪元 Docker微服务架构KubernetesService Mesh总结云原生 Cloud Native什么是云 Cloud什么是原生 NativeCloud Native 是道,Service Mesh 是术Service Mesh纷争 2017百家争鸣 2018持续发展 2019Istio连接保护控制观测总结前言自 2013 年容器(转载 2021-02-25 21:53:58 · 438 阅读 · 0 评论 -
java架构模式与设计模式(七)--UML各种线的含义
原文链接目录看懂UML类图和时序图从一个示例开始类之间的关系泛化关系(generalization)实现关系(realize)聚合关系(aggregation)组合关系(composition)关联关系(association)依赖关系(dependency)时序图附录:《图说设计模式》看懂UML类图和时序图这里不会将UML的各种元素都提到,我只想讲讲类图中各个类之间的关系; 能看懂类图中各个类之间的线条、箭头代表什么意思后,也就足够应对 日常的工作和转载 2021-02-26 19:54:43 · 622 阅读 · 0 评论 -
java架构模式与设计模式(六)--敏捷开发和DevOps有什么关系?
原文链接现在基于云平台的许多服务或软件产品不断提到DevOps,那么DevOps和通常意义上的敏捷之间有什么关系呢? 首先敏捷是关于软件开发的过程与模式;DevOps更多是关于软件部署和运维管理;产品管理是关于产品的定义和需求规划。将创新思维和设计思维结合,设计出满足市场需求的创新产品。使用某种形式的敏捷软件开发来构建你的产品。使用DevOps在生产中发布和管理你的产品。 更具体地说,DevOps是补充但不能取代敏捷。 DevOps不会取代敏捷,它非常好...转载 2021-02-27 21:06:20 · 433 阅读 · 0 评论 -
java架构模式与设计模式(五)--什么是形式化定义
原文链接1计算机科学和软件工程领域编辑形式化方法是基于数学的特种技术,适合于软件和硬件系统的描述、开发和验证。将形式化方法用于软件和硬件设计,是期望能够像其它工程学科一样,使用适当的数学分析以提高设计的可靠性和鲁棒性。但是,由于采用形式化方法的成本高意味着它们通常只用于开发注重安全性的高度整合的系统。2逻辑科学编辑形式化是指分析、研究思维形式结构的方法。它把各种具有不同内容的思维形式(主要是命题和推理)加以比较,找出其中各个部分相互联结的方式,如命题中包含概念彼此间的联结,推理中则.转载 2021-02-28 15:17:05 · 159 阅读 · 0 评论 -
java架构模式与设计模式(四)--事件风暴
原文地址目录什么是事件风暴事件风暴流程物料准备参与人员寻找领域事件寻找命令和角色寻找领域模型和聚合划分子域和限界上下文常见的问题事件的粒度?对某个事件有歧义一个命令产生多个连锁事件领域模型周围的事件过多感觉命令就是事件的动词?成员完全不熟悉业务怎么办?没有领域专家怎么办?什么是事件风暴很多人在学习DDD的过程中,都会有一个疑问:DDD的概念看着挺多,听起来也很有用。但具体怎么落地实施到项目中?事件风暴(Event St.转载 2021-02-21 12:02:19 · 390 阅读 · 0 评论 -
java架构模式与设计模式(二)--Request-Response网络交互通用处理模型
一、综述 java 客户端与服务端交互过程中,采用NIO通讯是异步的,客户端基本采用同一处理范式,来进行同异步的调用处理。 处理模型有以下几个要素: 1. NIO发送消息后返回的Future 2. 每次发送请求生成的Callback ,回调对象保存有请求数据,获取数据时阻塞线程,服务端返回时唤醒被阻塞的业务线程 并返回数据操作 3. 一个Map 保存有请求id 与 callback实例。 一般 key= reqId, val...转载 2020-06-02 23:19:56 · 556 阅读 · 0 评论 -
java架构模式与设计模式(一)--六边形架构
本文来自前言注: 当我在学习DDD时,看到其中的六边架构,在初步了解其架构思想之后,就深深地被吸引了,因为它可以解决诸多我在项目中遇到的问题。这里将着重介绍六边形架构的思想,以及其解决的问题,并不与其它架构做深入的对比。六边形架构 又被称之为ports&adpers(我认为这个名称更合适),是 Cockburn在2005年提出的,目的是为了解决业务逻辑与输入输出的解耦。架构思想想像一下电脑如何与周边设备如何交互的:周边设备有耳机、键盘、外接显示器、耳机等,它们通过电脑的U转载 2020-06-02 22:34:39 · 1041 阅读 · 0 评论