V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
Jack66
V2EX  ›  Go 编程语言

golang 大家微服务都是什么方案?

  •  
  •   Jack66 · 140 天前 · 7026 次点击
    这是一个创建于 140 天前的主题,其中的信息可能已经有所发展或是发生改变。

    1.使用微服务框架 2.直接 k8s 不知道大家生产环境 golang 的微服务方案怎么做的,希望一起讨论学习下

    39 条回复    2024-07-08 19:30:30 +08:00
    seth19960929
        1
    seth19960929  
       140 天前
    1. go-zero
    2. k8s
    coderxy
        2
    coderxy  
       140 天前
    微服务框架在 k8s 内部署。
    concernedz
        3
    concernedz  
       140 天前
    k8s
    wunonglin
        4
    wunonglin  
       140 天前   ❤️ 1
    1 、go-kratos
    2 、k8s 、k3s
    koala9527
        5
    koala9527  
       140 天前   ❤️ 2
    gin+consul+阿里云 ACK
    mightybruce
        6
    mightybruce  
       140 天前
    简单的直接用 k8s ,

    复杂一点的通过 istio 改造
    jaylee4869
        7
    jaylee4869  
       140 天前
    好奇怪的问题,K8s 和业务没什么关系啊,只是用来做 declarative 运维的。
    cyberocx
        8
    cyberocx  
       140 天前
    字节的 hterz + kitex 可以考虑下
    mightybruce
        9
    mightybruce  
       140 天前
    现在连过去大型国企的 java spring cloud 都在改造为 service mesh, 还搞微服务框架真的是逆历史潮流。
    service mesh 多数还能尽可能做到无侵入式, 微服务框架能有几个做到。

    看看蚂蚁金服的 sofastack ,istio 和 微软的 dapr 吧。

    相关报道很多很多
    https://www.sohu.com/a/508786560_515599
    chinaguaiu
        10
    chinaguaiu  
       140 天前
    @mightybruce #9 spring cloud 我都没搞明白已经要 service mesh 了吗,最近几年发展那么快了吗
    szdev
        11
    szdev  
       140 天前
    一个项目一个镜像,k8s 多 pod 发布就可以了,大部分企业完全够用
    wenyuhe
        12
    wenyuhe  
       140 天前
    @jaylee4869 dns 作为服务发现注册也算吧
    wenyuhe
        13
    wenyuhe  
       140 天前
    看了下正文)微服务上不上 k8s 并没啥关系。直接一个服务一个 vm 我也见过,不上 k8s 好处就是没学习成本,坏处就是资源浪费。至于运维 cicd 弄好了都一样
    LanLiang
        14
    LanLiang  
       140 天前
    springcloud 和 service mesh 并不是替代的关系,架构是会演进的,springcloud 仍然适合大多数中小企业
    coyove
        15
    coyove  
       140 天前
    冷知识,蚂蚁 sofa ,字节 kitex ,但内部的核心应用都是巨型单体(编译产物几个 g ,分钟级启动时间)
    所以如果你是一个人,建议一把梭
    zzhaolei
        16
    zzhaolei  
       140 天前
    微服务架构并不适合中小企业。推荐用 gin ,负载均衡。(面向简历编程,当我没说。)
    whrss9527
        17
    whrss9527  
       140 天前
    @jaylee4869 作为配置管理也算吧 🐶
    DefoliationM
        18
    DefoliationM  
       140 天前 via Android
    grpc+etcd ?不推荐 go-zero ,bug 多,难维护。其他的没用过。
    maocat
        19
    maocat  
       140 天前 via iPhone
    大道归一,单体项目,前后端不分离
    maigebaoer
        20
    maigebaoer  
       140 天前 via Android
    首先问,不用微服务行不行?行?那用它干嘛呢。
    morebuff
        21
    morebuff  
       140 天前
    单体 YYDS
    timothyye
        22
    timothyye  
       140 天前
    @wenyuhe #13 不用容器编排好像不太方便快速伸缩服务
    byehair
        23
    byehair  
       140 天前
    @coyove 如果我没理解错,你说的是这个是大仓模式,但其实,只是项目代码是一个单体,编译是一个单体,但服务是可以按需启动的。
    腾讯内部很多项目也是采用大仓模式
    bzj
        24
    bzj  
       140 天前
    grpc+consul ,说 k8s 的都是运维吧
    kkk9
        25
    kkk9  
       140 天前
    99%的公司不需要 k8s
    GeekGao
        26
    GeekGao  
       140 天前
    Dapr
    jackge0323
        27
    jackge0323  
       140 天前
    不用框架,需要什么自己简单封装一个就可以了。
    Int100
        28
    Int100  
       140 天前
    用微服务平台,还是 k8s ,取决于公司/项目组的运维能力以及架构考量。

    上个月碰到的一个西门子的项目组,就是 all-in AWS ,完全不搞 k8s ,但也说了内部有其他部门选择维护自己 k8s 集群。
    Cola98
        29
    Cola98  
       140 天前
    grpc+k8s
    homewORK
        30
    homewORK  
       139 天前
    @DefoliationM 能细说一下吗? 因为个人项目刚开始用 go-zero 。go-zero 目前只是感觉有点臃肿。
    DefoliationM
        31
    DefoliationM  
       139 天前 via Android   ❤️ 1
    @homewORK struct 不支持 time.Time ,自带的(生成的代码) json unmarshal 有严重 bug ,某些情况会没有值。生成的代码又乱又多,前期代码少的时候还好,后面多了没法维护。还有其他很多问题已经不记得了。
    后面就是发现什么的问题,就把它自带的组件换成自己写的。所以还不如一开始就自己把所有东西弄好,不用这玩意。
    DefoliationM
        32
    DefoliationM  
       139 天前 via Android   ❤️ 1
    @DefoliationM 而且这东西更像 Java 搞得那一套,什么东西都搞得又臭又长,真的一言难尽。
    tangqiu0205
        33
    tangqiu0205  
       138 天前   ❤️ 1
    kratos + k8s, 目前这套用的很爽.
    dayeye2006199
        34
    dayeye2006199  
       138 天前   ❤️ 1
    微服务和 go 也没啥关系。

    就是拿 go 写个服务,然后外面整个 k8s 把几个服务穿起来。

    grpc + protobuf 随便撸啊
    changz
        35
    changz  
       137 天前 via Android
    kratos 二开
    wenyuhe
        36
    wenyuhe  
       137 天前
    @timothyye iac 编排也可以,其实小公司 k8s 不一定是最优解可能会是最差解;甚至伸缩也不一定是需要。至于微服务的话,我觉得刚开始最好别怎么拆。前期拆两个(用户中心+主业务)就是够了,然后生成 http 接口直接给前端。
    konakona
        37
    konakona  
       134 天前
    1. go zero —— 中文友好
    2. kubernetes 或 TKE
    3. +CI/CD+helm
    qloog
        38
    qloog  
       134 天前
    eagle + docker image + k8s
    protobuf -> http + gRPC(服务间)
    大部分 脚手架直接生成

    PS: https://github.com/go-eagle/eagle
    securityCoding
        39
    securityCoding  
       130 天前
    trpc+k8s
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2545 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 01:20 · PVG 09:20 · LAX 17:20 · JFK 20:20
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.