架构300讲笔记101-200集

101结合操作系统如何理解java代码怎么运行

102 某读书会Redis 大Key引发的线上事故分析总结

大key指的是百kb左右的键值对。

103 10分钟大白话Oauth2.0执行流程

104 懒人神器,一行命令为你程序引入监控系统

105 爆肝14小时只为2个硬币,一份复制粘贴就可以的,MySQL MGR高可用架构踩坑实录

106 领导让你出报表,MySQL不好弄,ES聚合功能了解下!

107 不用MQ如何保障消息传递的可靠性

108 智商没问题就能看懂!利用一致性Hash解决MySQL分库扩容难题

109 服务化架构、SOA、微服务到底有什么关系?

单点:all in one,
优点:简单;
缺点:不具备高可用,一台宕机玩完。
集群:多个单点,或多微服务模块。
优点:
缺点:
分布式:a+b+c = 单点,分散部署在不同的机器上的。
soa:面向服务架构。
微服务:a=b+c,d=e+f,g=h+i,将abc拆分成6个微服务。

微服务相比分布式服务来说,它的粒度更小,服务之间耦合度更低,由于每个微服务都由独立的小团队负责,因此它敏捷性更高,分布式服务最后都会向微服务架构演化,这是一种趋势。

面向服务架构如果一句话来谈SOA和微服务的区别,即微服务不再强调传统SOA架构里面比较重的ESB

架构300讲笔记101-200集_第1张图片

110 看不懂你捶我,ProxySQL实现MySQL读写分离的原理

proxySQL官网

111 什么是高可用架构的脑裂问题,Redis如何解决的?

主服务器和sentinel网络出现了问题,会重新选举出master节点,
解决方案:两个参数 min-slaves-to-write 配置主库进行数据 同步时最小从库数量
min-slaves-max-log设置主从库之前数据复制的最大延迟

112 高频面试题,MySQL读写分离后,先写后查如何保障一致性?

方案一,先写后查,字段全量写入不自动生成。
方案二,延迟查询,不好预估预留时间,可以作为临时方案。
方案三,读写分离框架,如sharding jdbc等。
方案四,MGR全同步复制,强一致性。

114 时代在进步,使用Redis6客户端缓存解决多级缓存一致性难题!

待完善,先了解多级缓存后补充

115 我为什么不建议利用Docker部署MySQL数据库

应用场景,数据存储节点是少量而稳定的,大多数场景并没有灵活扩容的需求。
待完善

116 如何优雅的保存mysql数据变更历史?

工具:阿里的canal
存储数据库MongoDB
将订单id%n将json写入分片
github canal

117 遇到瞬时流量洪峰如何保障系统不会被瞬时击垮?

场景:整点秒杀、春运抢票等等场景。
工具:阿里的Sentinel
流控规则采取预热模式,warm up,逐渐提升阈值来给系统留出缓冲时间。
使用方法可以参考我之前的一篇博客
Spring Cloud + Sentinel实现服务流量控制、熔断降级

118 DDD

119 工作实例,几万行Excel批量导入如何优化?

120 MySQL什么时候需要分库分表,又有哪些新问题?

单表数据量超过1000w,或者单表数据文件 .ibd文件超过20GB。
分表方法:
范围法:假设有300个数据,1-100 第一个表,101-200第二个表,201-300第三个表。
哈希法:id取模3,进行分表。
单库多表:有效缩小磁盘的扫描范围。
多库多表:提高并行能力。
挑战:
分布式事务问题,跨库join关联查询,跨节点分页查询问题,全局主键id问题,扩容问题。

121 用一个金融案例解释为什么需要分布式锁?

参考 Redis分布式锁的使用和Apache JMeter使用

122 不只setnx,两张图说清Redisson的Redis分布式锁实现

123 爆赞!商品秒杀巧用Redis与Lua预防库存超卖~

125 眼不瞎就能发现慢SQL瓶颈,Visual Explain可视化执行计划快速上手

126 不用端口映射,更易维护,Macvlan让Docker容器可以IP直连

127 用好了性能直接起飞,基因法与倒排索引在MySQL分库分表的应用

128 15年YRD项目上线即崩溃,浅析DDOS攻击的攻与防

129 Redis在项目中的设计规范、内存保障与安全选项

130 好货分享,猿辅导直播平台业务服务器架构有哪些战术设计?

132 写了份傻瓜文档,20分钟上手阿里Canal数据同步中间件

133 牛逼!200毫秒干到10毫秒,利用MySQL JSON特性优化千万级文库表

134 请简述RocketMQ消息存储与检索原理

136 写了份傻瓜文档,20分钟上手高可用神器KeepAlived

137 我为什么今年会押宝服务网格Service Mesh与Google Istio

138 为什么我也赞同低代码LowCode是行业毒瘤!

139 分布式架构设计,RPC与REST两种通信方式该怎么选?

选择rpc的几个考量,性能、对内。
选择rest几个考量,简单,对外。

140 非常实用!Spring AOP与自定义注解实现共性需求

141 试试水,案例分享下我是如何分析实体与设计表关系的

142 简单粗暴,20分钟ShardingJDBC 5实现MySQL分库分表

143 利用Elasticsearch的Completion Suggester实现搜索智能提示

144 18倍效率提升,1700万MySQL单表全表扫描优化与分析

145 坑替你踩好了,CV就行,分享一份Docker与Docker Compose安装文档

146 白话讲解Redis分布式锁Redlock

147 Spring Boot 3要来了,新的技术栈给我们哪些新启示?

148 腾讯万亿级 Elasticsearch 架构实践

150 不再纠结,白话讲解Docker五种网络模式与应用场景

151 Redis发布订阅机制是如何实现的?

152 阿里Seata分布式事务AT、TCC、SAGA、XA模式到底该怎么选?

153 超级实用!十分钟掌握Prometheus与Grafana监控SpringBoot应用

154 如何利用Docker快速构建基于Prometheus的MySQL监控系统

155 超实用高并发优化技巧,同步转异步,单条转批量,QPS2000干到8000

156 开个脑洞,4.2版本后有没有可能用MongoDB替代MySQL?

157 从计数器到令牌桶,四种经典限流算法到底是如何实现的?

158 HTTP2白话解析之Header数据压缩原理

159 个人经验向,我为什么强烈推荐客户端负载均衡器!

160 1000万卡数据从3秒提升干到21毫秒,150倍!我们如何利用bitmap优化工行储蓄卡业务

161 日均30万订单,支持读写分离与分库分表,我会怎么做?

162 1.20版Kubernetes(K8S)彻底放弃Docker,Docker还有学习的必要吗?

163 基于Java与ElasticSearch7实现多条件复合查询

164 以工行POS消费统计为例,海量数据下时间换时间的T+1优化方案

165 分布式事务XA没那么不堪,聊聊阿里Seata对XA的支持

166 MongoDB、Elastic全家桶还能免费用吗,5分钟带你了解开源协议

167 聊聊OLTP与OLAP数据库的区别与应用场景

168 牛P~性能提高3倍,微服务架构是时候升级到Nacos 2.x了

169 超级实用,REST接口多层嵌套动态JSON该如何解析?

170 如何优雅的设计RESTful API接口

171 SpringBoot利用MockMVC实现Web单元测试

172 精心整理~横向对比三种不同分布式架构调用方案

173 学到就是赚到,利用MySQL8新特性实现无限层级依赖SQL查询

174 简单粗暴但非常有效,利用Spring Boot Admin快速构建应用监控平台

github spring-boot-admin官方地址

Spring Boot Admin Reference Guide

server

第一步:添加依赖

        
        <dependency>
            <groupId>de.codecentricgroupId>
            <artifactId>spring-boot-admin-starter-serverartifactId>
            <version>2.4.2version>
        dependency>

第二步:主启动类新增注解

@EnableAdminServer

第三步:配置文件

server:
  port: 8090
spring:
  application:
    name: admin-server

client

        
        <dependency>
            <groupId>de.codecentricgroupId>
            <artifactId>spring-boot-admin-starter-clientartifactId>
            <version>2.4.2version>
        dependency>

第二步:配置文件

server:
  port: 8091
spring:
  application:
    name: admin-client
  boot:
    admin:
      client:
        url: http://localhost:8090

management:
  endpoints:
    web:
        exposure:
          include: '*'

效果图

架构300讲笔记101-200集_第2张图片
架构300讲笔记101-200集_第3张图片

多实例

架构300讲笔记101-200集_第4张图片

架构300讲笔记101-200集_第5张图片

日志

配置文件新增

logging:
  file:
    name: logs/${spring.application.name}.log

生成文件如下图所示
在这里插入图片描述
界面图

架构300讲笔记101-200集_第6张图片

安全性

参考文档第5部分。

整合 nacos

client

依赖

        <dependency>
            <groupId>com.alibaba.cloudgroupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
        dependency>
        
        <dependency>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-actuatorartifactId>
        dependency>

配置文件

server:
  port: 8911
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
        group: spring-boot-admin-nacos
  application:
    name: spring-boot-admin-client-nacos
management:
  endpoints:
    web:
      exposure:
        include: '*'
logging:
  file:
    name: logs/${spring.application.name}.log

server

        <dependency>
            <groupId>com.alibaba.cloudgroupId>
            <artifactId>spring-cloud-starter-alibaba-nacos-discoveryartifactId>
        dependency>

配置文件

server:
  port: 8910
spring:
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
        group: spring-boot-admin-nacos
  application:
    name: spring-boot-admin-server-nacos

nacos 效果图
架构300讲笔记101-200集_第7张图片
架构300讲笔记101-200集_第8张图片

175 涨姿势!JDK17转正的密封类到底说了啥?

178 实机环境排查Java程序CPU飙升问题

179 如何实现15分钟未支付自动取消订单?

180 MyBatis批量插入几千条数据,请慎用foreach

181 利用预排序算法,实用超快的树形数据遍历方案

182 大受震撼!MySQL8开窗函数单SQL实现复杂数据分析

183 Java抗Go急先锋!?Quarkus很优秀,但我不会碰它!

https://quarkus.io/

https://github.com/quarkusio/quarkus

https://cn.quarkus.io/

优势

架构300讲笔记101-200集_第9张图片

184 超赞,有手就行!利用kubeode真·傻瓜部署K8S高可用集群

185 ShardingJDBC读写分离避坑实战

186 小白也能听懂的云原生架构Cloud Native

187 23种设计模式遵循的六大设计原则到底讲了什么?

188 分享一套靠谱的RabbitMQ高可用架构

189 23种设计模式之工厂模式

190 分布式架构离不开的负载均衡器到底是什么?

191 MySQL8实用底层知识,Buffer Pool缓冲池,为面试增加些谈资吧

192 抽象工厂模式在项目开发中的应用

193 开箱即用,Redis6新特性RCP实现Cluster集群读写分离

194 1000万用户电商3毫秒内抽奖100名如何实现?

195 MySQL8超实用的lag函数实现同比、环比、均差计算

196 你真的会用单例模式吗

197 为什么MySQL单表建议不超过2000万,依据是啥?总算有人讲明白了!

为什么大家说mysql数据库单表最大两千万?依据是啥?

198 一步到位,HTTP接口安全八种对策,我帮你整理好了

你可能感兴趣的:(笔记,架构)