背景 以前使用K8S + docker部署Java项目的时候,大多都是jar包,不过这次公司使用了cas系统,只能使用war包的方式来部署,所以就研究了一下怎么部署的。 基础镜像的选择 使用K8S + docker部署war包大概流程和jar包差不多,唯一的区别就是基础镜像包不同。 区别在于部署jar包的时候基础镜像只 […]
背景 以前使用K8S + docker部署Java项目的时候,大多都是jar包,不过这次公司使用了cas系统,只能使用war包的方式来部署,所以就研究了一下怎么部署的。 基础镜像的选择 使用K8S + docker部署war包大概流程和jar包差不多,唯一的区别就是基础镜像包不同。 区别在于部署jar包的时候基础镜像只 […]
硬件准备 服务器 hostname 192.168.30.170 master-test-k8s 192.168.30.171 node1-test-k8s 192.168.30.172 node2-test-k8s 192.168.30.173 node3-test-k8s 192.168.30.174 node4- […]
作为网关,日志记录是必不可少的功能,可以在网关出增加requestId来查询整个请求链的调用执行情况等等。 打印请求日志 打印请求日志最重要的就是打印请求参数这些东西,不过RequestBody通常情况下在被读取一次之后就会失效,这样的话,下游的服务就不能正常获取到请求参数了。所以我们需要重写下请求体。 具体方法呢有很 […]
新建Spring Boot项目 怎么新建Spring Boot项目这里不再具体赘述,不会的可以翻看下之前的博客或者直接百度。这里直接贴出对应的pom文件。 pom依赖如下: <?xml version="1.0" encoding="UTF-8"?> <proj […]
SpringBoot启动概述(SpringBoot2.1.7) 实例化SpringApplication 推断web应用的类型(webApplicationType) 初始化ApplicationContextInitializer:通过ClassLoader.getResources加载META-INF/spring […]
1、主键索引索引着数据,然后普通索引索引着主键ID值(这是在innodb中,但是如果是myisam中,主键索引和普通索引是没有区别的都是直接索引着数据) 2、当你查询用的是where id=x 时,那只需要扫描一遍主键索引,然后拿到相应数据 但是如果是查询的普通索引的话,那么会先扫描一次普通索引,拿到主键值,然后再去扫 […]
概念 软件设计模式(Software Design Pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。它描述了在软件设计过程中的一些不断重复发生的问题,以及该问题的解决方案。也就是说,它是解决特定问题的一系列套路,是前辈们的代码设计经验的总结,具有一定的普遍性,可以反复 […]
创建索引 创建一个名为my_index的索引 PUT localhost:9200/my_index 创建映射 PUT localhost:9200/my_index/my_type/_mapping { "properties": { "name": { "type": "text" } } } 添加一个文档 PUT […]
路由一个文档到一个分片中 当索引一个文档的时候,文档会被存储到一个主分片中。Elasticsearch如何知道一个文档应该存放到哪个分片中呢?当我们创建文档时,它如何决定这个文档应当被存储在分片1还是分片2中呢? 首先这肯定不会是随机的,否则将来要获取文档的时候我们就不知道从何处寻找了。实际上,这个过程是根据下面这个公 […]
主从复制 redis主从复制特点: 一个master可以有多个slave 一个slave只能有一个master 数据流是单向的,从master到slave 配置主从 实现方式有两种: 命令方式 配置文件方式 命令方式 在从服务器上执行以下命令即可: slaveof 主服务器的IP 端口号 slaveof命令是异步的,不 […]
问君能有几多愁,恰似一江春水向东流。