大佬们 你们公司多个人用一个开发环境 怎么隔离? ABC 开发三个功能 但是只有一个开发环境 怎么避免争抢 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
cathub86
V2EX    程序员

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

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

    没有条件那就只能本地联调咯。
    tomkliyes
        17
    tomkliyes  
       2024-12-06 17:03:21 +08:00
    未完成的 feature 不允许部署到 dev ,只能本地测试,测试完成后提交 MR ,review 后 merge ,自动部署到 dev ,不存在相互影响的问题
    cookii
        18
    cookii  
       2024-12-06 17:12:14 +08:00 via Android
    搞个 docker 直接启动多个环境
    sngxx
        19
    sngxx  
       2024-12-06 17:16:25 +08:00
    per feature branch. FE 请求头携带特定标识,网关将请求路由到不同 feature 的容器
    eijnix
        20
    eijnix  
       2024-12-06 18:06:05 +08:00 via iPhone
    @sngxx 我们公司也叫这个 PFB
    mooyo
        21
    mooyo  
       2024-12-06 18:14:45 +08:00
    @sngxx 链式调用怎么解决的,有框架可以透传吗
    mooyo
        22
    mooyo  
       2024-12-06 18:15:33 +08:00
    前司也有这个问题,几百个服务互相调用搞不明白隔离,最后靠人工覆盖搞个发布群来抢占。。
    wfg
        23
    wfg  
       2024-12-06 21:35:31 +08:00 via iPhone
    用之前先在群喊一,用完了再喊一。
    Oneice
        24
    Oneice  
       2024-12-07 01:59:18 +08:00 via iPhone
    我司是多个项目环境,基于染色标隔离。RPC 、HTTP 、MQ 都需要适配,通过 Filter 机制透传染色标进行路由。
    nickxudotme
        25
    nickxudotme  
       2024-12-07 21:48:44 +08:00 via iPhone
    @llxvs #23 +1 ,我们群公告会记录当前哪些组件被谁占用,谁要用就去改一下
    fdd92
        26
    fdd92  
       2024-12-08 19:45:01 +08:00
    一般都本机开发使用,如果有联调需求才会上开发环境。
    sampeng
        27
    sampeng  
       2024-12-08 21:28:05 +08:00
    所以你们都是 8G 的开发机么。。。本地跑都不跑的?
    cathub86
        28
    cathub86  
    OP
       2024-12-12 10:43:21 +08:00
    @LeegoYih 这就是我想要的 比如说多个服务 我只改了其中一个(会根据分支发布下 会获得一个端口) 网关根据标识 打到对应的端口
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4449 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 70ms UTC 01:08 PVG 09:08 LAX 17:08 JFK 20:08
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86