上一页 1 2 3 4 5 6 7 8 ··· 15 下一页
摘要: ♦ 目标 ♦ 把定时任务通过集群的方式进行管理调度,并采用分布式部署,保证系统的高可用,提高了容错。那么如何保证定时任务只在集群的某一个节点上执行,或者一个任务如何拆分为多个独立的任务项,由分布式的机器去分别执行, 众多的定时任务如何统一管理,现在有很多成熟的分布式定时任务框架,都能很好的实现上述的 阅读全文
posted @ 2020-09-21 12:18 codedot 阅读(218) 评论(0) 推荐(0) 编辑
摘要: 数据库的操作越来越成为整个应用的性能瓶颈,这对于Web应用尤其明显。关于数据库的性能,这并不只是DBA需要关心的,而更是后端开发需要去关注的事情。 |-- 服务器硬件的优化 |-- MySQL数据库配置优化 |-- CentOS系统针对mysql的参数优化 |-- 内核相关参数(/etc/sysct 阅读全文
posted @ 2020-09-20 20:09 codedot 阅读(632) 评论(0) 推荐(0) 编辑
摘要: 锁在 MySQL 中是非常重要的一部分,锁对 MySQL 的数据访问并发有着举足轻重的影响。 一、锁的认识 锁的解释 计算机协调多个进程或线程并发访问某一资源的机制。 锁的重要性 在数据库中,除传统计算资源(CPU、RAM、I\O等)的争抢,数据也是一种供多用户共享的资源。如何保证数据并发访问的一致 阅读全文
posted @ 2020-09-19 22:41 codedot 阅读(570) 评论(0) 推荐(0) 编辑
摘要: 什么是事务处理呢??事务处理是用来维护数据库的完整性的,它保证成批的MySQL操作要么完全执行,要么完成不执行。 MySQL 事务主要用于处理操作量大,复杂度高的数据。由一步或几步数据库操作序列组成逻辑执行单元,这系列操作要么全部执行,要么全部放弃执行。在 MySQL 中只有使用了 Innodb 数 阅读全文
posted @ 2020-09-19 22:22 codedot 阅读(128) 评论(0) 推荐(0) 编辑
摘要: MySQL数据库中提供了很丰富的函数。MySQL函数包括数学函数、字符串函数、日期和时间函数、条件判断函数、系统信息函数、加密函数、格式化函数等。通过这些函数,可以简化用户的操作。例如,字符串连接函数可以很方便的将多个字符串连接在一起。 一、数学函数 ABS(X):返回X的绝对值。 select A 阅读全文
posted @ 2020-09-19 22:20 codedot 阅读(108) 评论(0) 推荐(1) 编辑
摘要: 一、MySQL大小写敏感的控制 mysql是通过lower_case_table_names参数来控制大小写敏感的,该参数在[mysqld]结点下。具体的含义笔者从官网截了一张图。 注: ①关于lower_case_table_names参数对表名称或数据库名称大小写敏感的控制。 ② Unix下默认 阅读全文
posted @ 2020-09-19 22:16 codedot 阅读(3293) 评论(0) 推荐(0) 编辑
摘要: 一、为什么要小表驱动大表 类似循环嵌套。 for(int i=5;.......) { for(int j=1000;......) {} } 如果小的循环在外层,对于数据库连接来说就只连接5次,进行5000次操作,如果1000在外,则需要进行1000次数据库连接,从而浪费资源,增加消耗。这就是为什 阅读全文
posted @ 2020-09-19 21:53 codedot 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 一、什么是主从复制 MySQL 主从复制是指数据可以从一个MySQL数据库服务器主节点复制到一个或多个从节点。MySQL 默认采用异步复制方式,这样从节点不用一直访问主服务器来更新自己的数据,数据的更新可以在远程连接上进行,从节点可以复制主数据库中的所有数据库或者特定的数据库,或者特定的表。 主从复 阅读全文
posted @ 2020-09-19 21:51 codedot 阅读(516) 评论(0) 推荐(0) 编辑
摘要: 行锁偏向InnoDB存储引擎,开销大,加锁慢,会出现死锁,锁定粒度小,发生锁冲突的概率低,但并发度高。 1)创建相关测试表tb_innodb_lock,注意数据库引擎为InnoDB。 drop table if exists test_innodb_lock; CREATE TABLE test_i 阅读全文
posted @ 2020-09-19 17:23 codedot 阅读(301) 评论(0) 推荐(0) 编辑
摘要: 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算机资源(如CPU、RAM、I/O等)的争用外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言 阅读全文
posted @ 2020-09-19 16:51 codedot 阅读(183) 评论(0) 推荐(0) 编辑
摘要: 全局查询日志用于保存所有的sql执行记录,该功能主要用于测试环境,在生产环境中永远不要开启该功能。 一、如何开启全局查询日志 通过my.cnf配置开启该功能 注:对my.cnf文件配置后,需重启mysql。 ① 通过命令查看全局查询日志是否开启成功。 ② 查看全log_globalquery.log 阅读全文
posted @ 2020-09-19 16:49 codedot 阅读(249) 评论(0) 推荐(0) 编辑
摘要: 使用脚本进行大数据量的批量插入,对特定情况下测试数据集的建立非常有用。 1)创建tb_dept_bigdata(部门表) create table tb_dept_bigdata( id int unsigned primary key auto_increment, deptno mediumin 阅读全文
posted @ 2020-09-19 16:43 codedot 阅读(161) 评论(0) 推荐(0) 编辑
摘要: Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量。默认情况下处于关闭状态,并保存最近15次的运行结果。 分析步骤 #开启Show Profile功能,默认该功能是关闭的,使用前需开启 #插入测试数据 向tb_emp_bigda 阅读全文
posted @ 2020-09-19 16:27 codedot 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 慢查询日志是MySQL提供的一种日志记录,它记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值的sql语句,该sql语句会被记录到慢查询日志中。慢查询日志主要与explain进行联合分析。 一、如何开启慢查询日志 默认情况下,MySQL数据库没有开启慢查询日志 阅读全文
posted @ 2020-09-19 16:16 codedot 阅读(427) 评论(0) 推荐(0) 编辑
摘要: 在使用order by时,经常出现Using filesort,因此对于此类sql语句需尽力优化,使其尽量使用Using index。 1)创建test表。 drop table if exists test; create table test( id int primary key auto_i 阅读全文
posted @ 2020-09-19 15:53 codedot 阅读(121) 评论(0) 推荐(0) 编辑
摘要: join主要根据两表或多表之间列的关系,从这些表中进行数据的查询。 首先创建两张表:tb_emp(员工表)和tb_dept(部门表),并插入相关测试数据。 1)tb_emp表。 DROP TABLE IF EXISTS `tb_emp`; CREATE TABLE `tb_emp` ( `id` i 阅读全文
posted @ 2020-09-19 14:17 codedot 阅读(197) 评论(0) 推荐(0) 编辑
摘要: 使用explain关键字可以模拟优化器执行sql查询语句,从而知道MySQL是如何处理sql语句。explain主要用于分析查询语句或表结构的性能瓶颈。(MySQL版本都为5.7.22。) 一、explain的作用 通过explain+sql语句可以知道如下内容: ①表的读取顺序。(对应id) ②数 阅读全文
posted @ 2020-09-17 08:52 codedot 阅读(683) 评论(0) 推荐(0) 编辑
摘要: 一、索引是什么 MySQL官方对索引的定义:索引(Index)是帮助MySQL高效获取数据的数据结构。因此索引的本质就是数据结构。索引的目的在于提高查询效率,可类比字典、书籍的目录等这种形式。 可简单理解为“排好序的快速查找数据结构”。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数 阅读全文
posted @ 2020-09-16 20:49 codedot 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 一、DML(数据操作语言) 插入:insert into student values(01,'tonbby',99); (插入所有的字段)insert into student(id,name) values(01,'tonbby'); (插入指定的字段) 从一个或多个表查数据,插入到另外一个表: 阅读全文
posted @ 2020-09-15 19:47 codedot 阅读(418) 评论(0) 推荐(0) 编辑
摘要: SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL 。 我在这里简单介绍下DDL和DCL。 一、数据定义语言DDL(Data Definition Language) 数据库操作 创建数据库:create database school; 删除数 阅读全文
posted @ 2020-09-15 13:03 codedot 阅读(421) 评论(0) 推荐(0) 编辑
摘要: 一、MySQL的完整架构体系 MySQL完整的架构体系: (1)Connectors 指的是不同语言中与SQL的交互。 (2)Connection Pool 管理缓冲用户连接,线程处理等需要缓存的需求。负责监听对 MySQL Server 的各种请求,接收连接请求,转发所有连接请求到线程管理模块。每 阅读全文
posted @ 2020-09-15 12:13 codedot 阅读(330) 评论(0) 推荐(0) 编辑
摘要: 1 阅读全文
posted @ 2020-09-13 22:09 codedot 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 不同于单体架构的应用,微服务架构由于服务数量众多,出故障的概率更大,这种时候不能单纯依靠“人肉”运维,否则当服务数量越来越多时成本将变得不可控。一个好的解决方案是我们需要对服务进行监控,监控服务运行的数据。当有异常情况出现时,服务能够自动报警,方便运维工程师去处理。 Spring Cloud 中对于 阅读全文
posted @ 2020-09-13 18:56 codedot 阅读(551) 评论(0) 推荐(0) 编辑
摘要: RestTemplate 是从 Spring3.0 开始支持的一个 HTTP 请求工具,它提供了常见的REST请求方案的模版,例如 GET 请求、POST 请求、PUT 请求、DELETE 请求以及一些通用的请求执行方法 exchange 以及 execute。RestTemplate 继承自 In 阅读全文
posted @ 2020-09-13 15:33 codedot 阅读(1822) 评论(0) 推荐(1) 编辑
摘要: Git和GitHub 版本控制工具 Git安装 Git的一些概念 Git命令行操作 Git分支管理 GitHub操作 本地库和远程库的交互 Eclipse中Git操作 Linux安装Gitlab服务器 如何干净地切换到一个分支 git将某分支的某次提交合并到另一分支 SVN Subversion简介 阅读全文
posted @ 2020-09-12 21:39 codedot 阅读(146) 评论(0) 推荐(0) 编辑
摘要: Netflix Hystrix 断路器是 Spring Cloud 中最早就开始支持的一种服务调用容错解决方案,但是目前的 Hystrix 已经处于维护模式了,虽然这并不影响已经上线的项目,并且在短期内,你甚至也可以继续在项目中使用 Hystrix 。但是长远来看,处于维护状态的 Hystrix 走 阅读全文
posted @ 2020-09-11 23:21 codedot 阅读(1851) 评论(0) 推荐(0) 编辑
摘要: 在 Spring Cloud 体系中,几乎每个角色都会有两个以上的产品提供选择,比如在注册中心有:Eureka、Consul、zookeeper、etcd 等;网关的产品有 Zuul、Spring Cloud Gateway 等。在注册中心产品中,最常使用的是 Eureka 和 Consul,两者各 阅读全文
posted @ 2020-09-11 23:19 codedot 阅读(1640) 评论(0) 推荐(0) 编辑
摘要: 一、Spring Cloud Config介绍 可能有人已经听说过 Spring Cloud Config,但分布式配置解决方案却不止 Spring Cloud Config,还有其它一些框架,例如 360 的 QConf 、淘宝的 diamond 、百度的 disconf 等都可以解决分布式配置中 阅读全文
posted @ 2020-09-11 23:18 codedot 阅读(581) 评论(0) 推荐(0) 编辑
摘要: 开发微服务,免不了需要服务间调用。Spring Cloud框架提供了RestTemplate和FeignClient两个方式完成服务间调用(注:早期我们用的是叫 Netflix Feign,不过这个东西的最近一次更新还停留在 2016年7月,OpenFeign 则是 Spring Cloud 团队在 阅读全文
posted @ 2020-09-11 23:16 codedot 阅读(274) 评论(0) 推荐(0) 编辑
摘要: 。一、什么是微服务网关 在微服务架构中,整个系统是由很多个微服务组成的,每一个微服务负责一块独立的业务,当外部的系统需要调用微服务中的一些功能的时候,我们对外提供接口(暴露接口)。 微服务架构中,服务的实例地址经常发生变化,所以我们无法直接将服务的地址暴露出来。如果每一个微服务都直接暴露接口,会导致 阅读全文
posted @ 2020-09-11 12:21 codedot 阅读(641) 评论(0) 推荐(0) 编辑
摘要: Spring Cloud Ribbon是一个基于HTTP和TCP的客户端负载均衡工具,它基于Netflix Ribbon实现。通过Spring Cloud的封装,可以让我们轻松地将面向服务的REST模版请求自动转换成客户端负载均衡的服务调用。Spring Cloud Ribbon虽然只是一个工具类框 阅读全文
posted @ 2020-09-10 12:23 codedot 阅读(281) 评论(0) 推荐(0) 编辑
摘要: Maven仓库:https://search.maven.org/classic/ 在线接口测试工具:http://www.36nu.com/apiTest 图片格式转换:https://www.easyicon.net/covert/ 编程字典codingdict:http://codingdic 阅读全文
posted @ 2020-09-09 21:37 codedot 阅读(247) 评论(0) 推荐(0) 编辑
摘要: 一、Hystrix是什么 雪崩效应 在微服务架构中通常会有多个服务层调用,基础服务的故障可能会导致级联故障,进而造成整个系统不可用的情况,这种现象被称为服务雪崩效应。服务雪崩效应是一种因“服务提供者”的不可用导致“服务消费者”的不可用,并将不可用逐渐放大的过程。 如果下图所示:A作为服务提供者,B为 阅读全文
posted @ 2020-09-09 21:00 codedot 阅读(254) 评论(0) 推荐(0) 编辑
摘要: 创建父项目 File new project: 填写项目信息 默认即可,点击finish创建完成: 由于父项目只用到pom文件 所以把src删掉即可: 父项目pom文件: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://ma 阅读全文
posted @ 2020-09-06 10:24 codedot 阅读(438) 评论(0) 推荐(0) 编辑
摘要: 通过自动配置和绑定到Spring环境,为Spring应用程序提供Netflix OSS集成。通过一些简单的注解,你可以快速启用和配置应用程序中的通用模式。Netflix 提供的模式包括服务发现(Eureka)、断路器(Hystrix)、智能路由(zul)和客户端负载平衡(Ribbon)。 引入Eur 阅读全文
posted @ 2020-09-06 10:20 codedot 阅读(718) 评论(0) 推荐(0) 编辑
摘要: SpringCloud是在SpringBoot的基础上构建的,用于简化分布式系统构建的工具集。 该工具集为微服务架构中所涉及的配置管理,服务发现,智能路由,断路器,微代理和控制总线等操作提供了一种简单的开发方式。 SpringCloud中包含了多个子项目: Spring Cloud Config:配 阅读全文
posted @ 2020-09-04 12:32 codedot 阅读(342) 评论(0) 推荐(1) 编辑
摘要: SpringBoot提供了许多实用程序和注释,可以在测试应用程序时提供帮助。测试支持由两个模块提供:spring-boot-test包含核心项,spring-boot-test-autoconfigure支持测试的自动配置。 大多数开发人员使用spring-boot-starter-test启动器, 阅读全文
posted @ 2020-08-31 09:17 codedot 阅读(351) 评论(1) 推荐(1) 编辑
摘要: SpringCloud学习 SpringCloud介绍 SpringCloud项目搭建 认识Eureka(Spring Cloud Netflix) Consul 注册中心介绍 RestTemplate远程服务调用 声明式服务调用Feign 客户端负载平衡器Ribbon(Spring Cloud N 阅读全文
posted @ 2020-08-30 21:16 codedot 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 一、分布式事务介绍 名词解释 XA :XA规范的目的是允许多个资源(如数据库,应用服务器,消息队列,等等)在同一事务中访问,这样可以使ACID属性跨越应用程序而保持有效。XA使用两阶段提交来保证所有资源同时提交或回滚任何特定的事务。 JTA: Java事务API(Java Transaction A 阅读全文
posted @ 2020-08-25 11:44 codedot 阅读(5918) 评论(0) 推荐(1) 编辑
摘要: 1 阅读全文
posted @ 2020-08-23 10:29 codedot 阅读(132) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 15 下一页