• 请不要在回答技术问题时复制粘贴 AI 生成的内容
cathub86
V2EX  ›  程序员

大佬们 你们公司多个人用一个开发环境 怎么隔离? ABC 开发三个功能 但是只有一个开发环境 怎么避免争抢

  •  
  •   cathub86 · Dec 6, 2024 · 4605 views
    This topic created in 697 days ago, the information mentioned may be changed or developed.
    28 replies  •  2024-12-12 10:43:21 +08:00
    czhxn123456
    czhxn123456
    Dec 6, 2024
    1
    用一个测试分支,大家往这个分支上合并呀
    gzldc
    gzldc
    Dec 6, 2024
    2
    环境是指服务器吧 我猜。
    都是 local 开发 merge 到 dev 自动部署 争抢的点是什么
    emSaVya
    emSaVya
    Dec 6, 2024
    3
    容器
    xue777hua
    xue777hua
    Dec 6, 2024
    4
    显然 “时分复用“ 也就是,三班倒 😂
    JacksonC
    JacksonC
    Dec 6, 2024
    5
    需要隔离就轮着用,协商使用时间。
    需要同时,分 3 个功能 or 人员分支,就都合一个 dev 分支部署上去并存开发。到时候上线哪个分支就合 release 去就行
    WaldenHorizon
    WaldenHorizon
    Dec 6, 2024
    6
    每人拉一个自己的特性分支本地开发本地调试,谁开发完谁就合并到 dev 分支,有自动部署+通知也不会冲突
    moudy
    moudy
    Dec 6, 2024
    7
    美国雇一个,欧洲雇一个,国内雇一个,绝对争不起来
    cathub86
    cathub86
    OP
    Dec 6, 2024
    8
    @JacksonC 妙妙妙 就这样搞
    cathub86
    cathub86
    OP
    Dec 6, 2024
    9
    @ssgooglg 比如你 dev 测试了 有人提交 自动部署了 你这边就会 404 一会 这个可以避免吗
    gzldc
    gzldc
    Dec 6, 2024
    10
    @cathub86 设置 deploy 规则 指定推到某个 branch 打包 统一 merge 就好了。dev 一般测试用的多 集中测试
    gzldc
    gzldc
    Dec 6, 2024
    11
    要是真就得开发 A 9 点上需求单独测试,等不了开发 B 9 点半一起发布。那就设置好钩子规则 单独推到自己的 release branch,让测试单独测自己的,注意开发端口就好了。
    只是我觉得没必要
    AloneHero
    AloneHero
    Dec 6, 2024 via Android❤️2
    12
    怎么没一个人说环境隔离,也就是染色,每个人部署时带标签,请求时也带标签,然后让对应请求路由到对应服务上,不过这个需要开发运维一起搞出来整套工具,如果你们公司规模不大,那就简单版每个人部署一个单独的端口号,各自请求各自的端口号
    1183460943
    1183460943
    Dec 6, 2024
    13
    麻烦点拆分成三个环境, 对应三个分支, 一次把 CI 、CD 配好,自己用自己的,完全没有一点打扰
    1183460943
    1183460943
    Dec 6, 2024
    14
    三个分支可以用域名或者端口来区分,分支和环境绑定,代码合上去就自动发布,数据库用 docker 来部署的话,也比较容易拆分
    w292614191
    w292614191
    Dec 6, 2024
    15
    我们是在 gateway 做了配置 dev 环境就匹配 IP 打到本地电脑。提交一般是前后端代码一起提交构建。
    LeegoYih
    LeegoYih
    Dec 6, 2024
    16
    我们 DevOps CI/CD 支持构建的时候标记版本号,没有改动的服务就用基准版,接口调用请求头上加上标识,生产发布完再销毁容器,有点类似灰度。

    没有条件那就只能本地联调咯。
    tomkliyes
    tomkliyes
    Dec 6, 2024
    17
    未完成的 feature 不允许部署到 dev ,只能本地测试,测试完成后提交 MR ,review 后 merge ,自动部署到 dev ,不存在相互影响的问题
    cookii
    cookii
    Dec 6, 2024 via Android
    18
    搞个 docker 直接启动多个环境
    sngxx
    sngxx
    Dec 6, 2024
    19
    per feature branch. FE 请求头携带特定标识,网关将请求路由到不同 feature 的容器
    eijnix
    eijnix
    Dec 6, 2024 via iPhone
    20
    @sngxx 我们公司也叫这个 PFB
    mooyo
    mooyo
    Dec 6, 2024
    21
    @sngxx 链式调用怎么解决的,有框架可以透传吗
    mooyo
    mooyo
    Dec 6, 2024
    22
    前司也有这个问题,几百个服务互相调用搞不明白隔离,最后靠人工覆盖搞个发布群来抢占。。
    wfg
    wfg
    Dec 6, 2024 via iPhone
    23
    用之前先在群裡喊一聲,用完了再喊一聲。
    Oneice
    Oneice
    Dec 7, 2024 via iPhone
    24
    我司是多个项目环境,基于染色标隔离。RPC 、HTTP 、MQ 都需要适配,通过 Filter 机制透传染色标进行路由。
    nickxudotme
    nickxudotme
    Dec 7, 2024 via iPhone
    25
    @llxvs #23 +1 ,我们群公告会记录当前哪些组件被谁占用,谁要用就去改一下
    MrL21
    MrL21
    Dec 8, 2024
    26
    一般都本机开发使用,如果有联调需求才会上开发环境。
    sampeng
    sampeng
    Dec 8, 2024
    27
    所以你们都是 8G 的开发机么。。。本地跑都不跑的?
    cathub86
    cathub86
    OP
    Dec 12, 2024
    28
    @LeegoYih 这就是我想要的 比如说多个服务 我只改了其中一个(会根据分支发布下 会获得一个端口) 网关根据标识 打到对应的端口
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3858 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 64ms · UTC 01:01 · PVG 09:01 · LAX 17:01 · JFK 20:01
    ♥ Do have faith in what you're doing.