互联网架构演进之路(上)

简介: 互联网架构演进之路(上)

前言


本文介绍下 互联网架构演进的4个阶段
1、单体架构
2、水平分层和面向服务架构(SOA)
3、微服务架构
4、服务网格架构(Service Mesh)
在此之前先简单介绍一个小知识点

redis做分布式锁弊端

redis实现分布式锁 哨兵模式下 会导致 一个锁同时被多个线程持有


image.png


分布式锁是CP模型 Redis是AP模型 用AP实现CP完全错误的

用ZK实现分布式锁 有性能问题

推荐使用etcd来实现分布式锁


互联网发展


  • pc互联网
静态 广播式
  • 移动互联网
动态 互动 比如微博关注
  • 物联网
万物连接 
比如微信群组 将一对一变成一对多 形成了网络


架构演进



单体

image.png


优点

开发、测试、部署、扩展 都很方便

扩展

image.png


应用场景

  • 功能不复杂 研发人员少
  • 创业初期
  • 性能要求极其苛刻
性能: 吞吐量、平均响应延迟
这里主要指平均响应延迟 
比如股票、高频交易 需要及时捕捉到股票市场一些波动

缺点

  • 系统耦合性高
  • 技术选型单一
比如开发语言单一
  • 开发效率越来越低


水平分层


要解决这些问题 咱们先看看数据库是如何破局的 然后再类比到架构上

数据库如何解决单体瓶颈


拆分

  • 按业务垂直分库
比如 用户库 商户库
但还是单表
  • 水平拆分(分表)
比如 模1024 分1024表


db做了拆分 所以要考虑分布式事务

架构同理


水平分层架构设计

  • 垂直方向拆分
按业务维度
  • 水平方向拆分


物理分成多个独立进程

按功能纬度:网关层、业务逻辑层、数据访问层、数据存储层


每层逻辑解耦

数据访问层必须拆分出来 可以屏蔽掉分库分表逻辑和兼容不同的数据库(比如关系型、非关系型、NewSql)

image.png

image.png展示服务和网关服务分离举例

网关返回的发布时间是时间戳格式
展示层(APP)将时间戳转换成具体的日期格式
而非网关返回具体的日期格式

网关层功能

image.png



相关文章
|
XML 数据库 数据格式
微服务技术系列教程(15) - SpringCloud - 互联网网站架构演变过程
微服务技术系列教程(15) - SpringCloud - 互联网网站架构演变过程
82 0
|
5月前
|
数据库 Java 数据库连接
Hibernate 实体监听器竟如魔法精灵,在 CRUD 操作中掀起自动化风暴!
【8月更文挑战第31天】在软件开发中,效率与自动化至关重要。Hibernate 通过其强大的持久化框架提供了实体监听器这一利器,自动处理 CRUD 操作中的重复任务,如生成唯一标识符、记录更新时间和执行清理操作,从而大幅提升开发效率并减少错误。下面通过示例代码展示了如何定义监听器类,并在实体类中使用 `@EntityListeners` 注解来指定监听器,实现自动化任务。这不仅简化了开发流程,还能根据具体需求灵活应用,满足各种业务场景。
50 0
|
5月前
|
NoSQL API 数据库
揭秘!Flask如何一键解锁RESTful API高效微服务?打造未来互联网架构的隐形力量!
【8月更文挑战第31天】本文介绍如何使用 Flask 构建高效且易维护的 RESTful 微服务,涵盖环境搭建、基本应用创建及代码详解。通过示例展示用户管理系统的 CRUD 操作,并讨论数据库集成、错误处理、认证授权、性能优化及文档生成等高级主题,助力开发者打造强大的后端支持。
81 0
|
5月前
|
边缘计算 安全 物联网
未来互联网架构的演变
【8月更文挑战第16天】随着科技的不断进步,互联网作为现代社会不可或缺的基础设施,其架构也在不断地发展与演变。本文将探讨未来互联网架构可能的变化方向,包括边缘计算、软件定义网络(SDN)、网络功能虚拟化(NFV)等技术趋势,以及这些技术如何影响互联网的稳定性、安全性和效率。同时,文章还将讨论这些变革对用户隐私保护和数据治理的潜在影响,并展望互联网架构的未来发展趋势。
|
5月前
|
设计模式 安全 网络安全
|
7月前
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
网络编程中的互联网协议 , IP地址 , 域名 , 端口 , 架构 , 网页数据请求 , 响应码
|
8月前
|
架构师 开发工具 C++
最新python--类与面向对象-1,一线互联网架构师360°全方面性能调优
最新python--类与面向对象-1,一线互联网架构师360°全方面性能调优
最新python--类与面向对象-1,一线互联网架构师360°全方面性能调优
|
7月前
|
存储 缓存 网络协议
互联网架构与通信机制:从边缘到核心的深度解析
互联网架构与通信机制:从边缘到核心的深度解析
196 0
|
8月前
|
存储 Java 应用服务中间件
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
【分布式技术专题】「架构实践于案例分析」盘点互联网应用服务中常用分布式事务(刚性事务和柔性事务)的原理和方案
203 0
|
8月前
|
存储 缓存 监控
【分布式】大型互联网项目架构目标
【1月更文挑战第25天】【分布式】大型互联网项目架构目标