You Are the Architect
文章平均质量分 58
学习学习再学习
_大木_
所有的付出没有亏欠, 只为不负遇见.~
展开
-
架构师成长记_第十周_01_零起步centos7中配置doker (未完)
文章目录零起步centos7 配置doker1. 启动虚拟机并执行以下命令安装docker2. 常用docker命令测试零起步centos7 配置doker1. 启动虚拟机并执行以下命令安装dockercurl -fsSL get.docker.com -o get-docker.sh 安装docker脚本sh get-docker.sh --mirror Aliyun启动脚本, 并选择阿里云镜像安装dockerdaemon-reload 保存配置, 建议每次重启docker的时候都执行一次该原创 2021-07-24 21:15:23 · 267 阅读 · 3 评论 -
架构师成长记_第九周_02_配置nginx, 实现fastdfs文件服务器
文章目录配置nginx, 实现fastdfs文件服务器1. 安装配置nginx-fastdfs模块`PS: 保证 Nginx 服务器节点和 storage节点的路径一致`2. 安装 nginx配置nginx-fastdfs模块配置文件3. 测试配置nginx, 实现fastdfs文件服务器1. 安装配置nginx-fastdfs模块PS: 保证 Nginx 服务器节点和 storage节点的路径一致操作 Storage Server 服务器节点tar -zxvf fastdfs-nginx-mo原创 2021-06-30 20:49:23 · 294 阅读 · 6 评论 -
架构师成长记_第九周_01_FastDFS 在CentOS中环境配置
文章目录FastDFS 分布式文件系统1. FastDFS 架构2. FastDFS 在CentOS中环境配置1. 配置虚拟机 (两台虚拟机的以下操作保持一致)1.1 上传相应的文件1.2 安装c++ 环境 `yum install -y gcc gcc-c++`1.3 安装libevent 环境 `yum install -y libevent`1.4 安装 libfastcommon-1.0.421.5 安装本体 fastdfs2. 配置 tracker 服务 (153 服务器节点)3. 配置 stor原创 2021-06-29 23:37:54 · 239 阅读 · 7 评论 -
架构师成长记_第八周_22_logstash 数据同步
文章目录1. logstash 简介PS:2. logstash 安装2.1 (前提是安装好jdk)上传logstash, mysql驱动2.2 logstash 同步配置2.3 启动logstash1. logstash 简介Logstash是一个开源数据收集引擎,具有实时管道功能。Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地。Logstash是一个开源的服务器端数据处理管道,可以同时从多个数据源获取数据,并对其进行转换,然后将其发送到你最喜欢的“存储”原创 2021-06-05 14:34:14 · 430 阅读 · 1 评论 -
架构师成长记_第八周_21_Springboot 整合 elasticsearch
文章目录Springboot 整合 elasticsearch1. 创建es模块2. 在es的模块下引入依赖PS: 改版本对应的es是 6.4.3, 故我们集群ES的配置需要下调为 6.4.3. (或者提升这里的版本)3. 创建 yml 配置文件4. 创建启动类5. 运行报错 (是由于无netty配置引起的错误)6. 解决该问题Springboot 整合 elasticsearch1. 创建es模块2. 在es的模块下引入依赖 <dependencies> &l原创 2021-06-01 17:14:14 · 472 阅读 · 1 评论 -
架构师成长记_第八周_20_Elasticsearch 集群构建
文章目录Elasticsearch 集群构建1. 先进行克隆三台服务器2. 搭建es集群2.1 分别对三台服务器(es01, es02, es03 )做如下操作2.2 操作三台服务器(es01, es02, es03 节点)3. 查看配置信息 `more elasticsearch.yml | grep ^[^#]`4. 启动ES集群Elasticsearch 集群构建1. 先进行克隆三台服务器VMware克隆服务器2. 搭建es集群2.1 分别对三台服务器(es01, es02, es03原创 2021-05-24 19:19:23 · 296 阅读 · 18 评论 -
架构师成长记_第八周_19_ES- 批量操作 bulk
文章目录ES- 批量操作 bulk1. bulk 之 create (批量新增)1.1 第一种写法1.2 第二种写法PS: 批量新增注意:2. bulk 之 index (覆盖新增)3. bulk 之 update (批量更新)4. bulk 之 delete(批量删除)5. bulk 之 批量操作综合PS:ES- 批量操作 bulk1. bulk 之 create (批量新增)1.1 第一种写法POST: http://192.168.92.140:9200/_bulk{"create": {原创 2021-05-23 22:05:17 · 778 阅读 · 1 评论 -
架构师成长记_第八周_18_ES- 批量查询
ES- 批量查询1. 之前使用的批量查询方式GET: http://192.168.92.140:9200/shop/_doc/_search{ "query":{ "ids":{ "type" :"_doc", "values": ["1001","1002","1005"] } }}2. 使用 _mget 进行批量查询GET: http://192.168.92.140:9200/shop/_原创 2021-05-23 18:29:34 · 490 阅读 · 2 评论 -
架构师成长记_第八周_18_ES- 滚动搜索
ES- 滚动搜索PS: 滚动搜索是基于快照的方式, 所以在搜索的时候, 如果用户进行更新数据, 数据是不会被滚动搜索加载到的.1. 首次滚动搜索.POST: http://192.168.92.140:9200/shop/_search?scroll=1m{ "query": { "match_all": {} }, "sort":["_doc"], "size": 5}2. 后续滚动搜索.POST: http://192.168.92.14原创 2021-05-23 18:04:42 · 141 阅读 · 1 评论 -
架构师成长记_第八周_17_ES- 深度分页
ES- 深度分页PS: 因为使用 from + size 的方式只可以搜索小于等于10000的数据, 这个是 ES做的一个性能防护, 防止用户搜索过深而导致的系统性能下降.1. 查看深度分页设置2. 修改深度分页设置, 提升搜索量3. 再次搜索之前的 9999 的分类搜索量...原创 2021-05-23 17:22:07 · 189 阅读 · 1 评论 -
架构师成长记_第八周_16_dsl搜索-过滤器 post_filter, 排序 sort, 高亮 highlight
文章目录1. dsl搜索-过滤器 post_filter对于range属性有4个关键字:PS:2. dsl搜索-排序 sortPS:解决 text 排序问题: (通过附属的keyword字段实现)3. dsl搜索- 高亮显示 highlight1. dsl搜索-过滤器 post_filter对于range属性有4个关键字:gt: 大于lt: 小于gte:大于等于lte:小于等于{ "query": { "match": { "desc":"慕课网原创 2021-05-19 18:31:31 · 293 阅读 · 4 评论 -
架构师成长记_第八周_15_dsl搜索- 布尔查询
文章目录dsl搜索- 布尔查询1. must (bool下面的条件必须都要满足, 如下的multi_match, term 等)2. should (bool下面的条件满足之一即可, 如下的multi_match, term 等)3. must_not (bool下面的满足条件的进行排除, 如multi_match, term 等)4. 组合使用5. boost 进行加权dsl搜索- 布尔查询1. must (bool下面的条件必须都要满足, 如下的multi_match, term 等){原创 2021-05-19 14:02:24 · 435 阅读 · 1 评论 -
架构师成长记_第八周_14_dsl搜索 - term, terms, match, match_phrase 等方式检索详解
dsl搜索-term 与 match1. termterm 表示当一个用户输入单个词条的时候, 是不会进行分词搜索的, 即term 的词条为keyword.测试如下:{ "query":{ "term":{ "desc":"慕课网" } }, "_source": [ "id", "nickname", "desc" ]原创 2021-05-17 21:23:53 · 899 阅读 · 7 评论 -
架构师成长记_第八周_13_dsl搜索-查询所有内容与分页查询
文章目录DSL查询所有内容与分页查询1. DSL查询所有内容2. DSL查询部分字段内容2. DSL查询进行分页查询前7条数据查询第10条之后的10条数据DSL查询所有内容与分页查询1. DSL查询所有内容{ "query":{ "match_all":{} }}2. DSL查询部分字段内容{ "query":{ "match_all":{} }, "_source": [ "id",原创 2021-05-17 20:49:42 · 330 阅读 · 1 评论 -
架构师成长记_第八周_12_dsl搜索-数据准备+入门语法
文章目录PS:dsl搜索-数据准备+入门语法1. 数据准备1.1 编辑文档1.2 创建索引1.3 设置索引类型1.4 添加索引的数据(列举一条, 其他类似)2. 入门语法2.1 (QueryString方式=> url拼接方式)先进行简单的单条件查询2.2 (QueryString方式=> url拼接方式) 进行多条件的检索2.3 (DSL方式: 领域结构化语言查询方式) 简单的查询, 关键字: match : 匹配检索2.4 (DSL方式: 领域结构化语言查询方式) 简单的查询, 关键字:原创 2021-05-12 18:58:31 · 248 阅读 · 6 评论 -
架构师成长记_第八周_11_ES- ik中文分词器与自定义中文词库
文章目录ik中文分词器1. 安装ik中文分词器(7.4.2版本)2. 使用ik中文分词器2.1 分词器: ik_max_word2.1 分词器: ik_smart自定义中文词库自定义词库, 导入字典ik中文分词器1. 安装ik中文分词器(7.4.2版本)上传zip文件到我们的服务器2. 解压并放在elasticsearch的plugins的ik文件夹下yum install -y unzip zip 安装zip工具unzip elasticsearch-analysis-ik-7.4.2原创 2021-05-05 16:04:49 · 859 阅读 · 13 评论 -
架构师成长记_第八周_10_ES-分词与五种内置分词器
文章目录ES-分词PS:1. 全局分析方式(_analyze)2. 指定字段分析方式(索引名/_analyze)ES-五种内置分词器介绍1 标准分词器 standard2 非字母分词器 simple3 空格拆分分词器 whitespace4 智能化分词器(会去掉英文中无意义的词a/an/is/the等) stop5 关键字分词器(内容不会进行拆分) keywordES-分词PS:默认的分词器是不支持中文的, 中文的话会将每个字进行拆分1. 全局分析方式(_analyze)POST: http://原创 2021-05-05 11:42:50 · 1324 阅读 · 7 评论 -
架构师成长记_第八周_09_ES-文档乐观锁版本控制 if_seq_no 与 if_primary_term
文章目录ES-文档乐观锁版本控制 if_seq_no 与 if_primary_term测试如下PS:ES-文档乐观锁版本控制 if_seq_no 与 if_primary_term在旧的版本, 我们进行乐观锁版本控制, 是需要在操作后方携带 _version, 但是在新的版本中, 需要使用拼接if_seq_no 与 if_primary_term俩个参数的方式进行操作.测试如下创建一个索引文档修改时进行乐观锁版本控制PS:在操作的时候, 字段_version自动累加字段_seq原创 2021-05-05 10:52:14 · 341 阅读 · 2 评论 -
架构师成长记_第八周_08_ES-文档的基本操作(三)
文章目录ES-文档的基本操作: 查询方式一: 根据_id进行查询方式二: _serach 查询所有记录方式三: 定制查询某些字段方式四: 查询该索引下所有字段的定制的字段高效查询某个文档是否存在(这里只占用了87B传输大小)ES-文档的基本操作: 查询方式一: 根据_id进行查询方式二: _serach 查询所有记录方式三: 定制查询某些字段方式四: 查询该索引下所有字段的定制的字段高效查询某个文档是否存在(这里只占用了87B传输大小)HEAD:http://192.168.92.14原创 2021-05-05 09:55:33 · 148 阅读 · 1 评论 -
架构师成长记_第八周_07_ES-文档的基本操作(二)
文章目录ES-文档的基本操作: 新增与修改1. 删除2. 修改方式一: 局部修改方式二: 全量修改3. 证明删除操作不是物理删除ES-文档的基本操作: 新增与修改1. 删除数据库中是根据主键进行删除, ES中也是一样, 他可以根据我们的_id进行操作.这种的删除它不是真正意义上的物理删除, 只是逻辑删除, 所以说, 它的数据依然会留在硬盘上, 只有当数据量足够大的时候, ES才会被动的去清除这些数据.2. 修改方式一: 局部修改POST:http://192.168.92.140:920原创 2021-05-05 08:39:42 · 162 阅读 · 1 评论 -
架构师成长记_第八周_06_ES-文档的基本操作(一)
文章目录ES-文档的基本操作: 添加文档与自动映射1. 添加文档2. 添加多个文档ES-文档的基本操作: 添加文档与自动映射1. 添加文档2. 添加多个文档原创 2021-04-30 21:37:45 · 174 阅读 · 2 评论 -
架构师成长记_第八周_05_mappings 自定义创建映射
文章目录mappings 自定义创建映射1. 创建索引如下2. 测试我们的索引是否可以分词(标准分词器不识别中文)进行内容分析3. 为该索引新增数据类型1. 新增id和age字段 (long类型和integer类型, ==没有int 哦==)2. 新增money1和money2字段 (double类型和float类型)3. 新增sex和score字段 (byte类型和short类型)4. 新增is_teenger, birthday, relationship字段 (boolean, date, objec原创 2021-04-30 20:05:41 · 245 阅读 · 6 评论 -
架构师成长记_第八周_04_ES-head 与 postman基于索引的基本操作
文章目录ES-head 与 postman基于索引的基本操作1. ES-head2. postMan3. 基本操作1. 创建索引方式一:方式二:2. 查询集群健康3. 删除一个索引方式一:方式二:4. 查看索引信息查看单个索引信息:查看所有索引信息:ES-head 与 postman基于索引的基本操作1. ES-head2. postMan3. 基本操作1. 创建索引方式一:方式二:PUT:http://192.168.92.140:9200/index_temp{ "se原创 2021-04-30 17:38:14 · 173 阅读 · 2 评论 -
架构师成长记_第八周_03_ Centos安装 ElasticSearch 可视化插件: es-header
文章目录Centos安装 ElasticSearch 可视化插件: es-header1. 下载并且解压es-header2. 安装 node.js3. 在node.js中执行以下命令4. 设置跨域5. 链接测试Centos安装 ElasticSearch 可视化插件: es-header1. 下载并且解压es-headeres-header下载2. 安装 node.js下载链接3. 在node.js中执行以下命令进入es-header目录npm installnpm run原创 2021-04-29 21:52:48 · 187 阅读 · 1 评论 -
架构师成长记_第八周_02_ Centos安装分布式搜索引擎 ElasticSearch
文章目录ElasticSearch 安装1. 上传elasticsearch包到我们的centos(我这里是140节点)2. 解压并且移动elasticsearch文件夹3. 进入elasticsearch进行配置4. 由于root用户不能使用ES, 所以需要创建一个新的用户来使用ES5. 运行启动ES6. 测试, 浏览器访问7. 由于es是前台启动, 我们可以让它后台启动PS: 启动时出现以下问题, 需要执行切换回root用户该命令ElasticSearch 安装1. 上传elasticsearch包原创 2021-04-29 20:34:20 · 172 阅读 · 1 评论 -
架构师成长记_第八周_01_分布式搜索引擎 ElasticSearch 快速入门
文章目录分布式搜索引擎 ElasticSearch 快速入门1. 搜索引擎的对比(Lucene vs Solr vs Elasticsearch)1.1 Lucene1.2 Solr1.3 Elasticsearch([官网描述](https://www.elastic.co/cn/what-is/elasticsearch))2. ES 核心术语2.1 索引库 index (相当于 数据库中的表)2.2 类型 type (相当于 数据库的 表逻辑类型)PS: 最新的 ES 已经取消了 type,原创 2021-04-29 18:40:24 · 305 阅读 · 3 评论 -
架构师成长记_第七周_09_CAS单点登录系统构建(六)
CAS单点登录系统构建(二次访问)完善controller(最终)package com.beyond.controller;import com.beyond.pojo.Users;import com.beyond.pojo.vo.UsersVO;import com.beyond.service.UserService;import com.beyond.utils.BEYONDJSONResult;import com.beyond.utils.JsonUtils;import原创 2021-04-29 16:11:39 · 166 阅读 · 1 评论 -
架构师成长记_第七周_08_CAS单点登录系统构建(五)
CAS单点登录系统构建(初次访问13,14,15,16步骤)#继续完善controllerpackage com.beyond.controller;import com.beyond.pojo.Users;import com.beyond.pojo.vo.UsersVO;import com.beyond.service.UserService;import com.beyond.utils.BEYONDJSONResult;import com.beyond.utils.JsonU原创 2021-04-29 10:00:10 · 191 阅读 · 4 评论 -
架构师成长记_第七周_07_CAS单点登录系统构建(四)
CAS单点登录系统构建(初次访问: 11,12步): 验证临时票据继续完善 controller/** * CAS 的统一登录接口 * 目的: 1. 登录后创建用户的全局会话 -> uniqueToken * 2. 创建用户全局门票, 用以表示在CAS端是否登录 -> userTicket * 3. 创建用户的临时票据, 用于会跳回传 -> tmpTicket */原创 2021-04-29 08:04:05 · 249 阅读 · 1 评论 -
架构师成长记_第七周_06_CAS单点登录系统构建(三)
文章目录CAS单点登录系统构建(初次登录9,10步骤):创建用户全局门票, 创建临时票据继续完善controller中doLogin方法测试CAS单点登录系统构建(初次登录9,10步骤):创建用户全局门票, 创建临时票据继续完善controller中doLogin方法 /** * CAS 的统一登录接口 * 目的: 1. 登录后创建用户的全局会话 -> uniqueToken * 2. 创建用户全局门票, 用以表示在CAS端是原创 2021-04-28 19:31:13 · 167 阅读 · 1 评论 -
架构师成长记_第七周_05_CAS单点登录系统构建(二)
文章目录CAS单点登录系统构建(初次访问第7,8步): 登录成功+创建Redis用户会话1. 补充完善控制器2. 进行测试CAS单点登录系统构建(初次访问第7,8步): 登录成功+创建Redis用户会话1. 补充完善控制器package com.beyond.controller;import com.beyond.pojo.Users;import com.beyond.pojo.vo.UsersVO;import com.beyond.service.UserService;impor原创 2021-04-28 18:48:02 · 270 阅读 · 5 评论 -
架构师成长记_第七周_04_CAS单点登录系统构建(一)
文章目录CAS单点登录系统构建(初次访问的1-5步)1. 使用 thymeleaf 做模板实现2. 搭建控制器 controller3. 前端mvc系统代码4. 测试是否可以正常跳转CAS单点登录系统构建(初次访问的1-5步)1. 使用 thymeleaf 做模板实现引入 thymeleaf 依赖在yml文件中配置 thymeleaf创建统一登录页面<!DOCTYPE html><html lang="en" xmlns:th="http://www.thymelea原创 2021-04-28 18:22:02 · 897 阅读 · 9 评论 -
架构师成长记_第七周_03_CAS单点登录系统的搭建
文章目录CAS单点登录系统的搭建PS: 术语解释1. 构建CAS模块(SSO)2. 编写控制类进行项目初始化搭建启动并测试结果CAS单点登录系统的搭建PS: 术语解释SSO-Single Sign On,单点登录TGT-Ticket Granting Ticket,用户身份认证凭证票据ST-Service Ticket,服务许可凭证票据TGC-Ticket Granting Cookie,存放用户身份认证凭证票据的cookie1. 构建CAS模块(SSO)pom.xml<?xml原创 2021-04-28 17:09:01 · 208 阅读 · 1 评论 -
架构师成长记_第七周_02_CAS单点登录时序图介绍
文章目录CAS单点登录时序图PS:CAS单点登录时序图CAS 全称为 Central Authentication Service, 即中央认证服务, 是一种单点登录的解决方案, 可以用于不同的顶级域名之间的单点登录.在多个系统之间的登录就会通过该独立的CAS系统去进行验证, 实现了统一的登录.PS:临时票据只能够使用一次, 使用完后会删除我们的保存用户会话只是在 cookie 中进行了保存...原创 2021-04-28 11:33:48 · 575 阅读 · 1 评论 -
架构师成长记_第七周_01_springBoot 集成 分布式会话拦截器
文章目录springBoot 集成 分布式会话拦截器1. 创建拦截器类2. 配置拦截器效果展现springBoot 集成 分布式会话拦截器1. 创建拦截器类package com.beyond.controller.interceptor;import com.beyond.controller.BaseController;import com.beyond.utils.BEYONDJSONResult;import com.beyond.utils.JsonUtils;import co原创 2021-04-28 10:43:30 · 198 阅读 · 1 评论 -
架构师成长记_第六周_18_springBoot 集成 Redis集群
springBoot 集成Redis集群1. 在yml文件中配置如下server: port: 8088spring: datasource: # 数据源的相关配置 url: jdbc:mysql://localhost:3306/foodie-shop-dev?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true原创 2021-04-20 16:30:48 · 201 阅读 · 1 评论 -
架构师成长记_第六周_17_redis slot槽节点的介绍及查看集群信息
文章目录slot槽节点 (遵循一致性hash原则)1. slot 槽节点是存在于Redis集群的master节点中的, 而在slave从节点中是没有槽节点的.2. slot 槽节点是`平均`分配在master节点上的3. slot 槽节点是用来保存数据的.查看集群信息测试slot槽节点 (遵循一致性hash原则)1. slot 槽节点是存在于Redis集群的master节点中的, 而在slave从节点中是没有槽节点的.2. slot 槽节点是平均分配在master节点上的3. slot 槽节点是原创 2021-04-20 11:21:27 · 488 阅读 · 1 评论 -
架构师成长记_第六周_16_Redis 三主三从集群模式 (Redis-Cluster) 及搭建
文章目录Redis 三主三从集群模式搭建三主三从Redis集群1. 环境准备1. 操作我们第一台Cluster服务器 1412. 重复上述步骤, 对后续的5台机器进行配置集群3. 使用新版本的方式搭建集群Redis 三主三从集群模式搭建三主三从Redis集群1. 环境准备六台具有Redis环境的虚拟机, 开始时应该删除working下面的文件, 以免报错.1. 操作我们第一台Cluster服务器 141进入redis.conf目录下, 编辑该文件搜索cluster配置块, 进行配置原创 2021-04-20 08:58:51 · 217 阅读 · 1 评论 -
架构师成长记_第六周_15_SpringBoot 集成 Redis哨兵
SpringBoot 集成 Redis哨兵1. 搭建 Redis 哨兵2. 后端项目进行配置# Redis 哨兵模式 database: 1 password: xxxxxx sentinel: master: beyond-master nodes: 192.168.92.132:26379,192.168.92.138:26379,192.168.92.139:263793. 测试...原创 2021-04-19 16:25:44 · 170 阅读 · 1 评论 -
架构师成长记_第六周_14_Redis 哨兵机制与实现
文章目录Redis 哨兵机制 (Sentinel)1. 配置Redis 哨兵机制具体配置信息如下:2. 由于是哨兵集群, 所以3台redis节点的哨兵配置文件一模一样.PS: 将配置文件进行远程传输3. 启动哨兵4. 测试哨兵机制PS : Redis 启动命令Redis 哨兵机制 (Sentinel)在Redis主从复制中, 由于我们的Redis Master节点宕机之后, 从节点Slave无法自动的变为主节点, 从而无法为用户提供写的请求, 只能进行读. 为了解决这个问题, 我们引入了Redis 哨原创 2021-04-19 10:01:55 · 239 阅读 · 2 评论