news 2026/4/18 7:37:26

服务架构相关知识及演进

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
服务架构相关知识及演进

1. 基本概念

  • 应用(Application)/ 系统(system)
    完成一整套服务的一个程序或一组相互配合的程序群

  • 模块(Module)/ 组件(Component)
    应用程序复杂时,会将其划分不同的部分,这种有清晰职责,内聚性强的部分,就模块。
    例如:单细胞生物只靠一个细胞就能生存,而人这样的生物,却有不同的器官和组织,分别负责不同的功能。

  • 分布式(Distributed)
    系统中的模块不在同一服务器上,就是分布式系统。

  • 集群(Cluster)
    部署于多台服务器上,实现某一特定目标的组件,的这一个整体称为集群。
    如:将多个 mysql 部署到不同服务器上,共同提供数据库相关服务,就可以称为一组数据库集群。

  • 主(Master)/ 从(Slave)
    集群中,通常有一个要承担相对更多的职责,称为主,其余承担附属职责的称为从。
    如:MySQL集群中,一台服务器上允许数据的写入,其他数据库的数据变动是从该台中同步来的,这里允许写的就是主,其余为从

  • 中间件(Middleware)
    一类用于不同应用相互通信的软件,即不同技术,工具,数据库间的桥梁。
    如:饭店的前台就是顾客和后厨的中间件,负责将顾客要的菜转达给后厨。

  • 评价指标(Metric)

    • 可用性(Availability)
      单位时间内,系统正常服务的值 / 期望值。
    • 响应时长(Response Time RT)
      用户完成输入到系统给用户响应的时长。
    • 吞吐(Throuhput)vs 并发(Concurrent)
      吞吐:单位时间段内,系统可成功处理的请求数
      并发:系统同一时刻支持的最大请求量

2. 架构演进

2.1 单机架构

所有服务全在一台服务器上

2.2 应用数据分离架构

应用和数据库部署在不同服务器上,应用服务通过网络访问数据

2.3 应用服务集群架构

将应用服务部署到多台服务器上,构成集群。
通过算法,进行流量分配给集群中的服务器。
常见算法:

  • Round—Robin 轮询算法:平等的将请求分发给不同服务器
  • Weight—Round——Robin 轮询算法:不同服务器赋不同权重,进行请求分别
  • 一致哈希散列算法:通过计算用户的特征值(如 IP 地址)得 哈希值,根据哈希值分发请求,优点:相同客户的请求总是被分给指定的服务器

2.4 读写分离/主从架构

保留⼀个主要的数据库作为写入数据库,其他的数据库作为从属。
数据库。从库的所有数据全部来自主库的数据,经过同步后,从库可以维护着与主库⼀致的数据。

2.5 引入缓存——冷热分离架构

读取频率远大于其他数据的称为热点数据,相对的则是冷数据。
将热点数据存入缓存中,一方面可以提升读取响应时间;另一方面,在请求到数据库前就被处理了,降低数库压力。

2.6 垂直分库

将不同业务的数据存储到不同的数据库中,在这一类数据放在多个数据库中。

2.7 业务拆分 — 微服务

将不同业务进行拆分,每个业务有自己的缓存和存储,不同业务间数据不能直接访问,业务间通过 Gateway,消息总线等技术,相互调用关联。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 20:29:00

Ascend C 与 CUDA 的对比分析-为异构计算开发者提供迁移指南

目录 🎯 摘要 1. 架构哲学:两种不同的AI计算世界观 1.1 🔄 从"通用加速"到"AI原生"的范式转移 1.2 🏗️ 硬件架构的本质差异 2. 编程模型对比:从线程到任务块的范式革命 2.1 ⚙️ CUDA的线程…

作者头像 李华
网站建设 2026/4/18 2:59:57

PPO是属于什么类型的RL算法,on policy还是off policy

PPO是属于什么类型的RL算法,on policy还是off policyPPO(Proximal Policy Optimization)属于 on-policy 的强化学习算法。结论一句话👉 PPO 是 on-policy 的策略梯度(Policy Gradient)方法,而不…

作者头像 李华
网站建设 2026/4/18 6:25:10

压缩文件夹下下所有文件成压缩包tar.gz--随笔016

你需要将指定文件夹下的 ** 所有文件(包含子文件夹及其中文件)** 打包并压缩为tar.gz格式,我会提供具体的终端命令、参数解释和注意事项,适用于 Linux/macOS 系统(Windows 可使用 Git Bash、WSL 或 7-Zip 执行&#xf…

作者头像 李华
网站建设 2026/4/18 6:25:07

古风权谋动态漫制作2025推荐,多维度解析

古风权谋动态漫制作2025推荐,多维度解析在当今的文化创意产业中,古风权谋动态漫以其独特的魅力吸引了众多观众的目光。然而,制作一部高质量的古风权谋动态漫并非易事,需要综合考虑多个维度。那么,如何才能制作出一部优…

作者头像 李华
网站建设 2026/4/17 22:05:05

Zotero下载安装保姆级教程(附官网正版安装包,非常详细)

Zotero 是一款完全免费、开源、跨平台的文献管理工具,支持 Windows、macOS、Linux 三大桌面系统,也有官方 iOS 客户端。 Zotero 的核心任务只有一件,把你在网页、数据库、图书馆目录、PDF 文件里看到的学术资源,一键抓下来&#…

作者头像 李华
网站建设 2026/4/1 12:42:14

【开题答辩全过程】以 基于微信小程序的生活社区平台的设计与开发为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…

作者头像 李华