天增的博客
首页
博客
  • 分布式解决方案
  • Java并发工具包
  • redis
  • LeetCode
  • 系统设计
  • JVM体系
Github (opens new window)
Rss (opens new window)
  • zh-CN
  • en-US
首页
博客
  • 分布式解决方案
  • Java并发工具包
  • redis
  • LeetCode
  • 系统设计
  • JVM体系
Github (opens new window)
Rss (opens new window)
  • zh-CN
  • en-US
  • 系统设计
  • 概念
    • 关系
    • 区别
    • 总结
    • 单体架构
    • 微服务架构
  • 4S分析法
  • 样例
    • 微博架构设计
    • 短链系统
    • 秒杀
  • 每个程序员都应该知道的延迟数字
  • Flux架构
  • Http进化史
  • 系统常见故障
  • 负载均衡方案
  • topic
  • 系统设计
  • 概念
2022-06-15
目录

概念

# 概念

# 数据库系统 VS 文件系统

# 关系

数据库系统是文件系统的一层包装,他们不是独立的关系,而是依赖的关系。

数据库系统依赖于文件系统。

# 区别

数据库系统提供了丰富的数据操作,相比于文件系统更加的细粒度。

文件系统只提供了简单的文件操作接口,相比于数据库系统更加的粗粒度。

在关系型数据库上,提供了SQL语句可以快速的从文件系统中取出想要的数据。

但是,在文件系统上,想查询到想要的数据,就可能需要遍历文件中的所有数据才能够找到。

# 总结

数据库系统中读取的数据,大部分情况下,都还是会到文件系统上读取出来,因此两个系统的读写效率可以认为是差不多的。

# 单体架构VS微服务架构

# 单体架构

  • 前后端耦合,服务压力大各功能模块耦合严重。

  • 系统复杂,一个子模块升级需要导致整个服务都升级

  • 扩展性差,难以针对某个模块单独扩展

  • 开发协作困难,同一个仓库异常庞大

  • 级联故障,模块故障导致服务不可用。

  • 瓶颈在数据库,数据库崩溃导致整个服务崩溃

# 微服务架构

功能模块结构,单一职责

系统简单,升级服务不影响其他服务

扩展性强,对某个服务单独扩容或者缩容

故障隔离,单个服务出现故障不影响其他服务。

基于RPC,可以选择不同服务进行组合、


单体架构优势

  1. 简单

  2. 开发时间短

  3. 适合访问量比较小的,系统要求不高的场景

    OA办公系统,100个人使用

最近更新
01
以 root 身份启动 transmission-daemon
12-13
02
Debian系统安装qbittorrent-nox
12-09
03
LXC Debain12安装zerotier并实现局域网自动nat转发
07-29
更多文章>
Theme by Vdoing | Copyright © 2015-2024 天增 | 苏ICP备16037388号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式