HTTPS的原理以及配置过程
前置 由于 HTTP 本身是使用明文通信的,不加密、无法验证通信方的身份、无法证明报文的完整性,因此 HTTPS 出现了。HTTPS 本质上就是 HTTP 与 SSL/TLS 的组合。 HTTPS要解决的问题: 加密:保证信息不会泄露证明:保证信息来源于目标服务器,并且不被篡改 加密 对称加密/共享密钥加密 服务器和客户端使用相同的加密/解密密钥。…
Spring异步任务和定时任务线程池
前言 我们都知道在Spring中,想要启用异步任务和定时任务非常简单,只要在配置类或者启动类上添加@EnableAsync和@EnableScheduling,然后在对应方法上添加@Async和@Schedule即可。那么@Async和@Schedule默认是在什么线程池中运行的呢?默认的线程池是什么配置?如何修改其配置?如何自定义线程池? 异步任…
Github Actions 进行 CICD 一键部署
基本概念 Github Actions 是 Github 推出的持续集成工具 workflow: 一个 workflow 工作流就是一个完整的过程,每个workflow 包含一组 jobs任务。job : jobs任务包含一个或多个job ,每个 job包含一系列的 steps 步骤。step : 每个 step 步骤可以执行指令或者使用一个 ac…
MySQL高级
逻辑架构 参考:MySQL逻辑架构 - 知乎 (zhihu.com) 连接层 将MySQL服务层通过线程池和TCP连接池,与多个客户端连接。主要工作是:连接处理、授权认证、安全防护。 服务层 服务层用于处理核心服务,如标准的SQL接口、查询解析、SQL优化和统计、全局的和引擎依赖的缓存与缓冲器等等。所有的与存储引擎无关的工作,如过程、函数等,都会在…
Java 反射
反射介绍 概念 反射机制允许程序在执行期间借助于 Reflection Api 获取任何类的内部信息(成员变量、构造器、成员方法等),并能直接操作任意对象的内部属性和方法。 当一个类被加载之后,就在堆内存的方法区中产生了一个相应的 Class 类型的对象(一个类只有一个Class对象),这个对象包含了完整的类的结构信息,可以通过这个对象看到类的结构…
内网搭建 GitLab
njupt-sast 内网搭建 GitLab 过程 下载并安装 GitLab 安装包 wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-14.0.1-ce.0.el7.x86_64.rpm rpm -i gitlab-ce-14.0.1-ce.0.el7.x8…
ElasticSearch
安装 安装 ES 下载压缩包 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.14.0-linux-x86_64.tar.gz 解压 tar -zxvf elasticsearch-7.14.0-linux-x86_64.tar.gz 修改配置文件,…
Linux常用命令(CentOS 7)
screen Linux终端命令神器--Screen命令详解。助力Linux使用和管理 - 云+社区 - 腾讯云 (tencent.com) screen -R/-S xxx # 新建一个名为 screen_name 的 screen screen -ls # 显示已创建的 screen 终端 screen -r xxx # 连接 screen_i…
Java 动态代理
动态代理实现: 1、JDK 动态代理 ​ 用 Java 反射包中的类和接口实现动态代理 2、CGLIB 动态代理 ​ 通过第三方库 CGLIB ,以继承类的方式实现动态代理 JDK 代理 由于底层机制的缘故,被代理的目标类必须实现至少一个接口 创建被代理的目标类以及其实现的接口创建 InvocationHandler 接口的实现类,在 invoke…