有用 Python +django 搞过微服务的吗?都需要了解哪些知识,有没有好的建议。

2021-04-29 10:49:09 +08:00
 longmeier90

最近公司想把一个大的项目,拆分出各个模块出来,自己现在的项目是用 django+mysql 开发的也了解点 docker 、rabbitmq 。对部署微服务整个架构还不是太了解,有没有搞过的大佬给指点指点。 假如按照目前我们的条件适合怎么弄,还需要了解哪些知识。

4746 次点击
所在节点    Python
18 条回复
xuanbg
2021-04-29 10:53:42 +08:00
微服务最关键的组件只有三个:注册中心、配置中心和网关。所以,你只需要把这 3 个东西跑起来,然后你开发的服务能够注册到注册中心,能获取到配置就行了。别的譬如限流、降级、链路追逐什么的都不是必要的,可以有需要的时候再搞,甚至自己搞。
jackzzh
2021-04-29 11:01:19 +08:00
zhoudaiyu
2021-04-29 11:32:30 +08:00
上 k8s,用 k8s 那套
Seahurt
2021-04-29 12:43:51 +08:00
我们公司之前也是 django 的项目想拆成微服务,但是发现拆成微服务后人手不够,就放弃了。django 单项目一两个人就搞定了,拆成微服务,每个服务都要有人去负责,一个人负责多个项目时你会发现,我本来可以 ORM 直接获取数据的,现在必须得搞个 API 才行,工作量翻了几倍
lasuar
2021-04-29 15:50:26 +08:00
人手不够别折腾,项目不大别折腾,不懂微服务更别折腾。
longmeier90
2021-04-29 17:27:19 +08:00
@lasuar 我觉的不懂可以先学习学习,等了解透彻了就可以弄了呀。
longmeier90
2021-04-29 17:30:43 +08:00
@Seahurt 系统越单一项目管理越简单,越复杂越容易出问题,对于小团队确实越简单越好,但是我们也不能满足于此,而是要往长远考虑,可以先学习学习
longmeier90
2021-04-29 17:31:05 +08:00
@xuanbg 谢谢大佬
xuanbg
2021-04-29 18:00:16 +08:00
@longmeier90 你的理解是正确的,而且微服务本身不增加工作量,反而能有效降低工作量。但前提是得正确拆分服务,顺带着还要懂点运维知识。
linvaux
2021-04-29 22:57:20 +08:00
微服务 == 招人
LeeReamond
2021-04-30 00:00:09 +08:00
微服务和 django 放在一起是很奇怪的组合,django 定位自己是一套解决方案,而不是一个 http 框架,同样的微服务架构,使用 django 会消耗更多资源,获得更低性能,并浪费 django 的一些设计特性,为什么要这么做呢
coderxy
2021-04-30 18:18:08 +08:00
微服务关键的几个名词 服务领域拆分,服务注册、发现、治理,微服务网关 再进一步就是熔断,限流,流量染色,分布式事务等等。
chaleaoch
2021-05-04 21:31:34 +08:00
楼主咋样有进展吗?
longmeier90
2021-05-06 09:50:35 +08:00
@chaleaoch 没有了,先了解了解做微服务都需要什么技术储备。现在说的很多东西都还不懂,现阶段主要是了解和学习
chaleaoch
2021-05-06 11:17:30 +08:00
@longmeier90 我俩技术栈差不多, 而且我也对微服务很有兴趣, 一起学习. 多交流.
longmeier90
2021-05-06 15:05:40 +08:00
@chaleaoch 可以,加我微信 longmeier99 以后方便交流
chaleaoch
2021-05-07 23:23:46 +08:00
@xuanbg
@coderxy
大佬问一下 istio k8s 这些概念 和运维更紧密一些还是和开发更紧密一些,还是 都很紧密?

我想自己搭一套架子 是不是必须得精通 k8s?
xuanbg
2021-05-08 09:08:40 +08:00
@chaleaoch 自己搭一套架子,不必精通 k8s 。基本的功能能够照着说明文档 /博客用起来就行了。至于 istio 什么的,和 spring cloud 的微服务组件也没啥本质上的区别,也就是相当于一个功能更强大的网关?反正微服务 3 个核心组件:注册中心、配置中心和网关,无论你用哪家的产品都没关系,搞起来就行了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/774023

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX