01 2022 档案
摘要:Selenium Grid 介绍 Selenium Grid 是 selenium 提供的一个分布式测试工具,将自动化脚本发布到多个物理机或者虚拟机(跨平台、跨浏览器)上执行,通过一个中心节点来控制多个设备,也就是在中心节点(hub)上管理测试,在其它节点(node)上执行测试,以实现 Seleni
阅读全文
摘要:Selenide 介绍 Selenide github Selenide 官方文档 Selenide 是对 Selenium 的一个封装,其语法更加简单。其优点如下: 代码简单、易读 内置隐式等待(无需考虑元素的等待时间) 用例运行完后自动关闭浏览器 自动对失败用例截图 由于是对 Selenium
阅读全文
摘要:什么是 Docker 私服? Docker 官方的 Docker Hub 是一个用于管理公共镜像的仓库,我们可以从上面拉取镜像 到本地,也可以把我们自己的镜像推送上去。 但是,有时候我们的服务器无法访问互联网,或者你不希望将自己的镜像放到公网当中,此时我们就需要搭建自己的私有仓库,来存储和管理自己的
阅读全文
摘要:Docker-compose 介绍 服务编排:按照一定的业务规则批量管理容器 在微服务架构的应用系统中,一般包含 N 个微服务,且每个微服务一般都会部署多个实例。此时,如果每个微服务都要手动启停,维护的工作量会很大。 要从 Dockerfile build image 或者去 docker hub
阅读全文
摘要:Docker File Docker 镜像原理 思考: Docker 镜像本质是什么? Docker 中一个 centos 镜像为什么只有 200MB,而一个 centos 操作系统的 iso 文件要几个 G ? Docker 中一个 tomcat 镜像为什么有 500MB,而一个 tomcat 安
阅读全文
摘要:Docker 安装 Docker 可支持在 Mac、Windows、Linux 系统上安装,但是在 Windows 系统中 Docker 的安装包目前仅有 win10 专业版和企业版的。win10 家庭版可以采用开启 Hyper-V 伪装成专业版绕过安装检测。还有一种方式是通过 Docker too
阅读全文
摘要:初识 Docker 问题现象 在传统的项目开发流程中,我们写的代码会接触到好几个环境,如开发环境、测试环境以及生产环境。 问题:“水土不服”。即不同环境可能由于依赖版本或配置的不同,导致应用在不同环境的表现不同。如下图所示(JDK 版本不同): 解决方案:在开发环境将应用所依赖的环境和配置一起打包(
阅读全文
摘要:消息存储 消息存储方式 非持久化 消息生成者发送消息到 MQ MQ 返回 ACK(Acknowledge Character)给生产者 MQ push 消息给对应的消费者 消息消费者返回 ACK 给 MQ 持久化 消息生成者发送消息到 MQ MQ 收到消息,将消息进行持久化,存储该消息 MQ 返回
阅读全文
摘要:RocketMQ 集群介绍 RocketMQ 集群分类 单机: 一个 broker 提供服务(宕机后服务瘫痪) 集群: 多个 broker 提供服务(单机宕机后消息无法及时被消费) 多个 master 多个 slave master 到 slave 消息同步方式为同步(较异步方式性能略低,消息无延迟
阅读全文
摘要:MQ MQ 架构: Message 包含内容: RocketMQ 客户端坐标: <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.5.2</v
阅读全文
摘要:RocketMQ 介绍 MQ 介绍 定义: MQ(Message Queue,消息队列)是一种用来保存消息数据的队列。 队列:数据结构的一种,特征为“先进先出”。 MQ 作用 应用解耦 快速的应用变更和维护 流量削锋(削峰填谷) MQ 缺点 系统可用性降低(解决:搭集群) 系统复杂度提高(解决:程序
阅读全文
摘要:SpringBoot 整合 ES 1)引入 ElasticSearch 相关坐标: <dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>elasticsearch-rest-high-level-client</a
阅读全文
摘要:RESTful 风格 REST(Representational State Transfer,表述性状态转移)是一组架构约束条件和原则,而满足这些约束条件和原则的应用程序或设计就是 RESTful,其本质就是一种定义接口的规范。 基于 HTTP 。 使用 XML 或 JSON 的格式定义。 每一个
阅读全文
摘要:IK 分词器-介绍 现有问题:ES 默认对中文分词并不友好,实际上是把中文进行了每个字的分词。 # 查看ES对中文的默认分词 GET /_analyze { "analyzer": "standard", "text": "乒乓球明年总冠军" } # 分词结果,是将“乒乓球明年总冠军”拆分成了“乒”
阅读全文
摘要:ElasticSearch 介绍 基于数据库查询的问题 倒排(反向)索引 倒排索引:将一段文本按照一定的规则,拆分为不同的词条(term),形成词条和 id 的对应关系。 以唐诗为例,所处包含“前”的诗句: 正向索引:《静夜思》--> 窗前明月光 > “前”字 反向索引:“前”字 --> 窗前明月光
阅读全文
摘要:SpringBoot 监控 概述: SpringBoot 自带监控功能 Actuator,可以帮助实现对程序内部运行情况监控,比如监控状况、Bean 加载情况、配置属性、日志信息等。 使用步骤: 导入依赖坐标: <dependency> <groupId>org.springframework.bo
阅读全文
摘要:SpringBoot 介绍 什么是 SpringBoot ? SpringBoot 提供了一种快速使用 Spring 的方式,基于约定优于配置的思想,可以让开发人员不必在配置与逻辑业务之间进行思维的切换,全身心的投入到业务逻辑的代码编写中,从而大大提高了开发的效率,一定程度上缩短了项目周期。 201
阅读全文
摘要:ZooKeeper 介绍 ZooKeeper(简称 zk)是一个分布式的、开源的**(分布式)应用程序的协调服务**。 ZooKeeper 是 Apache Hadoop 项目下的一个子项目,是一个树形目录服务。 ZooKeeper 翻译过来就是“动物园管理员”,它是用来管 Hadoop(大象)、H
阅读全文
摘要:相关概念 互联网项目架构 互联网项目架构的特点: 用户多 流量大,并发高 海量数据 易受攻击 功能繁琐 变更快 传统项目和互联网项目的不同: 用户体验: 美观 功能 速度 稳定性 大型互联网项目架构的目标: 高性能:提供快速的访问体验 高并发:能够同时承载大访问量 高可用:能够长时间稳定提供服务 可
阅读全文

浙公网安备 33010602011771号