自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 一.hadoop 使用Docker安装配置

 一.安装hadoop    (这里需要有一定的docker知识)   1.安装镜像      我们抛弃了传统的vm方式,使用docker来安装部署hadoop.首先要准备一个镜像,可以使用Dockerfile构建一个合适自己的镜像,或者可以在共有仓库中找一个具有hadoop环境的镜像来使用也可以。由于我是配置的阿里云的加速器,所以在阿里云的仓库中找了一个具有hadoop环境的...

2018-04-22 22:25:48 544

原创 java知识点总结

线程类: 1.start是在主线程执行,run是新开启一个线程执行 2. synchronized是对类的当前实例进行加锁,static synchronized是对类进行加锁.     pulbic class Something(){ public synchronized void isSyncA(){} public synchr...

2018-04-16 10:22:55 140

原创 mysql 之 schema与数据类型优化

一.选择优化的数据类型     1.更小的通常更好:如果只要保存1~200,tinyint unsigned更好.因为占用更小的内存和磁盘空间.    2.简单就好: 简单数据类型需要更小的CPU时间周期.例如:整型比字符操作代价更低(字符集的问题).使用mysql自带类型取代字符串(date,datetime),使用整型存储IP.    3.尽量避免Null:单列索引无法储n...

2018-04-11 09:43:15 205

原创 数据库mvcc机制

转载:http://blog.csdn.net/whoamiyang/article/details/519018881. MVCC简介1.1 什么是MVCCMVCC是一种多版本并发控制机制。1.2 MVCC是为了解决什么问题?大多数的MYSQL事务型存储引擎,如,InnoDB,Falcon以及PBXT都不使用一种简单的行锁机制.事实上,他们都和MVCC–多版本并发控制...

2018-03-05 23:21:55 287

原创 redis的持久化

            redis持久化 一. RDB持久化   1.1 RDB持久化的一些特性   用save(阻塞)和bgsave(非阻塞,派生一个子进程来处理)可以生成RDB文件.   因为AOF文件的更新频率比RDB高,所以如果开启了AOF会优先使用AOF来还原数据库状态.   服务器在载入RDB文件期间会一直阻塞,直到完成.     1.2  自动保存...

2018-02-22 18:50:44 124

原创 redis对象类型

     redis对象类型      redis并没有用我们先前提到的的主要数据结构:SDS,链表,字典,压缩列表,跳跃列表作为redis对象的直接实现.而是基于这些数据 结构创建一个对象系统.      这个系统包括了字符串对象,哈希对象,列表对象,集合对象和有序集合对象.每种对象都至少用到了一个我们前面介绍的数据结构.一.对象类型以及编码     redis使用对象表示...

2018-02-22 14:28:52 109

原创 mysql 分页语句优化

 测试数据表结构    现在有两张表   customer,以及order_test, customerId的主键是order_test的外键   CREATE TABLE `customer` ( `customerId` int(11) NOT NULL AUTO_INCREMENT, `phone` varchar(11) NOT NULL COMMENT '...

2018-01-30 11:25:17 144

原创 mysql explain 各个字段的含义

  1)、id列数字越大越先执行,如果说数字一样大,那么就从上往下依次执行,id列为null的就表是这是一个结果集,不需要使用它来进行查询。 2)、select_type列常见的有:A:simple:表示不需要union操作或者不包含子查询的简单select查询。有连接查询时,外层的查询为simple,且只有一个B:primary:一个需要union操作或者含有子查询的s...

2018-01-30 11:16:27 667

原创 mysql常用引擎的基本特性

mysql常用的三种引擎       (1)  MyISAM存储引擎            不支持事务、也不支持外键,支持全文索引优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表支持3种不同的存储格式,分别是:静态表;动态表;压缩表             静态表:表中的字段都是非变长字段,这样每个记录都是固定长度的...

2018-01-25 16:48:47 196

原创 MySQL索引背后的数据结构及算法原理

索引的本质MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。提取句子主干,就可以得到索引的本质:索引是数据结构。我们知道,数据库查询是数据库的最主要功能之一。我们都希望查询数据的速度能尽可能的快,因此数据库系统的设计者会从查询算法的角度进行优化。最基本的查询算法当然是顺序查找(linear search),这种复杂度为O(n)的算法在数据量很大...

2018-01-25 16:15:30 98

原创 红黑树 与 B+树区别和应用场景

红黑树红黑树是每个节点都带有颜色属性的二叉查找树,颜色或红色或黑色。在二叉查找树强制一般要求以外,对于任何有效的红黑树我们增加了如下的额外要求:1. 节点是红色或黑色2. 根节点是黑色。3 每个叶节点(NIL节点,空节点)是黑色的。4 每个红色节点的两个子节点都是黑色。(从每个叶子到根的所有路径上不能有两个连续的红色节点)5. 从任一节点到其每个叶子的所有路径都...

2018-01-25 14:51:02 3867

原创 Zookeeper介绍

 Zookeeper介绍 Zookeeper特性       zookeeper是一个开源的分布式协调服务.设计的目标是将那些复杂容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集.     一致性        从同一个客户端发起的事务请求,最终在zookeeper会按顺序执行.    原子性        所有事务请求的处理结果在所有节点上都是一致...

2018-01-24 11:07:31 105

原创 使用Zookeeper

  一.部署与运行      1.系统环境         zk支持绝大多少操作系统.不过需要注意的是,FreeBsd系统的JVM对JAVA的NIO支持的不是很好,不建议在该系统上部署生产环境.      2.java环境        建议使用jdk1.6或者以上的版本.      3.集群或者单机                   3.1集群模式需要至少三...

2018-01-23 15:00:15 141

原创 shell 截取变量

假设有变量 var=http://www.aaa.com/123.htm.1. # 号截取,删除左边字符,保留右边字符。1echo ${var#*//} 其中 var 是变量名,# 号是运算符,*// 表示从左边开始删除第一个 // 号及左边的所有字符即删除 http://结果是 :www.aaa.com/123.htm...

2018-01-18 14:30:22 786

原创 vi常用命令

空格键 向右移动一格x 删除后面的字符 X 删除前一个字符  删除3个字符就是3x  dd:删除一行   D 删除到行尾 caw:改写单词  c 相当于 d 变为编辑模式J:删除换行符,使下一行并上来。     nJ:连接后面的n行u:撤销上一次操作      U:撤销当前行的所有修改ctrl+r:对撤消的撤消i 在光标前插入I 在行首插入 a 在光标后插入A...

2018-01-18 14:22:14 101

原创 第八章 Class装载系统

Class装载系统一.class文件的装载过程   class文件通常以文件的形式存在,只有被虚拟机装载的class类型才能在程序中使用.系统装载CLass类型可以分为加载,连接和初始化.     1.1类装载的条件    Class只有在必须要使用的时候才会被加载,一个类或者接口在初次使用前必须要初始化. 被动使用不会引起类的初始化.     下面的例子,只会初始化Par...

2018-01-17 16:05:32 158

原创 第七章 java堆

  java堆一.内存溢出的原因         1.堆溢出        当堆中强引用对象占用了大部分空间,导致内存无法回收,对象大小之和大于-Xmx就会导致堆溢出.    2.直接内存溢出        下面的代码申请直接内存,导致直接内存溢出 . 当JAVA进程的所有内存之和(堆空间,栈空间,直接内存,以及虚拟机自身所用的内存)大于-Xmx *2的时候,就会出...

2018-01-16 14:53:41 108

原创 第四篇 垃圾回收器以及内存分配

垃圾回收器以及内存分配  一.垃圾回收器         1.串行回收器            它分为新生代串行回收器和老年代串行回收器           1.1新生代串行回收器             它有两个特点:单线程,独占式。在实时性要求高的系统,这个是不可接收的.                       新生代串行处理器默认使...

2018-01-16 10:54:44 126

原创 第三篇 JVM垃圾回收算法以及引用类型

 JVM垃圾回收算法以及引用类型 一.垃圾回收算法   垃圾回收是java体系最重要的组成部分之一.垃圾回收顾名思义就是把不用的对象给丢弃,释放内存空间.  接下来来看看java垃圾回收机制的理论基础:引用技术法,标记压缩法,标记清楚法,复制算法和分代分区.     1.引用技术法    引用计算法的实现很简单,对于一个对象a,只要有任何一个根对象引用它,那...

2018-01-15 16:54:11 138

原创 第二篇 jvm常用参数

不同的jvm参数可以在gc信息中显示出不同的内容,我们先来学习以下简单的gc信息.   开启-XX:+PrintGCDetails参数,运行java程序查看gc信息 [GC (System.gc()) [PSYoungGen: 523K->368K(4608K)] 523K->376K(15872K(可用堆大小)), 0.0014747 secs] [Times: ...

2018-01-15 16:10:52 105

原创 第一篇 初识Java虚拟机

     一. Java虚拟机的基本结构以及各个部分的作用                  每个区域各司其职1.     类加载系统负责从文件系统或者网络中加载class信息       2.     方法区存放加载的class信息3.     java堆存放几乎所有的对象实例。所有线程共享.4.     直接内存可以用java nio库来分配,直...

2018-01-15 15:44:36 139

原创 centos7编译安装nginx升级https

安装依赖: [html] view plain copy yum install -y gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel  下载nginx:[html] view plain copy wget -c https://nginx...

2018-01-11 14:21:07 213

原创 netty之AttributeKey的应用

 1)AttributeMap这是是绑定在Channel或者ChannelHandlerContext上的一个附件,相当于依附在这两个对象上的寄生虫一样,相当于附件一样,如图所示:这个图还算比较形象地描述了AttributeMap的作用,我们知道每一个ChannelHandlerContext都是ChannelHandler和ChannelPipeline之间连接的桥梁,每一个Ch...

2018-01-08 16:21:38 10771 1

原创 tcp握手

TCP/IP协议三次握手与四次握手流程解析 一、TCP报文格式  TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。下面是TCP报文格式图:图1 TCP报文格式  上图中有几个字段需要重点介绍下:  (1)序号:Seq序号,占32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。  (2)确认序号:Ack序号,占32位,只有ACK标志位为1时,确认序号字...

2018-01-07 21:20:17 64

原创 redis 数据结构分析

   REDIS底层数据结构 一.redis的字符串   redis底层使用SDS(simple dynamic string) 作为默认字符串表示.SDS还被用作缓冲区,AOF模块的缓冲区以及客户端状态中的输入缓冲区.     1.1  SDS的定义    struct sdshdr{ int len;//字符串长度 int free;//数组中未使用的长...

2017-03-21 17:11:50 117

原创 第十二章 ActiveMQ性能调优

           第十二章 ActiveMQ性能调优章节导读  学习调优技术   如何优化生产者和消费者   一个优化的实例      ActiveMQ的性能高度依赖于许多不同的因素,包括代理网络的拓扑结构,传输连接器,网络的速度和服务质量,硬件,操作系统以及Java虚拟机.     但是不管在什么应用环境下,你都可以使用一些性能调优技术以改善ActiveM...

2017-02-16 16:17:12 961

原创 jenkins 部署svn 项目到远程linux服务器

 一、安装Jenkins地址https://jenkins.io/index.html选择适合你的操作系统文件下载我这里选的是windows的msi包下载直接一键安装,默认目录是C:\Program Files (x86)\Jenkins\然后控制面板->管理工具->服务->jenkins->启动如果端口8080已经被占用了,那么需要修改端口,在目录...

2017-02-15 18:36:25 563

原创 unbuntu下apache+svn的配置

 安装apache,在命令行终端中输入一下命令:$ sudo apt-get install apache2如果安装失败,执行以下命令之后再安转sudo apt-get upgrade,sudo apt-get  update 修改Apache端口sudo vi /etc/apache2/ports.conf  将配置文件中的端口改成你想要的端口 然后...

2017-02-15 16:46:57 68

原创 第十一章 高级客户端选项

                               第十一章 高级客户端选项章节导读    如何使用专属消费者   消息组   了解对流对象以及二进制大对象的支持   失败重连    调度消息传递 11.1 专属消费者       当消息从代理中分发时,遵循着先进先出原则.但是如果在一个队列中有超过一个消费者,你就不能保证这个原则...

2017-02-08 16:05:03 145

原创 第十章 ActiveMq代理的属性在实际中的应用

                 第十章 ActiveMq代理的属性在实际中的应用章节导读    使用通配符和复合的目的地   利用advistory消息   理解虚拟的topic 以及追溯消费者   使用activeMq插件   apache camel的介绍    10.1 通配符和复合的destination         下面会介绍使用通...

2017-02-05 14:34:32 181

原创 第九章 ActiveMq的高级特性

                      第九章 ActiveMq的高级特性 章节导读   配置ActiveMQ的高可用   理解网络代理(networks of brokers)   通过配置扩展ActiveMq        9.1 配置ActiveMq高可用              当应用被部署到生产环境中时,你需要考虑到容灾问题(网络,硬...

2017-02-03 11:25:25 225

原创 第八章 - ActiveMQ 和java应用的结合

                                                                 ActiveMQ 和java应用的结合   章节导读   在java应用中嵌入ActiveMQ   ActiveMq结合Spring   用Spring编写JMS客户端                 1.1  将Active...

2017-01-20 18:00:02 126

原创 第十三章 RememberMe

Shiro提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下:1、首先在登录页面选中RememberMe然后登录成功;如果是浏览器登录,一般会把RememberMe的Cookie写到客户端并保存下来;2、关闭浏览器再重新打开;会发现浏览器还是记住你的;3、访问一般的网页服务器端...

2017-01-13 16:53:45 380

原创 第十二章 与spring集成

Shiro的组件都是JavaBean/POJO式的组件,所以非常容易使用Spring进行组件管理,可以非常方便的从ini配置迁移到Spring进行管理,且支持JavaSE应用及Web应用的集成。 在示例之前,需要导入shiro-spring及spring-context依赖,具体请参考pom.xml。spring-beans.xml配置文件提供了基础组件如DataSource、DA...

2017-01-12 17:32:54 77

原创 第十一章 缓存机制

Shiro提供了类似于Spring的Cache抽象,即Shiro本身不实现Cache,但是对Cache进行了又抽象,方便更换不同的底层Cache实现。对于Cache的一些概念可以参考我的《Spring Cache抽象详解》:http://jinnianshilongnian.iteye.com/blog/2001040。 Shiro提供的Cache接口: Java代码  ...

2017-01-12 17:09:57 77

原创 第十章 shiro的会话管理

转帖地址:http://jinnianshilongnian.iteye.com/blog/2021439  Shiro提供了完整的企业级会话管理功能,不依赖于底层容器(如web容器tomcat),不管JavaSE还是JavaEE环境都可以使用,提供了会话管理、会话事件监听、会话存储/持久化、容器无关的集群、失效/过期支持、对Web的透明支持、SSO单点登录的支持等特性。即直接使用...

2017-01-11 18:36:32 179

原创 第九章 shiro的jsp标签

Shiro提供了JSTL标签用于在JSP/GSP页面进行权限控制,如根据登录用户显示相应的页面按钮。  导入标签库Java代码  <%@taglib prefix="shiro" uri="http://shiro.apache.org/tags" %>  标签库定义在shiro-web.jar包下的META-INF/shiro.tld...

2017-01-11 15:26:45 68

原创 第八章 shiro拦截器

转帖地址:http://jinnianshilongnian.iteye.com/blog/2021439 8.1 拦截器介绍Shiro使用了与Servlet一样的Filter接口进行扩展;所以如果对Filter不熟悉可以参考《Servlet3.1规范》http://www.iteye.com/blogs/subjects/Servlet-3-1了解Filter的工作原理。首先下图...

2017-01-11 15:20:26 83

原创 第七章 与web集成

转帖:http://jinnianshilongnian.iteye.com/blog/2021439 Shiro提供了与Web集成的支持,其通过一个ShiroFilter入口来拦截需要安全控制的URL,然后进行相应的控制,ShiroFilter类似于如Strut2/SpringMVC这种web框架的前端控制器,其是安全控制的入口点,其负责读取配置(如ini配置文件),然后判断URL是...

2017-01-10 18:31:13 62

原创 第六章 Realm及相关对象

转帖:http://jinnianshilongnian.iteye.com/blog/2021439  6.1 Realm【2.5 Realm】及【3.5 Authorizer】部分都已经详细介绍过Realm了,接下来再来看一下一般真实环境下的Realm如何实现。  1、定义实体及关系即用户-角色之间是多对多关系,角色-权限之间是多对多关系;且用户和权限之间通...

2017-01-09 18:22:48 72

判断上传文件是否jpg图片

自己看自己看自自己看自己看自己看自己看自己看自己看自己看自己看自己看自己看自己看自己看己看自己看自己看自己看

2009-10-20

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

TA关注的人

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