随笔分类 - 架构
摘要:本文将以“用户中心”为例,介绍“单KEY”类业务,随着数据量的逐步增大,数据库性能显著降低,数据库水平切分相关的架构实践: 如何来实施水平切分 水平切分后常见的问题 典型问题的优化思路及实践 一、用户中心 用户中心是一个非常常见的业务,主要提供用户注册、登录、信息查询与修改的服务,其核心元数据为:
阅读全文
摘要:转贴者按: 今天在使用curl的时候碰到了一个错误,如下所示: External Program Failed: D:\Tools\curl\curl.exe (return code was 18) 也就是错误码为18,网上查了一遍说是:文件传输,短于或大于预期。发生这种情况时,服务器首先报告预期
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 改变思维的角度:故障无处不在 当微服务规模化后,故障是无可避免的,以往我们总是想尽力避免故障的发生,而当故障实际发生时,我们往往束手无策。我们花了很多时间在流程设计和应用设计的层面上来阻止故障的发生,但实际上很少花费时间思考如何第一时间从故障中恢复过来。
阅读全文
摘要:原文地址:https://yq.aliyun.com/articles/8611(肥侠)著作权归原作者是所有。 概述 关于微服务的介绍,可以参考微服务那点事。 微服务是最近非常火热的新概念,大家都在追,也都觉得很对,但是似乎没有很充足的理论基础说明这是正确的,给人的感觉是 不明觉厉 。前段时间看了M
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 康威定律 任何组织在设计一套系统时,所交付的设计方案在结构上都与该组织的沟通结构保持一致。 ——梅尔.康威 如何理解这句话在软件工程上的含义?埃里克.S.雷蒙德说:如果你有四个小组开发一个编译器,那你会得到一个四步编译器。 组织和架构应该一致,团队应该共同
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 身份认证和授权 1.单点登录(SSO) 当主体试图访问一个资源,他会被定向到一个身份提供者那里进行身份验证,身份提供者验明正向后会发消息给服务提供者,让服务提供者来决定是否允许它访问资源。 SAML和OpenID Connect/OAuth2.0是企业领域
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 在单块应用的世界里,当我们遇到问题时,我们至少清楚从哪里开始调查。网站访问速度?网站访问异常?CPU占用过高?这些都是单块应用程序的问题,单一的故障点会极大地简化对问题的排查。 而现在我们面对了多个微服务,我们需要多个服务器、多个服务来完成我们的功能。那么
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 一.测试象限(Brain Marick) 二.测试金字塔(Mike Cohn) 1.单元测试 通常只测试一个函数或方法调用,通过TDD或者基于属性而写的测试就属于这一类,在UnitTest中,我们不会启动服务,对且对外部文件和网络连接的使用也很有限,通常我
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 一.CI(Continuous Integration)简介 CI规则1:尽量频繁地把代码签入到分支中以进行集成 CI规则2:不光要对语法进行验,也要提供一系列的自动化来验证 CI规则3:CI失败后,要把修复CI当做第一优先级的事情 说明:作为CI流程的一
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 通常,我们可能已有有一个巨大的单块系统,如何实现微服务,我们需要把它分解。 从哪里开始拆分:接缝 接缝:从接缝处可以抽取相对独立的一部分代码,对这部分代码的修改不会影响系统的其他部分。这些接缝就可以作为服务的边界。 那如何识别出接缝呢?我们可以使用前面所提
阅读全文
摘要:在微服务集成——《微服务设计》读书笔记文章中,我们说过服务间的消息传递有几种方式,一种是请求/响应技术,另一种是基于事件的机制。 RPC(远程过程调用) RPC是Remote Procedure Call的简称。 这是请求/响应技术的一种,它使用本地调用的方式和远程进行交互,如SOAP、Thrift
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 一.理想的集成应该是什么样的? 1.避免破坏性修改 如果在一个微服务的响应中添加一个字段,服务的消费方不应该受到影响。 2.保证API的技术无关性 微服务之间的通信应该是与技术无关的。 3.使服务的消费方易于使用 如果消费方使用该服务比登天还难,那么无论该
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 什么样的服务才是好的服务? 高内聚、松耦合的服务才是好的服务。简而言之,就是把相关性强的放在一起,相关性不强的分开,物以类聚,人以群分,服务的划分也是这样。这就需要确定什么要放在一起,什么是要分开的,这个寻找的过程就是确定服务边界的过程。 限界上下文 限界
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 如何定义架构师 架构师从英文单词Architect翻译而来,在英文中,Architect原来的意思是“建筑师”。作者吐槽英文中架构师与传统的建筑师单词相同,但实际的工作性质并不相同,以致于在英文的语境中会造成理解上的差异。 传统的建筑师在设计建筑时要求极端
阅读全文
摘要:系列文章目录: 《微服务设计》读书笔记大纲 《领域驱动设计》(Eric Evans):告诉我们用代码呈现真实世界的重要性,并且告诉我们如何更好地建模。 持续交付理论:如何更有效及更高效地发布软件品,并指出保持每次提交均可发布的重要性。 六边形架构理论(Alistair Cockburn):把我们从分
阅读全文
摘要:本文地址:http://yunjiechao-163-com.iteye.com/blog/2126981 当一个开发人员提升计算机系统负荷时,通常会考虑两种方式垂直扩展和水平扩展。选用哪种策略主要依赖于要解决的问题 以及系统资源的限制。在这篇文章中我们将讲述这两种策略并讨论每种策越的优缺点。如果你
阅读全文

浙公网安备 33010602011771号