当前位置: 首页 > news >正文

关于分布式系统设计的个人看法和经验


1.接口要保证幂等
2.客户端要设置超时时间和兜底措施
3.服务端调用三方要设置超时和重试机制以及兜底
4.服务端要有熔断和降级以及限流机制
5.避免使用大事务
6.对热点数据使用缓存(浏览器缓存/客户端缓存/分布式缓存/应用级缓存)
7.对大表数据考虑分库分表
8.对于需要进行多表联查的数据可以考虑数据异构,将多表数据整合成前端需要的结构
9.应用要进行合理地拆分
10.避免过度设计,解决当前需求是首要任务,设计没有完美的设计,根据现有资源进行合理设计,可以后续不断迭代
11.一定要有入口查看调用方入参,出参,避免扯皮
12.调用方一定要传唯一流水号,方便出问题的时候定位原因
13.接口响应速度一定要快(比如约定<=100ms)
14.要有回滚机制(事务回滚/代码回滚/数据库回滚)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 2024-03-27 作业
  • CPP容器vector和list,priority_queue定义比较器
  • 基于DWT(离散小波变换)的图像水印算法,Matlab实现
  • 低功耗、低成本 NAS 的可能性
  • Navicat 干货 | 探索 PostgreSQL 的外部数据包装器和统计函数
  • 江协STM32:点亮第一个LED灯和流水灯
  • AQS源码分析
  • vc_red.msi 错误
  • 3.1 SQL概述
  • c++红黑树
  • 混合云构建-使用 Azure ExpressRoute 建立从本地到 Azure 虚拟网络的专用连接
  • 记录一次Vcenter跨VDS网络迁移
  • TCP重传机制详解——02SACK
  • Python编程基础 001 开篇:为什么要学习编程
  • leetcode代码记录(平衡二叉树
  • 【附node操作实例】redis简明入门系列—字符串类型
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • Gradle 5.0 正式版发布
  • Java基本数据类型之Number
  • java小心机(3)| 浅析finalize()
  • PHP CLI应用的调试原理
  • python学习笔记 - ThreadLocal
  • Redis 懒删除(lazy free)简史
  • vue-router的history模式发布配置
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 番外篇1:在Windows环境下安装JDK
  • 开源SQL-on-Hadoop系统一览
  • 力扣(LeetCode)965
  • 马上搞懂 GeoJSON
  • 深度学习入门:10门免费线上课程推荐
  • 世界编程语言排行榜2008年06月(ActionScript 挺进20强)
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 想晋级高级工程师只知道表面是不够的!Git内部原理介绍
  • 小李飞刀:SQL题目刷起来!
  • - 转 Ext2.0 form使用实例
  • # Spring Cloud Alibaba Nacos_配置中心与服务发现(四)
  • #13 yum、编译安装与sed命令的使用
  • (33)STM32——485实验笔记
  • (6)设计一个TimeMap
  • (C++二叉树05) 合并二叉树 二叉搜索树中的搜索 验证二叉搜索树
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (libusb) usb口自动刷新
  • (备忘)Java Map 遍历
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (七)Flink Watermark
  • (十一)图像的罗伯特梯度锐化
  • (转) Android中ViewStub组件使用
  • .md即markdown文件的基本常用编写语法
  • .NET Entity FrameWork 总结 ,在项目中用处个人感觉不大。适合初级用用,不涉及到与数据库通信。
  • .net 使用$.ajax实现从前台调用后台方法(包含静态方法和非静态方法调用)
  • .net6解除文件上传限制。Multipart body length limit 16384 exceeded
  • .net企业级架构实战之7——Spring.net整合Asp.net mvc
  • .NET正则基础之——正则委托
  • /run/containerd/containerd.sock connect: connection refused