美文网首页
尔湾科技

尔湾科技

作者: wuhuaguo丶 | 来源:发表于2021-06-30 22:45 被阅读0次
    • 灰度发布是怎么做的?

    • SpringBoot的组件的加载机制?

    • SpringBoot starter的加载?有没有自己实现过Starter

    • 有没有了解过SPI

    • Java锁有没有了解过?

    • 乐观锁与悲观锁有没有在项目中使用过?

    • 分布式锁 redis zk 具体实现机制?

    • Redission如何解决redis分布式锁的缺陷?

    • 可用性系统的实时性?

    • 报警是怎样实现的?

    • MySQL索引的数据结构?

    • Hash索引和B树索引有什么区别?

    • hash索引是否可以进行范围查询?

    • MySQL 行级锁,表级锁?

    innodb 行级锁分为两种(共享锁(shared lock)读锁)和(排他锁(exclusive lock)写锁)
    读锁是共享的,或者说是互相不阻塞的。多个客户在同一时刻可以同时读取同一个资源,而互不干扰。
    写锁是排他的,也就是说一个写锁会阻塞其他的写锁和读锁,这是出于安全模式的考虑,只有这样,才能确保在给定时间内,只有一个用户能执行写入,并防止其他用户读取正在写入的同一资源。

    在一个事务中无论开启了排它锁还是共享锁,对于另一个事务中的普通查询(非锁查询)都是不影响的(可以查询出来的),因为普通查询没有任何锁机制

    如果事务A开启了排他锁
    事务B在执行的时候无论使用共享锁还是排他锁,都查询不出来

    如果事务A开启了共享锁
    事务B如果开启了共享锁,可以查询
    如果开启了排他锁,无法查询 因为排他锁与共享锁不能存在同一数据上。

    mysql InnoDb引擎中update,delete,insert语句自动加排他锁

    • 限流是怎么做的?限制的QPS还是限制的数

    • SpringCloud Alibaba有没有了解 dubbo gateway zuul

    • Kafka的限流是怎么做的?

    可以通过bin/kafka-configs.sh脚本来实现限流
    可以针对 user client-id (user,client-id)三个维度来配置限额。

    //配置user+clientid。例如,user为”user1”,clientid为”clientA”。
    bin/kafka-configs.sh  --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type users --entity-name user1 --entity-type clients --entity-name clientA
    //配置user。例如,user为”user1”
    bin/kafka-configs.sh  --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type users --entity-name user1
    //配置client-id。例如,client-id为”clientA”
    bin/kafka-configs.sh  --zookeeper localhost:2181 --alter --add-config 'producer_byte_rate=1024,consumer_byte_rate=2048' --entity-type clients --entity-name clientA
    

    相关文章

      网友评论

          本文标题:尔湾科技

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