一、引言什么是高可用高可用是指系统在面对各种故障和异常情况时,仍能够提供稳定、可靠的服务。对于企业和用户而言,高可用性是确保业务连续运行和用户体验的关键因素。 高可用系统能够降低因故障而导致的损失,提高用户满意度。高可用与微服务架构微服务天生具有分布式特性,有利于构建高可用系统。 通过微服务的自治性,可以实现部分服务的故障隔离,提高整体系统的可用性。本文主要 ......
63
0
0
2024-05-07
分布式架构设计设计分布式架构时,需要考虑以下几个关键思路和要点:弹性和可伸缩性:分布式架构应具备弹性和可伸缩性,能够根据负载情况自动调整资源分配。这可以通过采用水平扩展和自动化调度等技术实现。容错和高可用性:分布式系统应具备容错和高可用性能力,即使部分组件或节点发生故障,整个系统仍能正常运行。为了实现容错和高可用性,可以采用冗余备份、故障检测与恢复、负载均衡 ......
84
0
0
2024-03-20
来源:www.jianshu.com/p/df4fbecb1a4b1、秒杀业务分析 正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货;秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高;2、秒杀技术挑战 假设某网站秒杀活动只推出一件商品,预 ......
70
0
0
2024-03-03
👉导读对于人类的身体健康来说,“三高”是个大忌,但在计算机界,系统的“三高”却是健康的终极目标。本文将介绍一下流量治理是如何维持这种“三高”系统的健康,保障数据流动的均衡与效率,就如同营养顾问在维持人类健康饮食中所起的作用一般。👉目录1 可用性的定义2 流量治理的目的3 流量治理的手段4 总结01、可用性的定义在探讨高可用架构之前,让我们以 O2 系统为例, ......
77
0
0
2024-03-03
前言可以将某个项目或产品的架构体系按照如下方式分层:业务层面:项目业务体系技术层面:数据架构:数据持久层策略应用架构:应用层的实现方式部署架构:部署方式,自动化持续集成等策略针对每一层也随着时间的变化而变化。业务架构单体模式早期的互联网产品多为单体系统,特点是以业务为导向,往往形成业务团队各自为战,在新业务线出现时需求大量增长。这里补充部分业务模式的概念:B ......
82
0
0
2024-03-03
分布式架构是一种将系统拆分为多个独立的组件或服务,并在不同的计算节点上部署这些组件或服务的架构方式。它可以提供高性能和可用性的好处。下面我将详细介绍分布式架构在高性能和可用性方面的优势。高性能横向扩展:分布式架构可以通过增加计算节点来实现横向扩展,从而提高系统的处理能力和吞吐量。当系统负载增加时,可以简单地添加更多的计算节点来处理请求,而无需对整个系统进行大 ......
77
0
0
2024-03-02
作者介绍 李辉 ,原新浪爱彩票 运维 负责人,常用网名:门牙没了。曾主导新浪爱彩票的 MySQL 运维工作。培训合伙人、资深讲师,中国科学院大学在读研究生(大数据方向),擅长大型项目的关系型数据库运维和管理,现在在数据库运维自动化方向研究。随着MySQL自身的发展与不断完善,不知不觉中整个互联网行业已离不开这个完善又小巧的关系型数据库,整个生态链也已经变得非 ......
169
0
0
2023-10-30
一. 什么是架构和架构本质在软件行业,对于什么是架构,都有很多的争论,每个人都有自己的理解。 此君说的架构和彼君理解的架构未必是一回事。因此我们在讨论架构之前,我们先讨论架构的概念定义,概念是人认识这个世界的基础,并用来沟通的手段,如果对架构概念理解不一样,那沟通起来自然不顺畅。Linux有架构,MySQL有架构,JVM也有架构,使用 Java 开发、MyS ......
204
0
0
2023-09-18
为什么要分层 高内聚:分层的设计可以简化系统设计,让不同的层专注做某一模块的事 低耦合:层与层之间通过接口或 API 来交互,依赖方不用知道被依赖方的细节 复用:分层之后可以做到很高的复用 扩展性:分层架构可以让我们更容易做横向扩展 如果系统没有分层,当业务规模增加或流量增大时我们只能针对整体系统来做扩展。分层之后可以很方便的把一些模块抽 ......
179
0
0
2023-08-30
一 背景和问题 我个人平时会比较慎用“架构”这个词 一方面是觉得业界有很多架构大师和 架构模式 ,而我的认知和实践有限; 另一方面是因为这个词看着挺高大上、有点务虚,如果不结合实际场景的具体问题来讨论,容易陷入“PHP是最好的语言”这样的辩论赛中。而不同场景中又有各自的问题,程序员们通过自己的理解和思考、针对实际场景对一些架构模式进行了扩展实践,以 ......
162
0
0
2023-07-28
概述 今天的内容主要来自《软件架构模式》第一章,觉得还不错,所以分享给大家。分层架构 分层架构是一种很常见的 架构模式 ,它也叫N层架构。这种架构是大多数Jave EE应用的实际标准,因此很多的架构师,设计师,还有程序员都知道它。许多传统IT公司的组织架构和分层模式十分的相似。所以它很自然的成为大多数应用的架构模式。模式分析 分层架构模式里的组件被分成几个平 ......
298
0
0
2023-06-02
规整化本节讲解具体规整地方法,主要从接口设计、 编码 规范、集中配置、 Cookie 和 Session 、应用拆分和应用协调、日志6个方面进行深入讲解。在项目前期,后端架构需要充分考虑这几个方面。 注意: 规整化是要把握一个度的,标准太高会拖慢项目进度,标准太低又达不到规整的目的,所以后端架构需要根据实际的团队水平和项目周期制定规整化的标准。 接口设计后 ......
197
0
0
2023-05-30
在iOS中使用MVC时感觉怪怪的?对切换到MVVM有疑虑?听说过VIPER,但不知道是否值得?往下看,你将会找到这些问题的答案,如果还有疑问,请在评论区留言。你将了解到在iOS环境下如何进行系统架构设计。我们将简单回顾一些流行的框架,并通过实践一些小例子来比较它们的理论。掌握设计模式可能会让人上瘾,所以要小心:你可能在阅读这篇文章之前已经问过自己一些问题,比 ......
448
0
0
2023-05-02
把书读薄之『从0开始学架构』0、引语小到某个功能的开发方案,大到整个业务的系统设计,都可以看到架构设计的影子,但是架构设计的目的到底是什么?『从0开始学架构』的作者给我们的解答是:架构设计的主要目的是为了解决软件系统复杂度带来的问题。这里其实有两个重点:一是问题,二是解决。首先得知道我们要解决的问题在哪里?面前的系统到底有什么复杂度导致的问题?只有知道了问题 ......
218
0
0
2023-04-04
目录背景术语对齐探索如何优雅地提供接口调用?怎样封装多个不同类型的H5容器容器?整体架构通用容器框架容器基础组件这样的架构能带来什么样的好处?背景大家如果经历过Hybrid项目的开发,即项目中涉及到H5与Native之间的交互,那么很有可能会遇到各种各样的H5容器。为什么会有那么多各种各样的容器呢...这也是轮子多的通病了,轮子多到业务方不知道选哪个。当然, ......
359
0
0
2023-02-04