Gitlab:gitlab包括git仓库管理,问题追踪,代码审查,一个集成开发环境,活动流,维基以及更多功能。Gitlab有內建持续集成和持续部署去测试,构建,部署你的代码。你能够很容易监视你的测试和构建管道的进程。然后有信心地部署已经通过多个环境测试的代码。通过LDAP(lightweightdirectoryaccessprotocel轻量目录访问协议)组同步,git钩子,自动测试,审计跟踪,gitlab企业版给管理员用户管理能力,而不强加开发人员的工作流程。
2.2软件开发技术
系统运行环境为windowsserver2012,使用mysql数据库,tomcat作为服务器,java作为后端开发语言,采用springboot、redis作为后端框架;Angularjs1.x作为前端框架,并使用bootstrap开源ui类库。
2.2.1 springboot框架、redisSpringBoot可以轻松创建可以“运行”的独立的,生产级的基于Spring的应用程序。我们对Spring平台和第三方库有一个看法,所以你可以从最开始的时候开始。大多数SpringBoot应用程序需要很少的Spring配置。Springboot特点有:创建独立的Spring应用程序;直接嵌入Tomcat,Jetty或者Undertow(不需要部署war文件);尽可能的自动配置Spring;提供生产就绪功能,如指标,运行状况检查和外部化配置;绝对没有代码生成,也不需要XML配置。Redis是一个开源,内存数据结构存储,用作数据库,缓存和消息代理。它支持数据结构,如字符串、散列、列表、集合、具有范围查询的有序集、位图、超文本和具有半径查询的位置空间索引。Redis内置复制,Lua脚本,LRU驱逐,事务和不同级别的磁盘持久化,并通过RedisSentinel提供高可用性,并通过
RedisCluster自动分区。
2.2.2 mysql数据库
Mysql,是最受欢迎的开源SQL数据库管理系统,它是由甲骨文公司开发,分发和支持。Mysql是一个数据库管理系统。一个数据库是一个结构化数据集。它可以是任意从一个简单的购物清单到一个图片展览或企业网络中的大量信息。你需要一个数据库管理系统如mysql服务器去增加,访问以及处理存储在计算机数据库中的数据。计算机能够很好的处理大量的数据,因此数据库管理系统能够胜任计算作为独立实用程序或者其他应用程序一部分。
Mysql数据库是关系型的。一个关系型数据库在单独的表格中存储数据,而不是把所有数据存储到一个大的存储仓库。数据库结构被组织为速度优化的物理文件。具有数据库、表、视图、行和列对象的逻辑模型提供了一个灵活的编程环境。你能够建立规则控制不同数据字段间的关系,如一对一、一对多、唯一、必须或者可选以及不同表格间的指向。数据库强制实施这些规则,所以一个设计很好的数据库,您的应用程序永远不会看到不一致,重复,孤立,过时或丢失的数据。Mysql软件是开源的。开源意味着对任何人来说可以使用或者修改这个软件。任何人可以从网络上下载Mysql软件而且免费使用它。如果你想要,你可以研究源代码并可以根据需要修改它。
Mysql数据库服务器是非常快速、可靠的、可扩展的且很容易使用。如果这些就是你寻找的,你应该尝试。Mysql服务器可以在桌面、笔记本以及其他应用程序如web服务器等轻松地运行,几乎不需要任何关注。如果您将整个机器专用于MySQL,则可以调整设置以利用所有内存,CPU能力和可用的I/O。Mysql也能够扩展到集群的机器,通过网络连接在一起。
Mysql服务器工作在客户端/服务器或者嵌入式系统。Mysql数据库软件是一个客户端/服务器系统,由支持不同后端的多线程SQL服务器,几个不同的客户端程序和库,管理工具以及各种应用程序编程接口(API)组成[5]。我们还提供Mysql服务器作为嵌入式多线程库,您可以链接到应用程序,以获得更小,更快,更易于管理的独立产品。