美文网首页
常见系统架构设计

常见系统架构设计

作者: John13 | 来源:发表于2020-05-17 17:17 被阅读0次

feed流设计

如何打造千万级Feed流系统
Feed 流系统设计总纲

秒杀类的高并发设计

高并发系统的设计及秒杀实践

  • 系统拆分
    将一个系统拆分为多个子系统,用 dubbo 来搞。然后每个系统连一个数据库,这样本来就一个库,现在多个数据库,不也可以扛高并发么。

  • 缓存
    缓存,必须得用缓存。大部分的高并发场景,都是读多写少,那你完全可以在数据库和缓存里都写一份,然后读的时候大量走缓存不就得了。毕竟人家 redis 轻轻松松单机几万的并发。所以你可以考虑考虑你的项目里,那些承载主要请求的读场景,怎么用缓存来抗高并发

  • MQ
    MQ,必须得用 MQ。可能你还是会出现高并发写的场景,比如说一个业务操作里要频繁搞数据库几十次,增删改增删改,疯了。那高并发绝对搞挂你的系统,你要是用 redis 来承载写那肯定不行,人家是缓存,数据随时就被 LRU 了,数据格式还无比简单,没有事务支持。所以该用 mysql 还得用 mysql 啊。那你咋办?用 MQ 吧,大量的写请求灌入 MQ 里,排队慢慢玩儿,后边系统消费后慢慢写,控制在 mysql 承载范围之内。所以你得考虑考虑你的项目里,那些承载复杂写业务逻辑的场景里,如何用 MQ 来异步写,提升并发性。MQ 单机抗几万并发也是 ok 的,这个之前还特意说过。

  • 分库分表
    分库分表,可能到了最后数据库层面还是免不了抗高并发的要求,好吧,那么就将一个数据库拆分为多个库,多个库来扛更高的并发;然后将一个表拆分为多个表,每个表的数据量保持少一点,提高 sql 跑的性能。

  • 读写分离
    读写分离,这个就是说大部分时候数据库可能也是读多写少,没必要所有请求都集中在一个库上吧,可以搞个主从架构,主库写入,从库读取,搞一个读写分离。读流量太多的时候,还可以加更多的从库

  • ElasticSearch
    Elasticsearch,简称 es。es 是分布式的,可以随便扩容,分布式天然就可以支撑高并发,因为动不动就可以扩容加机器来扛更高的并发。那么一些比较简单的查询、统计类的操作,可以考虑用 es 来承载,还有一些全文搜索类的操作,也可以考虑用 es 来承载。

定时短信发送/email发送、定时执行任务

Redis实战之实现定时执行任务

断路器设计

Redis实战之限制操作频率

相关文章

  • UML--系统设计

    系统设计过程 系统设计步骤 步骤一:评估性能 常见的架构风格

  • 常见系统架构设计

    feed流设计 如何打造千万级Feed流系统Feed 流系统设计总纲 秒杀类的高并发设计 高并发系统的设计及秒杀实...

  • 订单整理设计

    架构 业务架构——根据业务需求设计业务模块及其关系 系统架构——设计系统和子系统的模块 技术架构——决定采用的技术...

  • 学习Linux的第三天

    CPU的常见架构:【两种设计理念】 精简指令集系统【RISC】Reduced Instruction Set Co...

  • 微服务、分布式、高并发都不懂,你拿什么去跳槽?

    微服务架构 BAT互联网架构这些年的演进分析 国内外常见分布式系统架构状况介绍 微服务架构指南:领域驱动设计DDD...

  • 01 | 架构到底是指什么?

    对于技术人员来说,“架构”是一个再常见不过的词了。我们会对新员工培训整个系统的架构,参加架构设计评审,学习业界开源...

  • 架构 - 收藏集 - 掘金

    浅谈秒杀系统架构设计 - 后端 - 掘金秒杀是电子商务网站常见的一种营销手段。 不要整个系统宕机。 即使系统故障,...

  • DDD领域驱动设计浅见

    目录 DDD简介DDD是啥DDD能给微服务带来什么不用DDD的常见设计方式DDD整洁架构常见三层架构设计整洁架构D...

  • iOS架构设计:动机

    在这一系列文章中,让我们来探讨如何创建自己的系统架构。 什么是系统架构? 系统架构是系统设计的最高层次。系统设计是...

  • 10种软件架构设计模式

    本文总结了10中比较常见的软件系统架构设计模式: 分层模式(Layered pattern) C/S模式(Clie...

网友评论

      本文标题:常见系统架构设计

      本文链接:https://www.haomeiwen.com/subject/ripsohtx.html