Redis 远程连接配置 [root@localhost ~]# vim /etc/redis/6379.conf bind 0.0.0.0 port 6379 daemonize yes protected-mode no requirepass 123 SpringBoot 整合 Redis 引入依赖 spring-boot-starter-data-redis 包含了 jedis,封装了一类 SpringBoot 与 Redis 的连接工具。 <dependency <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 编写 redisTemplate 的配置类,设置 redisConnectFactory import org.springframework.data.redis.connection.RedisConnectionF....
TRDB 建立在 DBMS 上,通过 DBMS 处理数据吗,单机物理性能受限、横向多机扩充(分布式引用)困难。 技术特点 使用强存储模式,表、行、字段的建立都需要预先严格定义,并进行相关数据约束。 采用 SQL 技术标准来定义和操作数据库。 采用强事务保证可用性和安全性。 主要采用单机集中式处理方式。 单机的局限性 单机读、写数据的速度瓶颈问题 单机存储数据量有限 服务器的纵向扩展的局限性 NoSQL 主体符合非关系型、分布式、开源、横向扩展能力的数据库。 技术特点 使用弱存储模式(取消数据存入类型的强制检查等一系列技术…),速度快。 没有采用 SQL 技术标准来定义和操作数据库。 采用弱事务或根本没有事务处理机制。 主要采用多机分布式处理(DP, Distributed Processing)。 数据存储结构多元化。 NoSql vs TRDB TRDB 为强数据存储模式,NoSql 为弱数据存储模式 分布式技术是 NoSql 的核心技术思路、TRDB 以集中处理为出发点 TRDB 的事务严格遵循 ACID 原则,而 NoSql 主体遵循 Base 原则 TRDB ....
Dubbo 项目分层 传送门 Duboo 开发环境的搭建 创建项目 # 创建dubbo项目并删除src目录 # 右键dubbo项目,创建user-api子项目 # 右键dubbo项目,创建user-service子项目 # 右键dubbo项目,创建user-web子项目 parent 父项目限定版本 <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.3.2</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </b....
注册中心 微服务应用和机器越来越多,调用方需要知道接口的网络地址,如果靠配置文件的方式去控制网络地址,对于动态新增机器,维护带来很大问题。常见的注册中心:zookeeper、Eureka、consul、etcd。 理解注册中心:服务管理,核心是有个服务注册表,心跳机制动态维护。 服务提供者 provider: 启动的时候向注册中心上报自己的网络信息。 服务消费者 consumer: 启动的时候向注册中心上报自己的网络信息,拉取 provider 的相关网络信息。 安装 JDK1.8 # 解压 tar -zxvf jdk-8u191-linux-x64.tar.gz # 移动到/usr/local目录下 mv jdk1.8.0_191 /usr/local/ # 修改/etc/profile,在文件的最后面加上下面几行 vim /etc/profile JAVA_HOME=/usr/local/jdk1.8.0_191 JRE_HOME=$JAVA_HOME/jre PATH=$JAVA_HOME/bin:$PATH export PATH # 激活配置 source /etc/....
数据备份的意义 保护数据的安全。 在出现意外的时候(硬盘的损坏,断电,黑客的攻击),以便数据的恢复。 导出生产的数据以便研发人员或者测试人员测试学习。 高权限的人员操作失误导致数据丢失,以便恢复。 数据库的备份类型 完全备份:对整个数据库的数据进行备份。 部分备份:对部分数据进行备份(可以是一张表也可以是多张表) 增量备份:是以上一次备份为基础来备份变更数据的,节约空间。 差异备份:是以第一次完全备份的基础来备份变更备份的,浪费空间。 数据库备份的方式 逻辑备份效率低,恢复数据效率低,但是逻辑备份节约空间;物理备份浪费空间,但是相对逻辑备份而言效率比较高。 逻辑备份:直接生成 SQL 语句保存起来,在恢复数据的时候执行备份的 SQL 语句来实现数据的恢复。常见备份工具:mysqldump 物理备份:直接拷贝相关的物理数据 数据库备份的场景 热备份:备份时,数据库的读写操作不会受到影响。 温备份:备份时,数据库的读操作可以进行,但是写操作不能执行。 冷备份:备份时,不能进行任何操作。 mysqldump 数据备份(跨机器) # mysqldump使用语法 mysq....
慢查询日志开启与问题定位 性能详情 性能线程的详细解释官方文档链接 语句优化的原则 尽量避免使用 select *from ,尽量精确到想要的结果字段。 尽量避免条件使用 or。 记得加上 limit 限制行数,避免数据量过大消耗性能。 使用模糊查询时,% 放在前面是会使索引失效。 要小心条件字段类型的转换。where 后面的条件值用尽量用' '引起来。
索引 索引是一个单独的,存储在磁盘中上的数据库结构,它们包含着对数据表里的所有记录的引用指针。使用索引可以快速的找出在某列或多列中有特定值的行。 索引的优点 通过创建唯一索引,来保证数据库表中的每一行数据的唯一性。 可以加快数据的检索速度。 可以保证表数据的完整性与准确性 索引的缺点 索引需要占用物理空间。 对表中的数据进行改动时,索引也需要跟着动态维护,降低了数据的维护速度。 索引的常见类型 index:普通索引 unique:唯一索引 primary key:主键索引 foreign key:外键索引 fulltext: 全文索引 组合索引 准备数据 # 准备shell脚本 [root@localhost ~]# vim /test/test.sh #!/bin/bash echo "请输入字段servnumber的值:" read serber echo "请输入创建sql语句的数量:" read number # char=`head /dev/urandom | tr -dc 0-9 | head -c 11` for (( i=0;i<$num....