Docker Portainer Docker Portainer Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 安装 1234567$ docker run -d \-p 9443:9443 \--name portainer \--hostname portainer \-v /var/run/docker.sock:/var/run/docker 2024-03-17 Software DevOps Docker
Docker Image Docker Image 镜像加载原理 UnionFS (联合文件系统) Union文件系统(UnionFS)是一种分层,轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem), Union文件系统是Docke 2024-03-17 Software DevOps Docker
Docker Container Docker Container 容器生命周期 run 1$ docker run [可选参数] 镜像名/镜像ID [命令] -a stdin:指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项; -d:后台运行容器,并返回容器ID -i:以交互模式运行容器,通常与 -t 同时使用。 -P:随机端口映射,容器内部端口随机映射到主机的端口。 -p, --publish=[ 2024-03-17 Software DevOps Docker
Docker DockerFile Docker DockerFile Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。 Dockerfile文件指令 FROM 定制的镜像都是基于 FROM 的镜像,这里的 nginx 就是定制需要的基础镜像,后续的操作都是基于 nginx 12FROM nginxRUN echo '这是一个本地构建的nginx镜像' & 2024-03-17 Software DevOps Docker
Docker Compose Docker Compose Compose 是用于定义和运行多容器 Docker 应用程序的工具,通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务,然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。 Compose 使用的三个步骤: 使用Dockerfile定义应用程序的环境。 使用docker-compose.yml定义构成应用程序的服务,这样它 2024-03-17 Software DevOps Docker
项目部署 项目部署 科学部署的意义在于尽可能减少服务停机时间以及控制新版本带来的质量风险。 全量发布 蓝绿部署 指同时运行两个版本的应用,蓝绿部署的时候,并不停止掉老版本,而是直接部署一套新版本,等新版本运行起来后,再将流量切换到新版本上。 步骤 首先通过网关配置断开集群A的连接。 在集群A上部署新版本。 断开集群B的连接,恢复集群A的连接。 在集群B上部署新版本。 恢复集群B的连接。 缺 2024-03-17 Software DevOps
编程思想 编程思想 面向对象编程 对象所带有的数据被称为对象的属性(property),对象所带有的功能函数被称为对象的方法(method),当你定义一个类时,你可以定义类的属性名称,并写出类方法的相应代码。 如果你使用了类封装的方法,调试和维护程序会变得容易很多,封装的思路是:一个类提供特定的类方法给其他要使用这个类的代码来调用,外部的代码不能直接访问对象的数据,这样调试就变得简单了,因为你知道要在类里 2024-03-17 Software Common
配置文件格式 配置文件格式 配置文件是工程中常用的初始化参数的配置方式,而配置文件的格式有很多种,不同的操作系统,编程语言都会有不同的配置文件的格式,本文罗列了一些常见的配置文件的格式。 不同的配置文件格式有不同的用户友好性,对于功能的支持也有简单和复杂之分,很难简单说那种配置文件是最好的,有时候需要从多个方面去考虑,比如Windows较早的开发喜欢使用int,java喜欢使用properties,通用的编程 2024-03-17 Software Common
单点登录 单点登录 单点登录全称 Single Sign On (以下简称 SSO),是指在多系统应用群中登录一个系统,便可在其他所有系统中得到授权而无需再次登录,包括单点登录与单点注销两部分。 登录 相比于单系统登录, sso 需要一个独立的认证中心,只有认证中心能接受用户的用户名密码等安全信息,其他系统不提供登录入口,只接受认证中心的间接授权。 间接授权通过令牌实现, sso 认证中心验证用户的用 2024-03-17 Software BackEnd
UML 概述 UML 概述 UML是Unified Model Language的缩写,中文是统一建模语言,是由一整套图表组成的标准化建模语言。 通过使用UML使得在软件开发之前,对整个软件设计有更好的可读性,可理解性,从而降低开发风险,同时,也能方便各个开发人员之间的交流。 UML提供了极富表达能力的建模语言,可以让软件开发过程中的不同人员分别得到自己感兴趣的信息。 Page-Jones 在《Fundame 2024-03-17 Software SoftwareEngineering
RBAC RBAC RBAC (Role-Based Access Control)即:基于角色的权限控制,通过角色关联用户,角色关联权限的方式间接赋予用户权限。 RBAC 模型的分类 RBAC 模型可以分为: RBAC 0, RBAC 1, RBAC 2, RBAC 3 四种,其中 RBAC 0 是基础,也是最简单的,相当于底层逻辑, RBAC 1, RBAC 2, RBAC 3 都是以 RBAC 2024-03-17 Software BackEnd
Spring 注解 Spring 注解 @DateTimeFormat 规定接收的时间格式,格式化前端传递给后端的日期数据(非JSON) 注解在实体类的属性上 用于接口接收的对象中包括Date类型的属性。 12@DateTimeFormat(pattern = "yyyy-MM-dd")private Date symstarttime; 注解在接口参数中 用于直接接收Date对象。 2024-03-17 Software Language Java SpringFramework
Mybatis 配置文件 Mybatis 配置文件 mybatis-config.xml 系统核心配置文件。 MyBatis 的配置文件包含了会深深影响 MyBatis 行为的设置和属性信息。 configuration(配置) properties(属性) settings(设置) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件 2024-03-17 Software Language Java Mybatis
Mybatis 缓存 Mybatis 缓存 简介 缓存Cache概述。 存在内存中的临时数据。 将用户经常查询的数据放在缓存(内存)中,用户去查询数据就不用从磁盘上(关系型数据库数据文件)查询,从缓存中查询,从而提高查询效率,解决了高并发系统的性能问题。 为什么使用缓存? 减少和数据库的交互次数,减少系统开销,提高系统效率。 什么样的数据能使用缓存? 经常查询并且不经常改变的数据。 Mybatis 2024-03-17 Software Language Java Mybatis
Mybatis 注解 Mybatis 注解 mybatis最初配置信息是基于 XML ,映射语句(SQL)也是定义在 XML 中的,而到MyBatis 3提供了新的基于注解的配置。 但是Java 注解的的表达力和灵活性十分有限,最强大的 MyBatis 映射并不能用注解来构建。 注意:利用注解开发就不需要mapper.xml映射文件了,通过class绑定接口。 123<mappers> <ma 2024-03-17 Software Language Java Mybatis
Mybatis 结果映射 Mybatis 结果映射 resultMap ResultMap 的设计思想是,对于简单的语句根本不需要配置显式的结果映射,而对于复杂一点的语句需要描述它们的关系。 实例 返回值类型为resultMap 123<select id="selectUserById" resultMap="UserMap"> select id , n 2024-03-17 Software Language Java Mybatis
Mybatis 概述 Mybatis 概述 MyBatis MyBatis 是一款优秀的持久层框架。 MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集的过程。 MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的实体类 [Plain Old Java Objects,普通的 Java对象]映射成数据库中的记录。 MyBatis 本是apache的一个开 2024-03-17 Software Language Java Mybatis
Mybatis 日志 Mybatis 日志 日志工厂 如果一个数据库相关的操作出现了问题,我们可以根据输出的SQL语句快速排查问题。 Mybatis内置的日志工厂提供日志功能,具体的日志实现有以下几种工具: SLF4J Apache Commons Logging Log4j2 Log4j JDK logging MyBatis 内置日志工厂会基于运行时检测信息选择日志委托实现,它会(按上面罗列的顺序)使用第一 2024-03-17 Software Language Java Mybatis
Mybatis 动态SQL Mybatis 动态SQL 介绍 动态SQL:动态SQL指的是根据不同的查询条件,生成不同的Sql语句。 MyBatis 的强大特性之一便是它的动态 SQL,如果你有使用 JDBC 或其它类似框架的经验,你就能体会到根据不同条件拼接 SQL 语句的痛苦,例如拼接时要确保不能忘记添加必要的空格,还要注意去掉列表最后一个列名的逗号,利用动态 SQL 这一特性可以彻底摆脱这种痛苦。 虽然在以前使用动态 2024-03-17 Software Language Java Mybatis
Mybatis CRUD操作 Mybatis CRUD操作 resultType:SQL语句返回值类型(完整的类名或者别名) parameterType:传入SQL语句的参数类型。 接口中的方法名与映射文件中的SQL语句ID 一一对应。 所有的增删改操作都需要提交事务。 接口所有的普通参数,尽量都写上@Param参数。 有时候根据业务的需求,可以考虑使用map传递参数。 为了规范操作,在SQL的配置文件中,尽量编写Param 2024-03-17 Software Language Java Mybatis