请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

分布式体现在哪里?

老师您好,我是初学者,现在看到了微服务这里。有个疑问,撇开微服务及后面的章节不谈,就已经实现的包含用户注册登录,文件上传下载,断点续传,秒传,ceph存储,消息队列等功能的单体服务而言,分布式体现在什么地方呢?换言之,前面这些章节介绍的功能,有哪些体现了分布式的思想呢?谢谢老师为我解答。

正在回答

1回答

同学你好, 体现微服务之前的分布式相关的, 大致有几点吧:

(1)一般说到分布式,应该是要体现任务分工和节点分工:在任务分工方面, 可以表现为部署部分节点用于文件上传,部分用于下载,部分用于其他业务API调用等; 在节点分工方面,比如同样是文件上传service,可以根据实际情况来部署N个相同的上传service,可以分布在一个或者多个物理节点上面.

(2)数据一致性, 不同的服务获取相同数据应该要保持一致,比如两个用户service实例,在注册同一个用户名时,总有一个成功,一个失败(不能重复注册); 之前的章节,这部分可以在数据库MySQL表中的锁来保证数据的同步.

(3)关于分布式的思想, 是一个比较广泛的话题,可以分层次区讨论, 比如:
a)应用、数据、文件的服务器部署分离,是一种分布式思想

b)数据库的读写分离(主节点读写,从节点读),也是一种分布式思想

c)文件不存储服务器本地,而是使用了独立的私有云/公有云的分布式存储系统(Ceph/OSS), 也是一种分布式思想

d)反向代理也可以认为是一种分布式思想, 将静态资源和后台API分离开做代理, 可以参考下Nginx的原理(本课程基本没涉及到)

e)API网关也是分布式架构中重要的一环,包含负载均衡/限流/熔断等功能, 相当于把业务无关的一些逻辑给抽离出来, 放到分布式服务的前方发挥作用, 减少后端业务服务的压力和逻辑复杂度. 等等...(这个主要是后面微服务的范畴了)

0 回复 有任何疑惑可以回复我~
  • 提问者 去则不闲 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2020-08-25 15:10:15
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信