- 博客(264)
- 资源 (24)
- 收藏
- 关注
原创 2021年2月反思与总结
高开低落的开端总结当下,反思自我,才能以正确的方式面对未来。2021年总体目标是:走出舒适区,做自己不想做的事情,超越2020年的自己做一位晴天爸爸,提高亲子相处质量概述2021年2月是比较特殊的一个月份,一个新的起点。在这个月份中,发生了很多新鲜的事情。很多事情是以前想做而一直没有做的;还有一些事情是以前没有意识到,知道发生了一些特殊的事件,才意识到这类事情影响的严重性,从而迫使自己不得不重新认识自己、评估自己、改变自己,消除对周围至亲的人造成无形的伤害。2021年2月份发生或意识到.
2021-02-28 23:56:13
557
3
原创 React学习笔记7:React使用注意事项
1. setStatesetState更新状态的2种写法方式一:setState(stateChange, [callback])------对象式的setStatestateChange为状态改变对象(该对象可以体现出状态的更改)callback是可选的回调函数, 它在状态更新完毕、界面也更新后(render调用后)才被调用方式二:setState(updater, [callback])------函数式的setStateupdater为返回stateChange对象的函数updat
2021-02-19 05:20:43
509
1
原创 React学习笔记6:React Hooks API总结
useState-保存状态(惰性初始化)作用函数组件添加状态注意事项初始化以及更新state用来声明状态变量使用步骤(使用useState来创建状态)引入import React,{useState} from "react"接收一个参数作为初始值返回一个数组,第一个值为状态,第二个为改变状态的函数useEffect-解决副效应只要是副效应,都可以使用useEffect()引入。useEffect,就是执行有副作用的操作,默认情况下,它在第一次渲染之后和每次更新
2021-02-13 23:01:26
225
原创 React学习笔记5:React Hooks概述
文章目录概述React的两套API类和函数的差异副效应(副作用)是什么?钩子(hook)出现的意义三大框架对比为什么学习hooks应用场景新版本特性解读Hook使用规则概述React的两套API以前,React API 只有一套,现在有两套:类(class)API 和基于函数的钩子(hooks) API。任何一个组件,可以用类来写,也可以用钩子来写。下面是类的写法。class HelloReact extends React.Component { render() { return
2021-02-13 22:32:50
171
原创 React学习笔记4: React脚手架配置代理
方式一在package.json中追加如下配置"proxy":"http://localhost:5000"说明优点:配置简单,前端请求资源时可以不加任何前缀。缺点:不能配置多个代理。工作方式:上述方式配置代理,当请求了3000不存在的资源时,那么该请求会转发给5000 (优先匹配前端资源)方式二第一步:创建代理配置文件在src下创建配置文件:src/setupProxy.js编写setupProxy.js配置具体代理规则:const proxy = requ
2021-02-13 21:59:40
676
原创 React学习笔记3:React脚手架
使用create-react-app创建react应用react脚手架xxx脚手架: 用来帮助程序员快速创建一个基于xxx库的模板项目包含了所有需要的配置(语法检查、jsx编译、devServer…)下载好了所有相关的依赖可以直接运行一个简单效果react提供了一个用于创建react项目的脚手架库: create-react-app项目的整体技术架构为: react + webpack + es6 + eslint使用脚手架开发的项目的特点: 模块化, 组件化, 工程化创建项目
2021-02-05 17:22:59
93
原创 React学习笔记2:React面向组件编程
面向组件编程概述组件名必须首字母大写虚拟DOM元素只能有一个根元素虚拟DOM元素必须有结束标签渲染类组件标签的基本流程React内部会创建组件实例对象调用render()得到虚拟DOM,并解析为真实的DOM插入到指定的页面元素内部组件的三大核心属性:state定义state是组件对象最重要的属性,值是对象(可以包含多个key-value 的组合)组件被称为“状态机”,通过更新组件的state来更新对应的页面显示(重新渲染组件)注意点组件中render方法中的this
2021-02-05 16:57:26
78
原创 React学习笔记1:React基本概念
React简介概念React 是一个声明式,高效且灵活的用于构建用户界面的 JavaScript 库。使用 React 可以将一些简短、独立的代码片段组合成复杂的 UI 界面,这些代码片段被称作“组件”。用于动态构建用户界面的 JavaScript 库(只关注于视图)由Facebook特点声明式编码组件化编码React Native编写原生应用高效(优秀的Diffing算法)React高效的原因使用虚拟DOM,不总是直接操作页面真实DOMDOM Diffing算法,最小化页
2021-02-05 16:50:18
101
1
原创 ES6新特性
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。ES6主要的新特性如下所示:let关键字let 关键字用来声明变量,使用 let 声明的变量有几个特点:不允许重复声明块级作用域不存在变量提升不影响作用域链const关键字const 关键字用来声明常量,const 声明有以下特点:声明必须赋初始值标识符一
2021-02-05 16:14:23
203
原创 一次失败的机巡平台对接经历分享
机巡平台与物联网平台对接经验总结一次失败的平台对接经历。谨以此,总结失败的原因,杜绝类似事件的发生!背景由我们公司为用户开发的机巡平台,已经上线运行3年多了。目前来说,从软件全生命周期角度来说,该平台处于半死不活的运维阶段;从公司的重视程度来说,该平台处于脱手阶段;从用户的认可度来说,该平台基本上是麻木状态,为了应付上级的检查,会组织相关的人员进行使用。有一天,听到我们的项目负责人说:机巡平台要与物联网平台进行数据对接,我们当时一脸的懵逼。物联网平台是个什么鬼?从哪里冒出来的?经过多种渠道打听,
2020-11-29 17:41:56
202
1
原创 Docker如何将本地镜像发布到阿里云上去
发布流程镜像的生成方法从容器创建一个新的镜像docker commit [OPTIONS] 容器ID [REPOSITORY[:TAG]]OPTIONS说明-a:提交的镜像作者-m:提交时的说明文字阿里云开发者平台阿里云开发者平台https://dev.aliyun.com/search.html创建仓库镜像主要关注命令空间和仓库名称将镜像推送到registry[ImageId],[镜像版本号]根据自己镜像的实际情况进行填写sudo docker login --u
2020-11-08 22:43:34
401
1
原创 Docker安装Tomcat、MySQL和Redis
总体步骤Docker安装Tomcatdocker hub上查找tomcat镜像docker search tomcat从docker hub上拉取tomcat镜像到本地docker pull tomcatdocker images查看是否有拉取到的tomcat使用tomcat镜像创建容器(运行镜像)docker run -it -p 8080:8080 tomcat-p 主机端口:docker容器端口-P 随机分配端口i:交互t:终端Docke
2020-11-08 22:37:57
579
原创 Docker镜像、容器数据卷和Dockerfile
Docker镜像概述镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件,它包含运行某个软件所需的所有内容,包括代码、运行时、库、环境变量和配置文件。UnionFS(联合文件系统)UnionFS(联合文件系统):Union文件系统(UnionFS)是一种分层、轻量级并且高性能的文件系统,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virt
2020-11-07 23:07:16
502
原创 Docker常用命令汇总
Docker常用命令汇总帮助命令docker versiondocker infodocker --help镜像命令docker images列出本地主机上的镜像,各个选项说明如下:REPOSITORY:表示镜像的仓库源TAG:镜像的标签IMAGE ID:镜像IDCREATED:镜像创建时间SIZE:镜像大小同一仓库源可以有多个 TAG,代表这个仓库源的不同个版本,我们使用 EPOSITORY:TAG 来定义不同的镜像如果不指定一个镜像的版本标签,例如只使用 u
2020-11-07 22:53:01
198
原创 Docker概述和安装部署
概述Docker产生的背景一款产品从开发到上线,从操作系统,到运行环境,再到应用配置。作为开发+运维之间的协作我们需要关心很多东西,这也是很多互联网公司都不得不面对的问题,特别是各种版本的迭代之后,不同版本环境的兼容,对运维人员都是考验。Docker之所以发展如此迅速,也是因为它对此给出了一个标准化的解决方案。环境配置如此麻烦,换一台机器,就要重来一次,费力费时。很多人想到,能不能从根本上解决问题,软件可以带环境安装?也就是说,安装的时候,把原始环境一模一样地复制过来。开发人员利用 Docker 可
2020-11-07 22:45:14
222
原创 ActiveMQ高级特性
引入消息队列之后该如何保证其高可用性采用ZooKeeper+Replicated LevelDB集群异步投递Async Sends背景对于一个Slow Consumer,使用同步发送消息可能出现Producer堵塞的情况,慢消费者适合使用异步发送概述ActiveMQ支持同步,异步两种发送的模式将消息发送到broker,模式的选择对发送延时有巨大的影响。producer能达到怎么样的产出率(产出率=发送数据总量/时间)主要受发送延时的影响,使用异步发送可以显著提高发送的性能。ActiveMQ默
2020-11-06 23:15:55
184
原创 ActiveMQ的多节点集群
概述基于zookeeper和LevelDB搭建ActiveMQ集群。集群仅提供主备方式的高可用集群功能,避免单点故障。集群实现方案基于shareFileSystem共享文件系统(KahaDB)基于JDBC基于可复制的LevelDBLevelDB,5.6版本之后推出了LecelDB的持久化引擎,它使用了自定义的索引代替常用的BTree索引,其持久化性能高于KahaDB,虽然默认的持久化方式还是KahaDB,但是LevelDB可能会是趋势。在5.9版本还提供了基于LevelDB和Zook
2020-11-06 23:00:56
457
3
原创 ActiveMQ的消息存储和持久化
概述为了避免意外宕机以后丢失信息,需要做到重启后可以恢复消息队列,消息系统一半都会采用持久化机制。ActiveMQ的消息持久化机制有JDBC,AMQ,KahaDB和LevelDB,无论使用哪种持久化方式,消息的存储逻辑都是一致的。就是在发送者将消息发送出去后,消息中心首先将消息存储到本地数据文件、内存数据库或者远程数据库等。再试图将消息发给接收者,成功则将消息从存储中删除,失败则继续尝试发送。消息中心启动以后,要先检查指定的存储位置是否有未成功发送的消息,如果有,则会先把存储位置中的消息发出去。
2020-11-06 22:40:46
254
原创 JMS规范、ActiveMQ Broker和ActiveMQ传输协议
Java实现ActiveMQ通讯(构建过程)编写pom.xml配置文件<!-- https://mvnrepository.com/artifact/org.apache.activemq/activemq-all --> <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all<
2020-11-06 17:29:16
305
原创 ActiveMQ基本内容及安装部署
概述背景为什么要在系统里引入消息中间件?在什么场景下需要使用消息中间件?系统之间直接调用实际工程落地和存在的问题?微服务架构后,链式调用是我们在写程序时候的一般流程,为了完成一个整体功能会将其拆分成多个函数(或子模块),比如模块A调用模块B,模块B调用模块C,模块C调用模块D。但在大型分布式应用中,系统间的RPC交互繁杂,一个功能背后要调用上百个接口并非不可能,从单机架构过渡到分布式微服务架构的通例,这些架构会有哪些问题?系统之间接口耦合比较严重每新增一个下游功能,都要对上游的相关接口进行改
2020-11-06 17:15:50
101
原创 Maven
文章目录概述简介定位Maven解决的问题项目构建Maven核心概念约定的目录结构POM文件坐标依赖依赖目的是什么依赖范围依赖的传递性依赖的排除统一声明版本号依赖的原则:解决jar包冲突仓库分类仓库中的文件生命周期什么是Maven的生命周期?Clean生命周期Site生命周期Default生命周期生命周期与自动化构建插件和目标继承为什么需要继承机制?创建父工程在子工程中引用父工程在父工程中管理依赖聚合为什么要使用聚合?如何配置聚合?概述简介Maven 是Apache 软件基金会组织维护的一款自动化构建
2020-11-06 15:33:35
101
原创 Shell常用内容汇总
文章目录概述Shell解析器Linux提供的Shell解析器bash和sh的关系CentOS默认的解析器是bashShell脚本入门脚本格式第一个Shell脚本:helloworld第二个Shell脚本:多命令处理Shell中的变量系统变量自定义变量特殊变量:$n特殊变量:$#特殊变量:\$*、\$@特殊变量:$?运算符条件判断基本语法案例实操流程控制if判断case语句for循环while循环read读取控制台输入概述Shell是一个命令行解释器,它接收应用程序/用户命令,然后调用操作系统内核Sh
2020-11-04 23:34:42
150
原创 Mycat之安全设置与监控工具
Mycat安全设置权限设置1、 user标签权限控制目前Mycat对于中间件的连接控制并没有做太复杂的控制,目前只做了中间件逻辑库级别的读写权限控制。是通过server.xml 的 user 标签进行配置。#server.xml配置文件user部分<user name="mycat"><property name="password">123456</property><property name="schemas">TESTDB</pro
2020-10-22 09:01:29
289
原创 Mycat实现垂直拆分与水平拆分
垂直拆分(分库)一个数据库由很多表的构成,每个表对应着不同的业务,垂直切分是指按照业务将表进行分类, 分布到不同 的数据库上面,这样也就将数据或者说压力分担到不同的库上面,如下图:系统被切分成:用户、订单交易、支付几个模块。如何划分表一个问题:在两台主机上的两个数据库中的表,能否关联查询?答案:不可以关联查询。分库的原则:有紧密关联关系的表应该在一个库里,相互没有关联关系的表可以分到不同的库里以下4张表如何分库?客户表分在一个数据库,另外三张表都需要关联查询,分在另外一个
2020-10-22 08:50:39
556
原创 Mycat实现读写分离
概述通过Mycat和MySQL的主从复制配合搭建数据库的读写分离,实现MySQL的高可用性。我们将搭建:一主一从、双主双从两种读写分离模式。一主一从模式一主一从模式是指一个主机用于处理所有写请求,一台从机负责所有读请求,架构图如下1、搭建 MySQL 数据库主从复制具体实现过程,MySQL主从复制配置过程2、修改Mycat的配置文件schema.xml之前的配置已分配了读写主机,是否已实现读写分离?验证读写分离(1)在写主机插入:insert into uservalues (1,@@
2020-10-21 17:28:23
476
2
原创 Mycat概述
一、概述是什么Mycat是数据库中间件数据库中间件中间件:是一类连接软件组件和应用的计算机软件,以便于软件各部件之间的沟通。例子:Tomcat,web中间件。数据库中间件:连接java应用程序和数据库为什么要用Mycat?Java与数据库紧耦合高访问量高并发对数据库的压力读写请求数据不一致数据库中间件对比中间件名称描述CobarCobar属于阿里B2B事业群,始于2008年,在阿里服役3年多,接管3000+个MySQL数据库的schema,集群日处理在线SQL
2020-10-21 17:19:58
170
原创 MySQL之索引分类
索引类型MySQL有多种索引类型,使⽤不同的⻆度,分类也有所不同。功能逻辑角度普通索引普通索引是基础的索引,没有任何约束,主要⽤于提⾼查询效率。示例:CREATE INDEX index_name ON table(column(length))唯一索引唯⼀索引就是在普通索引的基础上增加了数据唯⼀性的约束,索引列的值必须唯⼀,允许有NULL值。如果⼀个唯⼀索引同时还是个组合索引,那么表示列值的组合必须唯⼀。在⼀张数据表⾥可以有多个唯⼀索引。示例:CREATE UNIQUE INDEX i
2020-10-21 15:35:59
84
原创 MySQL主从复制配置过程(双主双从模式)
环境准备为了搭建MySQL数据库主从复制(双主双从模式),准备一下四台服务器,并明确了各节点的角色及IP地址。角色IP地址节点名称Master1192.168.67.140CentOS01Slave1192.168.67.130CentOS02Master2192.168.67.180CentOS04Slave2192.168.67.190CentOS05双主双从配置过程一、双主机配置1、Master1节点配置修改配置文件:vim /e
2020-10-13 15:12:40
1283
1
转载 RPC与REST的异同
REST与RPC的区别网络模型层数名称说明1应用层定义了用于在网络中进行通信和传输数据的接口2表示层定义不同的系统中数据的传输格式,编码和解码规范等3会话层管理用户的会话,控制用户间逻辑连接的建立和中断4传输层管理网络中的端到端的数据传输5网络层定义网络设备间如何传输数据6链路层将上面的网络层的数据包封装成数据帧,便于物理层传输7物理层传输二进制数据实际应用过程中,五层协议结构里面是没有表示层和会话层的。应该说
2020-09-21 15:40:52
177
原创 MySQL主从复制配置过程(一主一从模式)
1、概述MySQL 的主从复制又叫 Replication、AB 复制。至少需要两个 MySQL 服务(可以是同一台机器,也可以是不同机器之间进行)。比如A服务器做主服务器,B服务器做从服务器,在A服务器上进行数据的更新,通过 binlog 日志记录同步到B服务器上,并重新执行同步过来的 binlog 数据,从而达到两台服务器数据一致。MySQL 数据库的主从复制方案,与使用 scp/rsync 等命令进行的文件级别复制类似,都是数据的远程传输。只不过 MySQL 的主从复制是其自带的功能,无需借助第
2020-08-27 16:23:00
1087
原创 ActiveMQ常见问题
什么是 ActiveMQ?activeMQ 是一种开源的,实现了 JMS1.1 规范的,面向消息(MOM)的中间件,为应用程序提供高效的、可扩展的、稳定的和安全的企业级消息通信ActiveMQ 服务器宕机怎么办?这得从 ActiveMQ 的储存机制说起。在通常的情况下,非持久化消息是存储在内存中的,持久化消息是存储在文件中的,它们的最大限制在配置文件的节点中配置。但是,在非持久化消息堆积到一定程度,内存告急的时候,ActiveMQ会将内存中的非持久化消息写入临时文件中,以腾出内存。虽然都保存
2020-08-26 22:53:37
346
原创 ZooKeeper演示案例
1 客户端命令行操作命令基本语法功能描述help显示所有操作命令ls path [watch]使用 ls 命令来查看当前znode中所包含的内容ls2 path [watch]查看当前节点数据并能看到更新次数等数据create普通创建-s 含有序列-e 临时(重启或者超时消失)get path [watch]获得节点的值set设置节点的具体值stat查看节点状态delete删除节点rmr递归删除节点1.启动客户
2020-08-26 22:29:46
120
原创 ZooKeeper内部原理
1 选举机制1)半数机制:集群中半数以上机器存活,集群可用。所以Zookeeper适合安装奇数台服务器。2)Zookeeper虽然在配置文件中并没有指定Master和Slave。但是,Zookeeper工作时,是有一个节点为Leader,其他则为Follower,Leader是通过内部的选举机制临时产生的。3)以一个简单的例子来说明整个选举的过程。假设有五台服务器组成的Zookeeper集群,它们的id从1-5,同时它们都是最新启动的,也就是没有历史数据,在存放数据量这一点上,都是一样的。假设这些服
2020-08-26 22:24:10
88
原创 CentOS下安装ZooKeeper
1本地模式安装部署1.安装前准备(1)安装Jdk(2)拷贝Zookeeper安装包到Linux系统下(3)解压到指定目录tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/module/2.配置修改(1)将/opt/module/zookeeper-3.4.10/conf这个路径下的zoo_sample.cfg修改为zoo.cfg;mv zoo_sample.cfg zoo.cfg(2)打开zoo.cfg文件,修改dataDir路径,修改如下内容:da
2020-08-26 22:21:10
152
原创 ZooKeeper概述
1概述Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。2 特点3 数据结构4 应用场景提供的服务包括:统一命名服务统一配置管理统一集群管理服务器节点动态上下线软负载均衡等。(1)统一命名服务(2)统一配置管理(3)统一集群管理(4)服务动态上下线(5)软负载均衡...
2020-08-26 22:17:51
88
原创 常见的位运算技巧
1. 利用或操作 | 和空格将英文字符转换为小写@Testpublic void test() { System.out.println(('a' | ' ') == 'a');//true System.out.println(('A' | ' ') == 'a');//true}2. 利用与操作 & 和下划线将英文字符转换为大写@Testpublic void test02(){ System.out.println(('b' & '_') == '
2020-08-25 15:40:05
247
转载 进程、线程、协程、通信方式
文章目录进程线程协程进程、线程、协程的区别概念进程、线程共同点进程、线程不同点线程、协程比较通信方式之间的差异进程通信管道(pipe)有名管道 (namedpipe)信号量(semaphore)消息队列(messagequeue)信号 (sinal)共享内存(shared memory)套接字(socket)线程间的通信方式锁机制:包括互斥锁、条件变量、读写锁信号量机制(Semaphore)信号机制(Signal)进程进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源
2020-08-17 17:04:05
364
原创 Redis知识点汇总
一.概述1.什么是RedisRedis(Remote Dictionary Server) 是一个使用 C 语言编写的,开源的(BSD许可)高性能非关系型(NoSQL)的键值对数据库。Redis 可以存储键和五种不同类型的值之间的映射。键的类型只能为字符串,值支持五种数据类型:字符串、列表、集合、散列表、有序集合。与传统数据库不同的是 Redis 的数据是存在内存中的,所以读写速度非常快,因此 redis 被广泛应用于缓存方向,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value
2020-08-07 15:35:31
504
1
原创 Springboot之YAML语法
概述YAML是 JSON 的超集,因此,它是用于指定分层配置数据的便捷格式。只要 class 路径上有SnakeYAML library,SpringApplication class 就会自动支持 YAML 作为 properties 的替代。编写规则属性和值是大小写敏感,同JSON通过缩进表示层次关系字符串默认不需要加单引号或者双引号YAML语法基本语法k:(空格)v:表示一对键值对(空格必须有);以空格的缩进来控制层级关系;只要是左对齐的一列数据,都是同一个层级的s
2020-08-07 10:12:11
148
原创 Tomcat面试题
文章目录1.Tomcat是什么?2.Tomcat的缺省端口是多少,怎么修改3.Tomcat有哪几种Connector 运行模式(优化)?4.Tomcat有几种部署方式?5.Tomcat容器是如何创建servlet类实例?用到了什么原理?6.Tomcat工作模式7.Tomcat顶层架构8.Connector和Container的微妙关系9.Container架构分析10.Container如何处理请求的11.总结1.Tomcat是什么?Tomcat 服务器Apache软件基金会项目中的一个核心项目,是一
2020-08-06 23:25:36
423
React扩展知识总结.pdf
2021-02-19
Docker.pdf
2020-11-08
ActiveMQ知识点汇总.pdf
2020-11-06
JDBC核心技术_汇总篇.pdf
2020-06-08
Java基础篇:Executor框架.pdf
2020-05-07
Java基础篇:Java集合.pdf
2020-04-24
MySQL优化篇:排序分组优化.pdf
2020-04-18
SpringBoot之配置嵌入式Servlet容器.pdf
2020-03-27
MySQL-server-5.5.48-1.linux2.6.i386.rar
2020-03-20
MySQL-client-5.5.48-1.linux2.6.i386.rar
2020-03-20
MyEclipse8.6整合BIRT报表开发
2014-04-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人