极狐GitLab X 某轨道交通控制系统龙头企业,助力业务研发敏捷化

GitLab 是一个全球知名的一体化 DevOps 平台,很多人都通过私有化部署 GitLab 来进行源代码托管。极狐GitLab 是 GitLab 在中国的发行版,专门为中国程序员服务。可以一键式部署极狐GitLab。

学习极狐GitLab 的相关资料:

  1. 极狐GitLab 60天专业版免费试用:https://dl.gitlab.cn/lngav1pz
  2. 极狐GitLab 私有化部署安装下载:https://dl.gitlab.cn/p3fshsrm
  3. 更多客户案例:https://gitlab.cn/resources/cases

客户背景

该客户是一家专注于轨道交通的控制系统集成商,由中外合资共同成立,至今已有快四十年历史。该公司自成立之日起就聚焦在轨道交通控制系统集成领域,通过在研发上持续不断地投入,获得了源源不断的创新,而且在整个发展过程中独创了企业专属的创新发展模式,在该模式的引领下,先进的技术总是能够及时落地,转化成符合市场发展趋势、满足客户需求的解决方案。当前,该公司已经拥有数百项具有完全自主知识产权的系统技术和产品,覆盖铁路、城市轨道交通、城际铁路、市域铁路、有轨电车等多个领域。

分散到统一,提高源代码管理效率

之前,客户内部使用多种源代码管理系统,包括 GitLab-CE、SVN、IBM ClearCase 等。随着企业业务的增长、团队规模的扩大,多套源代码托管系统在业务敏捷交付的时候显现出了一定的乏力感,将多套系统整合成一套成为了需要考虑的问题。

因此,客户用极狐GitLab 替换了多种代码托管系统,以极狐GitLab 为中心打造源代码托管的单一可信源。极狐GitLab 本身具备成熟、安全的企业级代码托管功能,让客户的源代码管理化繁为简,代码管理效率得到了提升、安全性得到了提高,同时由于不再需要运维多套代码托管系统,系统的运维工作也得到了一定的简化。

一体化平台,实现质效率双赢

之前客户内部使用多套源代码托管系统,由于不同系统的特性不同、规则不同,因此如果要构建统一的代码审核规范、准入规范就需要花费不少精力,另外不同的系统和主流 CI/CD 工具的集成度也不尽相同,很难完全发挥 CI/CD 的作用,实现应用程序的自动化发布。

采用极狐GitLab 一体化 DevOps 平台之后,在代码质量把控方面,通过采用极狐GitLab 内置的代码准入、准出规则,做到了代码提交的标准和统一,而且通过多人审核功能,将代码审核进行了真正的落地,让合入主干分支的代码质量得到了很大的提升。此外,统一使用极狐GitLab CI 作为 CI/CD 构建系统,实现了应用程序的自动化构建、测试、发布,应用程序的发布效率大大提升,而且,由于极狐GitLab CI 和源代码托管位于统一平台内,减少了 CI/CD 系统的运维。

极狐GitLab CI/CD 构建图

GEO 高可用架构,提升跨地域团队协作效率

客户在北京、上海都有研发中心。如何构建跨地域的研发平台,是提高两地研发团队高效协作的关键之一,另外如何保证系统的高可用、高可靠也是保护客户企业内部核心资产的重中之重。

为此,客户使用了极狐GitLab 专业版独有的 GEO 多地域部署架构,实现了通过跨区域部署多套极狐GitLab 实例来构建高效的高可用系统。多套极狐GitLab 实例为一主多从架构,数据在不同实例间实时同步。当某个区域的实例出现故障时,其他区域的实例还能对外提供服务;当主实例出现问题时,从实例就会被提升为主实例,确保业务的持续性。GEO 高可用架构在保障数据安全性的同时还提高了服务的可靠性。另外,GEO 架构还能通过就近节点为就近用户提供服务的方式,优化了客户跨地域研发团队在代码克隆和提交方面的体验。

极狐GitLab GEO 高可用架构

构建内源平台,避免重复造轮子

极狐GitLab 本身是一个开源开放的平台,在开源体系建设上沉淀了很多宝贵的经验。客户利用极狐GitLab 在开源方面的建设能力,在内部构建以极狐GitLab 为中心的内源平台,通过内部开源的方式来避免不同团队、不同部门间重复造轮子的情况,而且让企业内部的代码资产复用性得到了大幅提升,方便团队使用已有的代码资产快速构建新的产品。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1560589.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

java多态-cnblog

java多态 细分的重载会增加代码量,降低易用程度 定义一个类,继承所有类的对象,根据向上转型可以让每个类的对象都调用初始类的方法,在方法中设置判断,不同的对象导致方法做不同的事,这就是多态 写一个灯…

计算机的错误计算(一百一十九)

摘要 用错数解释计算机的错误计算(一百一十八)中的错误计算。 计算机的错误计算(一百一十八)给出一个循环迭代 用C语言或Java编程计算,则 均是错误结果。 下面用错数解释其出错原因。 首先,将迭代看作 …

SSM(5)(动态sql <if>、<where>、返回主键值)

返回主键值&#xff1a; 方法一&#xff1a; useGeneratedKeys 为ture 声明 返回主键 keyProperty 表示要返回的值 封装到对象的属性中 但是这一种方法不支持Orcal数据库。 <insert id"save2" parameterType"com.findyou.entity.User" useGenerated…

【JVM系列】深入理解Java虚拟机(JVM)的核心技术 :从静态到运行时的秘密(三、Java常量池揭秘)

文章目录 【JVM系列】深入理解Java虚拟机&#xff08;JVM&#xff09;的核心技术 &#xff1a;从静态到运行时的秘密(二、Java常量池揭秘)1. 基本概念2. 常量池分类2.1 运行常量池2.2 静态常量池2.3 字符串常量池 3. String 类3.1 创建String对象的两种方式和区别3.2 字符串的特…

【Unity】背景图片随着背景里面内容大小而变化

今天制作项目里面的设置界面和暂停界面时&#xff0c;发现两个界面有很多重复部分&#xff0c;所以直接做一个界面就行了&#xff0c;但是两个界面的背景大小会有变化&#xff0c;图片在下面 这个是游戏暂停界面的&#xff0c;设置界面和这个界面有很多重复地方&#xff0c;仅仅…

Spring事务的1道面试题

每次聊起Spring事务&#xff0c;好像很熟悉&#xff0c;又好像很陌生。本篇通过一道面试题和一些实践&#xff0c;来拆解几个Spring事务的常见坑点。 原理 Spring事务的原理是&#xff1a;通过AOP切面的方式实现的&#xff0c;也就是通过代理模式去实现事务增强。 具体过程是…

【网页设计】CSS Part2

目标 能使用 emmet 语法能够使用 CSS 复合选择器能够写出伪类选择器的使用规范能够说出元素有几种显示模式能够写出元素显示模式的相互转换代码能够写出背景图片的设置方式能够计算 CSS 的权重 1. Emmet 语法 Emmet语法的前身是Zen coding,它使用缩写,来提高html/css的编写速…

java继承-cnblog

类的继承 继承本身 一个类要继承另一个类需要使用关键字extends 关键字extends的使用 class a extend b{}由于java只支持单继承&#xff0c;所以同时继承多个父类是错误的 在创造子类对象时&#xff0c;会先执行父类的构造方法&#xff0c;再执行子类的构造方法 举例说明 …

用 logfire 提高应用的可观测性

Logfire是由 Pydantic 团队打造的平台, 还有供 app 使用的 library, 我们经常提到对应用要做 LMT(Log, Metrics, Trace), Logfire 可以用来收集、存储、分析和可视化日志数据和应用性能指标。通过集成日志和度量&#xff0c;Logfire 提供了一个统一的界面来管理应用程序和系统的…

Windows环境mysql 9安装mysqld install报错:Install/Remove of the Service Denied!

Windows环境mysql 9安装mysqld install报错&#xff1a;Install/Remove of the Service Denied! 解决方案&#xff1a; 控制台/批处理命令窗口需要以系统管理员身份运行。 mysql数据库环境配置和安装启动&#xff0c;Windows-CSDN博客文章浏览阅读920次。先下载mysql的zip压缩…

ChatTTS 本地安装和测试

Ubuntu 22服务器&#xff0c;3.9/3.10都可以&#xff0c;但是 3.11不可以 sudo apt install python3.10 apt install python3.10 python3.10-dev #ubuntu 22 安装python3.10对应的pip3.10 # 下载 get-pip.py curl -sS https://bootstrap.pypa.io/get-pip.py -o get-pip.py # 使…

干货分享:Air780E选型的注意事项

Air780E已经是个明星模组了&#xff0c;累计出货数量2000万&#xff0c;广泛应用于物联网各行业。 今天计划讲一讲选择Air780E的注意事项&#xff01;从用户的角度&#xff0c;解答大家对Air780E这款模组最关心的问题&#xff0c;更多从选型、应用等非技术维度展开。 选择Air…

Spring Boot洗衣店订单系统:业务流程优化

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常适…

算法-依据先序遍历和中序遍历构建二叉树

简单的二叉树遍历算法&#xff0c; 为了通过给定的先序遍历&#xff08;preorder&#xff09;和中序遍历&#xff08;inorder&#xff09;数组构造二叉树&#xff0c;我们需要理解这两种遍历方式的特点&#xff1a; 先序遍历&#xff08;Preorder&#xff09;&#xff1a;首先…

如何高效部署SD-WAN及是否需要路由器?

随着SD-WAN&#xff08;软件定义广域网&#xff09;的快速普及&#xff0c;企业在构建网络架构时迎来了更多灵活和高效的管理方式。但在决定是否仍需部署物理路由器时&#xff0c;关键在于企业的具体网络需求与架构特点。 SD-WAN的最大特点是其通过虚拟化技术来实现网络管理。通…

<<迷雾>> 第10章 用机器做一连串的加法(6)--循环移位寄存器改进的控制器 示例电路

使用循环移位寄存器来简化装载和相加过程. info::操作说明 鼠标单击开关切换开合状态 开始之前, 应当设置循环移位寄存器 RR 的初始状态, t01, t10.(如果不是该状态, 可单击一次开关 K 即可) 在 GA 传输门左边的开关置入一个数, 比如 10. 闭合 K装载, 断开 K相加, 此时 IGAIR…

使用 three.js和 shader 实现一个五星红旗 飘扬得着色器

使用 three.js和 shader 实现一个五星红旗 飘扬得着色器 源链接&#xff1a;https://threehub.cn/#/codeMirror?navigationThreeJS&classifyshader&idchinaFlag 国内站点预览&#xff1a;http://threehub.cn github地址: https://github.com/z2586300277/three-ce…

TY1801 内置GaN电源芯片(18w-65w)

TY1801 是一款针对离线式反激变换器的多模式 PWM GaN 功率开关。TY1801内置 GaN 功率管,具备超宽 的 VCC 工作范围&#xff0c;非常适用于 PD 快充等要求宽输出电压的应用场合,TY1801不需要使用额外的绕组或外围降压电路&#xff0c;节省系统 BOM 成本。TY1801 支持 Burst&…

【最新华为OD机试E卷-支持在线评测】智能成绩表(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 💻 ACM金牌🏅️团队 | 大厂实习经历 | 多年算法竞赛经历 ✨ 本系列打算持续跟新华为OD-E/D卷的多语言AC题解 🧩 大部分包含 Python / C / Javascript / Java / Cpp 多语言代码 👏 感谢大家的订阅➕ 和 喜欢�…

Unity网络开发基础 —— 实践小项目

概述 接Unity网络开发基础 导入基础知识中的代码 需求分析 手动写Handler类 手动书写消息池 using GamePlayer; using System; using System.Collections; using System.Collections.Generic; using UnityEngine;/// <summary> /// 消息池中 主要是用于 注册 ID和消息类…