- 博客(69)
- 资源 (1)
- 收藏
- 关注
转载 nginx从http向https的跳转
基于nginx搭建了一个https访问的虚拟主机,监听的域名是test.com,但是很多用户不清楚https和http的区别,会很容易敲成http://test.com,这时会报出404错误,所以我需要做基于test.com域名的http向https的强制跳转我总结了三种方式,跟大家共享一下nginx的rewrite方法思路这应该是大家最容易想到的方法,将所有的http请求通过rewrit...
2019-06-18 15:02:05 948
原创 redis监听过期的key
/** * 自己写的监听类需要实现MessageListener,监听到redis key过期的时候会自动执行到onMessage方法上面 */@Component(value ="SERVICE_NAME")public class RedisMessageListener implements MessageListener { @Override public voi...
2019-05-25 19:39:10 1644
原创 HashMap源码分析
当hash表中的负载因子达到负载极限的时候,hash表会自动成倍的增加容量(桶的数量),并将原有对象重新分配并加入新的桶内,这个过程称为rehash,这个过程是十分耗性能的,一般不这样子弄,一般建议设置比较大的初始化容量,防止rehash,但是也不能太大。这是自己粗糙的实现的hashMap的源码:测试过的package org.llyf.hashmap;public class My...
2018-12-04 12:31:48 138
原创 Hadoop2.7.3写入文件源码分析
buf:就是本地缓冲区 最后返回你所拷贝的量进入sum.getBytesPerChecksum()这个方法可以看出bytesPerChecksum是个成员变量这个成员变量的值就等于chunksize 传输过程中要进行校验,从data1向data2传输数据的过程中要进行校验处理,把你要传输的数据和你要算的码放在一起,d...
2018-09-19 14:02:14 388
原创 Java 反射
对于普通的变量的操作:创建变量,是在主内存中进行初始化。线程用到的变量,会先从主内存中拷贝 (read)出来,加载(load)到工作内存,然后引用(use)变量并运算赋值(assign)。然后存储(store)到工作内存,然后更新(write)掉原来的变量普通变量的值在线程之间传递均需要通过主内存来完成。不同线程之间无法直接访问对方工作内存中的变量lock:作用于主内存的变量,它把一个...
2018-06-30 10:11:17 296
原创 大数据Hadoop完全分布式集群搭建
准备完全分布式主机的ssh-------------------------1.删除所有主机上的/home/centos/.ssh/*2.在s201主机上生成密钥对$>ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa 3.将s201的公钥文件id_rsa.pub远程复制到201 ~ 204主机上。 并放置/home/centos/.ssh...
2018-04-22 20:50:22 3067
原创 Linux shell脚本的编写案例
vim ~/.bashrc #写入环境变量配置文件然后执行source .bashrc这个文件就生效了unalias是删除别名 unalias vi 但是这个是临时删除,想要永久删除的话必须在配置文件.bashrc里面删除才行 然后取出这10条数据中:前面的下面举个例子:判断登录用户是...
2018-04-22 13:42:35 535
转载 JMM内存模型是JVM的规范
可见性,对于一个该变量的读,一定能看到读之前最后的写入。防止指令重排序,执行代码时,为了提高执行效率,会在不影响最后结果的前提下对指令进行重新排序,使用volatile可以防止,比如单例模式双重校验锁的创建中有使用到,如(https://www.jianshu.com/p/b30a4d568be4)注意的是volatile不具有原子性,如volatile++这样的复合操作,这里感谢大家的指正。至于volatile底层是怎么实现保证不同线程可见性的,这里涉及到的就是硬件上的,被volatile修饰
2020-05-26 16:20:04 295 1
原创 数据库查询语句锦集
sql语句增加虚拟字段,根据名称显示通过或者未通过SELECT EMPNO, ENAME, "JOB", ( CASE WHEN INSTR ("JOB", 'CLERK') > 0 THEN '通过' ELSE '未通过' END ), MGR, SAL, DEPTNOFROM EMP![在这里插入图片描述](https://img-blog.csdnimg.cn/20200520151845173.png?x-oss-process=image
2020-05-20 15:25:02 204
原创 虚拟机里面安装的mysql服务器再次登陆时候登陆不上去解决方案
太久没有使用服务器上的数据库, 今天登录发现提示错误信息“Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)”。接下来我们就来解决下:1,通过whereis my.cnf 数据库配置文件位置,通过编辑mysql.sock套接字文件位置:注意:通过命令 mkdir -p /tmp/mysql,然后执行...
2019-12-25 09:51:35 922
原创 Oracle TABLE ACCESS BY INDEX ROWID
一. 测试环境SQL> select * from v$version where rownum=1;BANNEROracle Database 11g Enterprise Edition Release11.2.0.3.0 - 64bit ProductionSQL> create table dave as selectobject_id,object_name,ob...
2019-11-20 09:26:19 1465
原创 oracle唯一索引与非唯一索引的区别 UNIQUE INDEX,NON-UNIQUE INDEX
索引是我们经常使用的一种数据库搜索优化手段。适当的业务操作场景使用适当的索引方案可以显著的提升系统整体性能和用户体验。在Oracle中,索引有包括很多类型。不同类型的索引适应不同的系统环境和访问场景。其中,唯一性索引Unique Index是我们经常使用到的一种。唯一性索引unique index和一般索引normal index最大的差异就是在索引列上增加了一层唯一约束。添加唯一性索引的数据列...
2019-11-19 10:01:30 3901
原创 oracle sql语句锦集
列出两个月份之间所有的月份SELECTTO_CHAR( ADD_MONTHS( TO_DATE( ‘201804’, ‘yyyyMM’ ), ROWNUM - 1 ), ‘yyyyMM’ ) AS monthlistFROMDUAL CONNECT BY ROWNUM <= months_between(to_date( ‘201809’, ‘yyyyMM’ ),to_date(...
2019-11-07 13:17:11 166
原创 IBMMQ的安装
Linux上安装MQ:参考地址:https://www.ibm.com/developerworks/cn/linux/linux-speed-start/l-ss-mq/#code91安装IBM MQ下载安装包IBM_MQ_9.0.0.0_LINUX_X86-64_TRIAL.tar.gz下载地址:https://www-01.ibm.com/marketing/iwm/iwm/we...
2019-07-27 12:30:57 3001
转载 数据库城乡自关联设计
自关联设计省信息的表结构provincesidptitle设计市信息的表结构citysidctitleproidcitys表的proid表示城市所属的省,对应着provinces表的id值问题:能不能将两个表合成一张表呢?思考:观察两张表发现,citys表比provinces表多一个列proid,其它列的类型都是一样的意义:存储的都是地区信息,而且每种信息的数据量有限,没必要...
2019-04-27 13:43:47 247
转载 jvm参数配置
JVM配置参数分为三类参数:1、跟踪参数2、堆分配参数3、栈分配参数这三类参数分别用于跟踪监控JVM状态,分配堆内存以及分配栈内存。跟踪参数跟踪参数用于跟踪监控JVM,往往被开发人员用于JVM调优以及故障排查。1、当发生GC时,打印GC简要信息使用-XX:+PrintGC或-verbose:gc参数这两个配置参数效果是一样的,都是在发生GC时打印出简要的信息,例如执行代码:1:...
2019-03-10 09:05:12 153
原创 多线程FutureTask笔记
@Servicepublic class UserService { @Autowired private RemoteService remoteService; static ExecutorService executorService = Executors.newFixedThreadPool(10); public Object...
2019-01-29 18:01:28 199
原创 Kafka性能测试与分析
写入压力测试kafka-producer-perf-test.sh--topic topic名称,本例为test_property--num-records 总共需要发送的消息数,本例为1000000--record-size 每个记录的字节数,本例为1000--throughput 每秒钟发送的记录数,本例为20000--p...
2019-01-22 21:26:50 735
原创 Redis大批量插入数据
Redis进阶实践之十六 Redis大批量增加数据一、介绍 有时候,Redis实例需要在很短的时间内加载大量先前存在或用户生成的数据,以便尽可能快地创建数百万个键。这就是所谓的批量插入,本文档的目标是提供有关如何以尽可能快的速度向Redis提供数据的信息。如果想查看英文原文,地址如下:https://redis.io/topics/mass-insert二、操作详解 ...
2019-01-08 18:02:01 12875 2
原创 线上java应用性能排查指南
jstack pid 通过jstack可以打印出线程栈的情况 2.内存分析 jstat查看进程状态信息jstat -gc 85236 2000 100 2秒钟打出100次 jstat -gcutil 82536 2000 100查看堆栈的使用情况kill -3 打印出堆...
2018-12-23 22:10:52 278
原创 springAOP源码解析
注意注意 此时的singletonObject是一个代理类 注意下面这个图是singletonObject还没有成为代理对象 只有执行完singletonObject=singletonFactory.getObject()之后 singeltonObject才成为真正的代理对象,所谓我们应该在这打断点进去看 ...
2018-12-08 19:44:59 127
原创 Hbase笔记
hbase映射到hdfs上的目录结构如下:----------------- /hbase/data/${ns}/${tablename}/${rs}/${f1}/文件名。预先切割--------------- 创建表时,预先对表进行切割。 切割线是rowkey. $hbase>create 'ns2:t2','f1',SPLITS=>['ro...
2018-11-17 08:33:11 151
转载 大数据之kafka
消息存储对于每一款消息队列都非常重要,那么Kafka在这方面是如何来设计做到高效的呢?Kafka这款分布式消息队列使用文件系统和操作系统的页缓存(page cache)分别存储和缓存消息,摒弃了Java的堆缓存机制,同时将随机写操作改为顺序写,再结合Zero-Copy的特性极大地改善了IO性能。而提起磁盘的文件系统,相信很多对硬盘存储了解的同学都知道:“一块SATA RAID-5阵列磁盘的线性写...
2018-11-15 16:55:36 225
原创 随记
@Override public T getEntity(Integer id) { return (T) sf.getCurrentSession().get(clazz, id); }//下面是关于这个参数clazz的细节描述在构造函数里面通过手段取得泛型化超类/**这里重点说下泛型T,这是个抽象类,必然得有子类 如果us...
2018-11-08 18:49:00 235
原创 Hive
创建一个数组类型的表hive> create table student1( > sid int, > name string, > grades array<float>); 形成的数据会是{ 1,Tom,[80,90,75] }这样的类型创建一个map类型hive> create table student...
2018-09-27 18:53:08 141
原创 大数据hadoop集群搭建之后的操作
1.节点的服役和退役(hdfs)[退役] 1.添加退役节点的ip到黑名单,不要更新白名单. [/soft/hadoop/etc/dfs.hosts.exclude.txt] s205 2.配置hdfs-site.xml <property> <name>dfs.hosts.excl...
2018-09-14 18:51:38 516
原创 linux 查看网卡以及开启网卡
解决 Error:No suitable device found: no device found for connection "System eth0"解决使用VMware克隆出来的新虚拟机无法联网的问题一.背景 我们安装好了一个虚拟机,我想做分布式集群,想模拟几台服务器,这时就想直接复制已经有的安装好的虚拟机,这样比较省事,不要在重复的安装虚拟机并配置JAVA环境,省...
2018-08-07 21:12:15 61539
转载 服务框架的核心模块
服务注册是服务提供方向注册中心注册服务信息;当提供服务应用下线时,负责将服务注册信息从注册中心删去。 服务发现是服务调用方从注册中心订阅服务,获取服务提供方的相关信息;当服务注册信息有变更时,注册中心负责通知到服务调用方。服务调用是服务调用方通过从注册中心拿到服务提供方的信息,向服务提供方发起服务调用,获取调用结果。对照上述流程图,我们按照请求的具体过程进行分析。作为...
2018-08-07 08:57:32 470
原创 sql语句查询
Oracle查询语法: select sysdate from dual;查询 当前系统时间 create table user2 as select * from user1 给user1表创建一个备份表user2 select to_char(sysdate,'day') from dual; select to_char(sysdate,'day')in ...
2018-07-20 12:29:30 178
原创 sql数据库优化
索引; 频繁更新的字段不适合做索引 优势:提高查询效率,本质上就是降低IO的使用率 降低cpu使用率 假如说排序如果不适用索引,它得一个一个查询出来再排序,如果使用了索引,它是一个B树 已经是排好序的了(B树,小的放左,大的放右)B+树种查询任意的数据次数:n次(B+树的高度) 因为B+树种数据全部存在叶节点上面 如果索引字段为null,则会使用一个字节...
2018-07-20 11:19:07 172
原创 java里面得时间转换
//时间戳转化为Sting或Date SimpleDateFormat format = newSimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Long time=newLong(445555555); String d = format.format(time); Date date=format.par...
2018-07-20 10:50:43 176
原创 SpringBoot 定时任务
1. 对比Quartz的优缺点优点:配置非常简单缺点:springtask不支持分布式部署不支持动态配置定时任务不支持持久化其实这几个缺点归根结底都是因为不支持持久化,所以如果项目需要持久化定时任务,还是要选择Quartz比较好。下面上下用springtask实现的定时功能代码如下:package org.llyf.test.service;import java.text.SimpleDateF...
2018-07-16 17:47:55 1928
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人