自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

转载 SQL常用的几种优化方法

在sql查询中为了提高查询效率,我们常常会采取一些措施对查询语句进行sql优化,下面总结的一些方法,有需要的可以参考参考。1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值...

2020-08-12 09:48:48 349

原创 Redis比较常用的五种数据结构

Redis五种数据结构如下:对redis来说,所有的key(键)都是字符串。1.String 字符串类型是redis中最基本的数据类型,一个key对应一个value。String类型是二进制安全的,意思是 redis 的 string 可以包含任何数据。如数字,字符串,jpg图片或者序列化的对象。字符串常用操作SET key value //存入字符串键值对...

2020-03-30 21:27:45 1022

原创 Redis基础介绍及安装

Redis核心原理Redis 单线程为什么还能这么快?因为它所有的数据都在内存中,所有的运算都是内存级别的运算,而且单线程避免了多线程的切换性能损耗问题。正因为 Redis 是单线程,所以要小心使用 Redis 指令,对于那些耗时的指令(比如keys),一定要谨慎使用,一不小心就可能会导致 Redis 卡顿。Redis 单线程如何处理那么多的并发客户端连接?Redis的IO多路复用:red...

2020-03-28 19:09:12 129

转载 zookeeper分布式锁实现原理

1、互斥锁mutex lock顾名思义就是排它锁,同一时间只允许一个客户端执行。实现步骤:首先,创建一个lock node,例如“locknode” 其次,客户端lock执行以下方式:创建(create)一个有序临时节点,例如“locknode/guid-lock-”,其中guid可以是你客户端的唯一识别序号,如果发生前面说的创建失败问题,需要使用guid进行手动检查。 调用g...

2020-03-21 14:03:22 192

转载 Zookeeper中的ZAB协议

ZAB协议用途ZAB(Zookeeper Atomic Broadcast) 协议是为分布式协调服务zookeeper专门设计的一种支持崩溃恢复的原子广播协议。在zookeeper中,主要依赖ZAB协议来实现分布式数据一致性,基于该协议,zookeeper实现了一种主备模式的系统架构来保持集群中各个副本之间的数据一致性。ZAB协议介绍ZAB协议包含两种基本模式,分别是:1》崩溃恢复之数...

2020-03-21 13:04:52 348

原创 Zookeeper的Znode属性

Zookeeper拥有一个命名空间就像一个精简的文件系统,不同的是它的命名空间中的每个节点拥有它自己或者它下面子节点相关联的数据。Zookeeper中必须使用绝对路径也就是使用“/”开头。Znode:Zookeeper目录树中每个节点对应一个Znode。每个Znode维护这一个属性,当前版本、数据版本、建立时间和修改时间等,Zookeeper就是使用这些属性来实现特殊功能的。当一个客户端要...

2020-03-21 12:19:15 1247

原创 Zookeeper的watcher机制、事件及状态

zookeeper主要是为了统一分布式系统中各个节点的工作状态,在资源冲突的情况下协调提供节点资源抢占,提供给每个节点了解整个集群所处状态的途径。这一切的实现都依赖于zookeeper中的事件监听和通知机制。zookeeper中的事件和状态事件和状态构成了zookeeper客户端连接描述的两个维度。这里我们通过下面的两个表详细介绍zookeeper中的事件和状态。zookeeper客户...

2020-03-21 11:36:54 699

原创 设计模式:策略模式

什么是策略设计模式:它定义了算法家族,分别封装起来,让他们之间可以项目替换,此模式让算法的变化,不会影响到算法的客户。我们可以这样理解,工厂模式是让我们内部的构造变得高内聚低耦合,而策略模式是让我们的内部代码和外部客户端代码不直接进行联系,而是通过一个桥梁来进行沟通,并且使相同算法或功能的代码进行封装。大家通过上面的UML图上可以看出,策略模式的思想为封装算法类,通过一个上下文类,来沟通客户端...

2020-03-05 16:59:36 77

原创 设计模式:单例模式(7种实现方式)

单例模式,顾名思义就是只有一个实例,并且它自己负责创建自己的对象,这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。1、饿汉式:/** * @Auther: yjntue * @Date: 2020/3/4 19:48 * @Description: * 饿汉式 若一个类的成员都是比较重的资源,这种方式不合适 * 不允许被继承 */public ...

2020-03-04 20:39:32 194

原创 CAS无锁操作及Atomic包

1、CASCAS全称Compare And Swap,即比较并替换,是一种实现并发常用到的技术,Java并发包中有很多类用到的CAS技术,其核心算法思想如下:执行函数:CAS(V,E,N)其中包含3个参数:V表示要更新的变量 E表示预期值 N表示要更新的增量值下面我们来看一段代码:import java.util.ArrayList;import java.uti...

2020-03-02 22:24:53 127

原创 理解Volatile关键字及其实现原理

Volatile的用法volatile通常被比喻成“轻量级的synchronized”,也是java并发编程中比较重要的一个关键字,和synchronized不同,volatile是一个变量修饰符,只能用户来修饰变量,无法修饰方法及代码块等。volatile的用法比较简单,只需要在声明一个可能被多线程访问的变量时,使用volatile修饰就可以。以下代码,是一个比较典型的使用双重锁校验(D...

2020-03-02 16:01:58 369

原创 JAVA实现多线程启动的几个方式

方式一:继承Thread类的方式1、创建一个类继承Thread类2、实现父类中的run方法3、new这个子类并调用父类中的start方法。方式二:实现Runnable接口的方式1、创建一个类实现Runnable接口,2、实现Runnable接口中的run方法。3、将此对象作为参数传到Thread类的构造器中,创建Thread类的对象,并调用start方法。方式三:实...

2020-03-01 17:31:21 250

原创 Tomcat9通过阿里云域名下载证书配置SSL访问

首先,域名一定要经过备案的,我的就是因为域名备案过期,花费了很长时间,其实配置是对的。1、在阿里云的域名管理里面申请SSL证书,然后下载tomcat的证书。下载证书,参照以下文档进行配置https://help.aliyun.com/document_detail/102939.html?spm=5176.10695662.1996646101.searchclickresult...

2019-10-12 15:27:37 309 1

原创 Tomcat9配置https的IP访问

使用jdk自带的工具先生成jks,下面的命令,证书有效期为:10年,证书密码为:123456,生成存储的位置为:d:/ssl.jkscd "C:\Program Files\Java\jdk1.8.0_152\bin"keytool -genkey -alias ssl -keypass 123456 -keyalg RSA -sigalg sha256withrsa -keysize ...

2019-10-12 11:59:54 1322

原创 oralce 11g 使用sqlplus / as sysdba创建表空间及用户

登录linux,切换到oracle用户su oraclesqlplus / as sysdba查询当前系统所有表空间select name from v$datafile;新建表空间,语法如下:create tablespace 表空间名 datafile '对应的文件名' size 大小;create tablespace yzh da...

2019-09-17 15:42:03 1331

原创 oracle 12c创建用户及分配权限

sqlplus '/ as sysdba'create user c##epaysit identified by epaysit;创建用户名为:epaysit,密码为epaysit的用户 grant connect,resource,dba to c##epaysit;授予epaysit用户DBA权限...

2019-06-01 23:11:23 1302

转载 linux 搭建SFTP服务器

参考:http://www.koukousky.com/server/linux/217.htmlhttp://blog.csdn.net/zwl19920815/article/details/54893721https://blog.zengrong.net/post/1616.html在百度上看到一个回答:sftp 走的是ssh 协议 开启了sshd就相当于开启了sf...

2019-05-12 09:01:32 373

转载 linux 查看并对外开放端口(防火墙拦截处理)

查看端口是否可访问:telnet ip 端口号 (如本机的35465:telnet localhost 35465)开放的端口位于/etc/sysconfig/iptables中查看时通过 more /etc/sysconfig/iptables 命令查看如果想开放端口(如:8889)(1)通过vi /etc/sysconfig/iptables 进入编辑增添一条-A INPU...

2019-04-30 11:27:21 473

原创 Linux系统下命令安装weblogic12c

有两种安装模式:界面安装和静默安装,本人电脑界面DISPLAY无法设置成功,所以采用了静默安装模式;开始安装工具/原料 centOS Linux系统 weblogic12c 方法/步骤 1 到oracle官网下载.jar结尾的weblogc包,然后放在weblogic用户下的install目录下(此目录是我自己创建,亦可以其他)。 .w...

2019-04-30 10:56:13 6079

转载 Linux安装jdk7开发环境

官网 下载jdk7版本 地址:http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html 下载Linux-jdk-7u80版本:    注意:这里使用登录(账户:96****06@qq.com...

2019-04-30 10:52:17 242

原创 MySQL8.0.15安装教程

一、官网下载MySQL8.0.15直达官网下载Community版:https://dev.mysql.com/downloads/mysql/然后拉倒下方点击对应版本位数下载二、安装下载完压缩包之后就解压,再创建一个同级空目录mysqlData,再进入mysql8.0.15安装根目录创建一个my.ini配置文件。[mysqld]# 设置3306端口port=33...

2019-04-15 14:51:03 490

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除