探讨一下webman的微服务方案,以及熔断和限流的方案

aphper

如题,单体应用拆分成多个服务,互相 RPC 调用,但是没有服务注册、熔断、限流这些算微服务吗?

在webman中,你有实现熔断和限流的好方案,甚至是全套PHP微服务方案吗

3111 4 2
4个回答

walkor

微服务里服务注册、熔断、限流 不是必须的。

  • aphper 2022-05-06

    那实例自动上下线怎么办 只能每个服务多个实例做负载均衡吗

  • walkor 2022-05-06

    现在云厂商都支持负载均衡,加减机器直接后台操作就行了

  • Tinywan 2022-05-06

    这么暴力

  • walkor 2022-05-06

    故障自动踢出负载均都是支持的

  • aphper 2022-05-06

    那链路跟踪咋搞 出问题了总得定位啊

  • aphper 2022-05-06

    没有这些基础的东西 大项目很难拿得出手

  • walkor 2022-05-06

    hyperf 这些东西挺全的,可以用hyperf

  • aphper 2022-05-06

    我喜欢你的webman

  • evilk 2022-05-06

    我喜欢你的webman

  • Tinywan 2022-05-06

    无赖

  • ab0029 2022-05-09

    我喜欢你的webman,哈哈哈

  • 菜虚困 2022-05-20

    我喜欢你的webman,哈哈哈

  • 大好时光 2022-05-27

    我喜欢你的webman

  • Le 2022-11-09

    现在阿里云的服务都太到位了,服务器负载均衡扩展很方便,mysql做主从也很方便,甚至都不需要代码里配置主从数据库

小阳光

我写了你需要的东西,只是目前自用,代码写的烂没有公开,也没有组件化,注册中心,rpc 熔断降级,链路追踪

  • Tinywan 2022-05-06

    膜拜大佬!

  • aphper 2022-05-06

    show出来 能实现功能就行管那么多干啥

  • ab0029 2022-05-09

    talk is cheap, show me the code[旺柴]

chaz6chez

单体应用拆分就变成了SOA,SOA细化就变成了micro-service

因为服务小了便多了,服务就需要治理,否则在运维的过程中会非常头疼

其实这里面只需要加入一个服务注册+配置中心+基于redis的令牌桶就能轻松解决你想要的问题

比如我这边用的就是nacos作为配置中心和服务发现/注册,服务启动时就注册对应实例及服务,做好心跳,对应的服务实现令牌桶限流就好了

下游使用的时候通过服务发现进行处理,对应的元数据里有相关的指标和参数

  • as5739 2022-05-11

    哈哈,我这边也是用nacos做服务注册配置中心的,用的sdk作者还正好在楼上。nacos主要还是java用的多吧,调用服务比较方便,php的话,很多东西还得自己实现,例如调用实例的负载均衡

  • chaz6chez 2022-05-11

    我对tinywan的nacos进行的重新封装,主要是配置监听部分我做了适合我司的处理,和Tingwang不一样的处理方案,随后我会发布至插件商店

  • Tinywan 2022-05-12

    为啥又要单独搞一个呢!是区别很大吗?

  • chaz6chez 2022-05-12

    配置监听部分完全不一样,你可以看看~ https://github.com/workbunny/webman-nacos 我用的是异步+定时器+服务端长轮询做的监听,不是定时器+get

  • Tinywan 2022-05-12

    感谢分享,终于把你给引出来了,嘿嘿!

  • chaz6chez 2022-05-12

    我那个AsyncConfigListener还在调试,异步请求包有点问题

  • chaz6chez 2022-05-12

    异步搞定了,欢迎使用

  • Tinywan 2022-05-13

    已start

  • Tinywan 2022-05-13

    @chaz6chez 你那边的具体使用场景是否可以分享下?

  • chaz6chez 2022-05-13

    可以,等会儿我写一个分享

  • Tinywan 2022-05-13

    谢谢!

  • Caesar-Tang 2022-11-08

    请问,做微服务,数据库事务应该怎么处理

  • chaz6chez 2022-11-11

    @CaesarTang 使用github搜索一下dtm,分布式事务协调服务,这个dtm的webman-client目前我还没开源,因为没做完单元测试,你也可以自行实现,其实不难

liziyu

是API接口限流吗(菜菜的疑问)?这个应该简单!

  • tanhongbin 2022-05-13

    你知道为啥没人回答你嘛兄弟,他们说的我都听不懂哈哈

  • liziyu 2022-05-13

    谢谢你的回答,掩盖淡淡的尴尬,我好像明白了些什么!~

年代过于久远,无法发表回答
🔝