首页 > 其他分享 >关于分布式系统设计的个人看法和经验

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

时间:2024-03-26 22:33:22浏览次数:18  
标签:回滚 缓存 多表 调用 经验 看法 分布式系统 设计 服务端


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

标签:回滚,缓存,多表,调用,经验,看法,分布式系统,设计,服务端
From: https://blog.csdn.net/wangwenzhe222/article/details/137001781

相关文章

  • 哈尔滨理工大学 计算机调剂仪器仪表工程 经验分享
    教育背景:本科二本,专业是计算机科学与技术,23考研总分341分,报考专业代码是085400,调剂哈尔滨理工大学仪器仪表工程。拒绝拟录取,最终调剂到安徽大学。调剂流程分享:去年在得知自己没有通过一志愿复试以后,那段时间一直在找调剂,有幸得到哈尔滨的某位学姐的指导,在这里感谢一下这位......
  • 【IT老齐058】Zookeeper解决分布式系统商品库存超卖问题
    【IT老齐058】Zookeeper解决分布式系统商品库存超卖问题场景解决方案传统的synchronized是无效的,它只针对一个JVM进程内多个线程起到同步作用,对跨进程无效。利用数据库select...forupdate语句对库存进行锁定,依赖数据库自身特性,遇到跨库(分库分表)处理起来比较麻烦。利用......
  • Java包装经验进面试后实话实说真的找不到工作吗?
    提升Java开发能力可以通过多种途径来弥补经验的不足。你提到的参与开源项目是一个非常好的方法,特别是选择一些简单的项目或脚手架,可以让你逐步熟悉实际开发流程和团队协作。我这里有一套编程入门教程,不仅包含了详细的视频讲解,项目实战,还提供了丰富的源代码。如果你渴望学习编......
  • 0基础成功转行网络安全工程师,年薪25W+,经验总结都在这(建议收藏)
    我曾经是一名普通的销售人员,工作了三年,每天重复着相同的工作内容,感觉自己的职业生涯停滞不前,毫无发展前景。我开始思考,如何才能让自己的职业生涯更有意义,更具有挑战性。经过一番调研,我决定转行网络安全工程师。工作了越久,越觉得当初转行网络安全的决定还是非常正确的。目......
  • [Oracle]细节与使用经验
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18032041出自【进步*于辰的博客】纯文字阐述,内容比较干。并且,由于考虑到时间长了恐有所遗漏,便即兴记录,并没有对内容进行筛选、排序。因此,大家在阅读时可以直接Ctrl+F进行......
  • 做题经验总结
    最近调数据结构自闭了,准备总结一些不常见但很有用的操作。将数据结构封存在结构体内。这样可以让代码结构清晰一些,更好查错。使用devc++切换编译器。只用打开‘工具’,‘编译选项’,输入-std=c++11就行了。常用的代码可以用define宏定义。同样是简化代码。如线段......
  • 大数据分布式系统中的脑裂,你懂吗?
        脑裂就是由原来只有一个做决策的大脑突然间变成了由多个同时做决策,而这多个大脑在做决策时,因为互相之间的信息并不同步而导致的决策之间发生冲突进而让分布式系统的管理陷入到一种混乱的局面,分布式系统中引入了多个管理者同时做决策的现象就叫脑裂。    ......
  • [MySQL]细节与使用经验
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18032065出自【进步*于辰的博客】纯文字阐述,内容比较干。并且,由于考虑到时间长了恐有所遗漏,便即兴记录,并没有对内容进行筛选、排序。因此,大家在阅读时可以直接Ctrl+F进行......
  • 0编程经验的初学者,该怎么学Python?要注意哪些隐秘的错误认知?
    对于完全没有编程经验的初学者,在学习python的时候,面对的不仅仅是python这门语言,还需要面临“编程”的一些普遍问题,而有特别明显的两个错误认知是:错误认识一:一些初学者认为python很简单,就以为编程很简单。错误认识二:没有学好基础知识,听说django很火,就开始学django开发we......
  • [Java]细节与使用经验
    【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权)https://www.cnblogs.com/cnb-yuchen/p/18032072出自【进步*于辰的博客】纯文字阐述,内容比较干。并且,由于考虑到时间长了恐有所遗漏,便即兴记录,并没有对内容进行筛选、排序。因此,大家在阅读时可以直接Ctrl+F进......