• _CountingStars
    2019-09-27
    memcached 官方没有提供集群特性,一般第三方会使用一致性哈希算法来进行负载均衡实现集群扩展。
    redis 官方的集群选择把数据根据key来哈希分配到固定数量的 slot 上,然后把 slot 再分配到具体的redis实例上来实现集群,当需要扩展时,只需要把 slot 分配一些到新加入的 redis 实例即可。这种多加一层来实现集群扩展的方式,类似于我们数据库分表时使用的索引表。

    作者回复: 👍👍👍👍

     2
     14
  • coffee
    2019-09-27
    关系型数据库是强schema约束,并且支持事务,所以扩展性相对较差。
    NOSQL一般都不是强schema约束的,所以可扩展性比关系型数据库要好。

    作者回复: 不只是schema free,还在于支持auto sharding

    
     12
  • A.Windy
    2019-09-29
    这不就是微服务嘛😄

    作者回复: 是的哦

    
     6
  • 岁寒
    2019-10-16
    很很有感触,最近在做微服务拆分,面试过许多人,他们做拆分,是按照接口拆分,并不会按业务拆分,在我自己做的时候,就很容易发现,按业务确实不好拆。但是拆分的纬度不仅仅是业务,还有并发,比如块业务,是读多,还是写多,也可以按照这个纬度来分,在存储层,如果上层用redis做缓存,下层是mysql,也可以按redis拆,还是共mysql库
    架构就是折中。
    
     5
  • xu晓晨
    2019-09-30
    redis扩展主要两方面。主备方案以及集群方案。
    主备的话可以用redis的sentinel(哨兵)方案主要是解决redis主节点故障后的自动切换。它负责持续监控主从节点的健康,当主节点挂掉时,自动选择一个最优的从节点切换为主节点。
    集群方案的话主流的是两种 一种是codis另一种是redis官方提供的cluster。

    作者回复: 👍

     1
     5
  • hailong
    2019-10-09
    为了一个服务就要一个库? 本次课程举的例子一个数据库分不同的表就行了,没懂分库啥意思

    作者回复: 分表的话还是不是在一个机器上,突破不了单机的限制

    
     3
  • helloworld
    2019-10-07
    系统的易扩展之从存储和业务拆分来考虑。业务拆分是容易理解的,专人专事;从存储角度来考虑我想是因为所有应用的功能的最终的结果都是把一些结果存储起来,于是存储就是重点,是重点就必然引起量大,量大了必然成瓶颈。打卡04。

    作者回复: 是的

    
     2
  • Christopher
    2020-01-17
    看的是真过瘾,很有逻辑和条理性,不像一些课程要么都是曲高和寡的技术细节,要么都是泛泛白话

    作者回复: 感谢您的支持和肯定,预祝新年快乐,事事如意

    
     1
  • Hwan
    2019-10-29
    看评论说auto shard ,最近在看redis,redis通过哨兵做主从备份和主从迁移,通过集群做增加主节点和减少主节点的事情,基本可以做好自动扩容和缩容了,请问下关系型数据库里面有类似的吗,能够实现自动的扩容之类的,还是说必须需要人工来呢

    作者回复: 需要制定迁移方案,加餐中有介绍哦

    
     1
  • 吃饭饭
    2019-10-08
    两个问题:
    1)尽量不适用事务,这里是不是需要使用分布式事务?类似于使用消息中间件等?
    2)图示中的`池`指的是单个的微服务吗?我第一次听说这个概念,希望老师帮忙回答:)

    作者回复: 1. 其实我还没有遇到什么场景是必须要使用分布式事务的,以前做过的社区产品对一致性的要求不是很高
    2. 池子指的是一组服务器组成的集群,比如用户池就是这个集群只提供用户相关的功能

    
     1
  • Star
    2019-10-02
    预测未来的数据库一定会综合ES+MONGODB的能力,直接选择库的模式就可以像NOSQL一样使用。

    作者回复: 这样看你团地的运维能力了

    
     1
  • ub8
    2019-09-28
    坐等干货

    作者回复: :)

    
     1
  • 飞翔
    2019-09-27
    老师。不太理解什么是池? 用户池 里是一台机器还是多台机器呀?

    作者回复: 池子就是一组机器组成的集群

     3
     1
  • JOHN
    2020-02-07
    查阅了一些资料,我发现作者对于可扩展和网上大部分的解读不一样,网上的解读是架构上要封装变化,以此实现对扩展开放(开闭原则),我更加认同网上的解读,我觉得作者的这个解读更加适合 可扩容 这个词。概不过话说回来,可扩容也给我们读者提供了一个新的视角来看系统,也很棒的。
    
    
  • YY
    2019-12-17
    数据库拆分后,但是各个库还是有相互依赖的,比如关系池,内容池都会依赖用户池,这种相互依赖的关系怎么解决?

    作者回复: 梳理依赖关系,如果有相互依赖的话,看看能不能拆出更基础的服务,让其他服务都依赖它

    
    
  • 大龄程序员在线治掉发
    2019-12-16
    按模块拆分,可以理解为业务分库吧,但是在一些关系型数据库的老系统,太多的关系查询,改起来也是个蛋疼得问题

    作者回复: 确实,改造老系统极为蛋疼

    
    
  • 丁丁历险记
    2019-12-02
    拆分的关键, 信息正交。
    
    
  • Panda
    2019-11-29
    拆服务 冷热隔离
    
    
  • 雷霹雳的爸爸
    2019-11-05
    按文中描述,如果NoSQL有这种优势得话,应该主要体现在分片和自动数据迁移的能力上,这块儿还真不熟,一直觉得就是支持这两个功能,实现起来也挺难的,有很多的中间状态要考虑对外响应过程中的一致性问题,依然是一个巨大的挑战,先往后看...

    作者回复: 其实也不难,实现方式大同小异

    
    
  • XD
    2019-11-01
    redis相关的书籍或者博客有推荐吗?前段时间刚看了一个分布式锁的文章,收获很大。

    作者回复: 可以看看黄建宏的redis设计与实现

     2
    
我们在线,来聊聊吧