1. 环境说明 vip ip 操作系统 nginx端口 主从说明 192.168.115.150 192.168.115.148 CentOS Linux release 7.6.1810 (Core) 8443 主节点 192.168.115.150 192.168.115.149 CentOS ...
背景 在分布式系统中异步创建实体既是挑战也是优势,尤其是对于追求可扩展性、容错性和高效用户体验的大型企业而言。用于创建实体的异步(async)管道可以解耦服务、优雅地处理故障并最大限度地减少延迟。这些特性使企业能够在扩展过程中保持灵活、高性能的系统。让我们深入探讨构建有效管道的优势、挑战和解决方案。 ...
大家好,我是汤师爷~ 今天系统性地聊聊SaaS应用架构设计。 应用架构概述 我们已经完成了SaaS系统的定位分析,明确了系统的目标和核心能力。这为接下来的应用架构设计奠定了基础。 应用架构就像整个SaaS系统的骨架,决定了系统的整体结构和各个组件之间的关系。接下来,我们会深入探讨应用架构的三个核心要 ...
大家好,我是汤师爷~ 应用交互是指不同应用结构之间的数据交换和通信方式。 在一个复杂的系统中,各个应用并不是孤立存在的,它们往往需要相互协作,才能完成更复杂的业务流程。 应用交互的设计就是为了确保这些系统和组件能够顺畅地“对话”,实现系统整体目标。 应用交互的形式有多种,包括同步调用、异步消息通信等 ...
大家好,我是汤师爷~ 应用架构设计通常包括以下步骤: 根据业务架构,将业务需求转化为IT系统,识别核心应用服务。 划分应用结构,设计应用结构与业务流程、数据之间的关系。 设计应用结构之间的交互和集成关系。 本文主要分享一下应用服务、应用结构设计设计。 应用服务设计 应用服务的概念 应用服务是对一个或 ...
一、前言 本文介绍一下Kafka赫赫有名的组件Purgatory,相信做Kafka的朋友或多或少都对其有一定的了解,至少是听过它的名字。那它的作用是什么呢,用来解决什么问题呢?官网confluent早就有文章对其做了阐述 https://cwiki.apache.org/confluence/pag ...
大家好,我是汤师爷~ 近年来,越来越多的零售企业大力发展全渠道业务。在销售额增长上,通过线上的小程序、直播、平台渠道等方式,拓展流量变现渠道。在会员增长方面,通过多样的互动方式,全渠道触达消费者,扩大会员规模。而全渠道的库存管理,逐渐变成零售商在渠道运营方面的核心活动,也是提高库存周转率,保证利润的 ...
大家好,我是汤师爷~ 今天聊聊开放平台架构设计。 为什么需要搭建开放平台 增强产品能力 开放平台能够让三方开发者和合作伙伴开发新的应用或服务,增加原有SaaS产品能力。这样就可以满足更多用户需求,从而提高用户的满意度和黏性。 促进创新 三方开发者能够在SaaS标准产品的基础上,创造新的解决方案,为平 ...
什么是多租户? 多租户是SaaS领域的特有产物,在SaaS服务中,租户是指使用SaaS系统的客户,租户不同于用户,例如,B端SaaS产品,用户可能是某个组织下的员工,但整个企业组织是SaaS系统的租户。 多租户技术是一种软件架构技术,可以实现多个租户共享系统实例,并且租户间能够实现数据与行为的隔离。 ...
1 目标与步骤 2 价值流分析 2.1 从价值主张到价值流 2.2 价值流的概念 2.2 价值流如何识别? 2.3 价值流阶段如何识别? 3 业务流程 3.1 业务流程的概念 3.2 端到端流程 3.3 职能流程 3.4 示例:零售企业的业务流程 4 业务能力 4.1 业务能力的概念 4.2 业务能 ...
说在前面 在如今的高并发互联网应用中,如何确保系统在巨大的流量冲击下还能稳稳当当运转,是每个技术团队都会遇到的挑战。说到这,消息队列(MQ) 就是背后的“大功臣”了。 无论是异步处理请求、平滑应对流量高峰,还是让各个系统模块相互独立不“拖后腿”,MQ 都是不可或缺的帮手。那么,MQ 是怎么削峰的?或 ...
Spotify 是世界上最受欢迎的音乐流媒体平台,每月活跃 用户 (MAU) 超过 6 亿,付费用户超过 2 亿。在本文中,我们将学习如何设计 像 Spotify 这样的音乐流媒体服务,该服务每天可以处理数以百计的数百万用户和数十亿个音乐流,确保低延迟和高可用性。1.需求收集功能需求在深入研究设计之 ...
1. 基本信息 构建可扩展分布式系统:方法与实践 [美]伊恩·戈顿(Ian Gorton)著 机械工业出版社,2024年5月出版 1.1. 读薄率 书籍总字数188千字,笔记总字数49688字。 读薄率49688÷188000≈26.4% 1.2. 读厚方向 设计模式:可复用面向对象软件的基础 程序 ...
1. 可扩展系统的基本要素 1.1. 分布式系统在本质上就是复杂的,你必须考虑多种故障模式,并设计应对所有可能发生的情况的处理方式 1.2. 大规模应用程序需要协调大量的硬件和软件组件,共同实现低延迟和高吞吐量的能力 1.3. 面临的挑战是将所有活动部件组合成一个应用程序来运行,使其既能满足需求又不 ...
1. 流处理系统 1.1. 时间就是金钱 1.1.1. 从数据中提取有价值的知识和获得洞见的速度越快,就能越快地响应系统所观察的世界的变化 1.1.2. 信用卡欺诈检测 1.1.3. 网络安全中异常网络流量的捕获 1.1.4. 在支持GPS的驾驶应用程序中进行的实时路线规划 1.1.5. 社交媒体网 ...
1. 可扩展的事件驱动处理 1.1. 使用消息传递系统进行通信,你可以创建松耦合的架构 1.1.1. 消息生产者只是将消息存储在队列中,而不用关心消费者如何处理消息 1.1.2. 有一个或多个消费者,并且生产者和消费者的集合可以随着时间的推移而改变 1.1.3. 有助于提高服务响应能力、通过缓存消除 ...
duxapp是基于Taro二次开发的模块化框架 使用这个框架,结合框架提供的UI库和工具库,能帮助你快速且高质量的完成项目,且能实现同时开发小程序、H5、APP(React Native),并且保证各个端的一致性 ...
云设计模式介绍以及它们如何帮助应对分布式计算的谬误 作为构建分布式系统的软件工程师,我们经常遇到诸如不可靠的网络、延迟问题和安全问题等挑战。"分布式计算的谬误"描述了如果未解决,可能导致系统故障的常见误解。但认识到这些陷阱只是开始。真正的问题是:我们如何有效地克服它们?这就是云设计模式发挥作用的地方 ...
1. Redis 1.1. 2009年首次发布 1.1.1. 更注重原始性能和简单性,而不是数据安全性和一致性 1.2. 主要吸引力在于它能够同时充当分布式缓存和数据存储 1.3. 维护一个内存中的数据存储,也称为数据结构存储(data structure store) 1.4. 配置Redis将每 ...
大家好,我是汤师爷~ 今天聊聊SaaS业务架构的业务能力分析。 业务能力概述 简单来说,业务能力是企业“做某事的能力”。 业务能力描述了企业当前和未来应对挑战的能力,即企业能做什么或需要做什么。业务能力建模的关键在于定义了企业做什么,而不是如何做(由业务流程描述)。 以人才招聘为例,大多数公司都需要 ...