自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (2)
  • 收藏
  • 关注

原创 centos6搭建nexus+jenkins+maven+gitlab持续集成持续部署(一)

centos搭建nexus+jenkins+gitlab持续集成持续部署安装配置Nexus搭建私服界面元素介绍仓库集合本地maven配置私服安装配置Nexus官网页面下载nexus解压文件mkdir /usr/local/nexustar -zxvf nexus-2.14.15-01-bundle.tar.gz /usr/local/nexus解压后能看到有两个文件夹nexu...

2019-10-17 18:17:38 407

原创 每天10分钟-Class.forName()与ClassLoader有什么区别

在 java 中 Class.forName() 和 ClassLoader 都可以对类进行加载。ClassLoader 就是遵循双亲委派模型最终调用启动类加载器的类加载器,实现的功能是“通过一个类的全限定名来获取描述此类的二进制字节流”,获取到二进制流后放到 JVM 中。Class.forName() 方法实际上也是调用的 CLassLoader 来实现的。Class.forName(St...

2019-08-26 10:52:20 192

原创 每天10分钟-Arthas进阶使用

Arthas-Java诊断工具1.基础命令2.JVM相关3.class/classloader相关4.monitor/watch/trace相关5.options6.管道7.后台异步任务8.WebConsole9.其他特性10.命令列表1.基础命令help——查看命令帮助信息cat——打印文件内容,和linux里的cat命令类似pwd——返回当前的工作目录,和linux命令类似cls——...

2019-07-30 11:01:22 889

原创 每天10分钟-Arthas初探

Arthas-Java诊断工具欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢...

2019-07-29 18:59:40 407

原创 Java的三种代理模式

目录一.代理模式简介1.1静态代理1.2动态代理1.3Cglib代理一.代理模式简介 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外地功能操作,即扩展目标对象的功能. 使用到编程的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需要修改,可以通过代理的方式来扩展该方法 举个例子来说明...

2019-05-07 16:15:27 212

原创 (二)命令行与管控台-基础操作

rabbitmqctl stop_app:关闭应用rabbitmqctl start_app:开启应用rabbitmqctl status:节点状态rabbitmqctl add_user username password:添加用户rabbitmqctl list_users:列出所有用户rabbitmqctl delete_user username:删除用户rabbitmqctl...

2019-04-15 16:33:54 166

原创 (一)RabbitMQ核心概念

RabbitMQ是一个开源的消息代理和队列服务器,用来通过普通协议在完全不同的应用之间共享数据,rabbitmq是使用Erlang语言来编写的,并且rabbitmq是基于AMQP协议优点:- 开源,性能优秀,稳定性保障- 提供可靠性投递模式(confirm),返回模式(return)-与SpringAMQP完美的整合,API丰富-集群模式丰富,表达式配置,HA模式,镜像队列模型-保...

2019-04-15 16:32:33 227

原创 Mycat入门(四)之Mycat的分片join

Mycat目前版本支持的跨分片join,主要有四种方式实现:1.全局表:一个真实的业务系统中,往往存在大量字典的表,它们与业务之间的关系可以理解为”标签”当业务表因为规模进行分片以后,业务表与这些字典表之间的关联就成了比较棘手的问题.字典表的特性: -变动不频繁 -数据量总体变化不大 -数据规模不大,很少有超过数十万条记录全局表的特性:...

2019-02-20 16:52:05 1499 1

原创 Mycat入门(三)

ER表:Entity-Relationship 实体关系 子表的记录与所关 联的父表记录存放在同一个数据分片上,即子表依赖于父表,通过表分组(Table Group)保证数据 Join 不会跨 库操作.表分组(Table Group)是解决跨分片数据 join 的一种很好的思路,也是数据切分规划的重要一条规则全局表:一个真实的业务系统中,往往存在大量的类似字典表的表,这些表基本上很少变动...

2019-02-19 14:54:18 256

原创 Mycat入门(二)

Cobar的十一个秘密:1.Cobar会假死:原因->不可能吧,据说Cobar是NIO的非阻塞,其实,Cobar前端是NIO的,而后端跟mysql的交互是阻塞模式,其NIO只给出了框架,还未实现.2.Cobar高可用的陷阱:原因->分片节点配置了两个数据源,每个节点会对数据源进行心跳检测,默认是第一个,频率是10秒钟一次,当心跳失败后,会自动切换到第二个数据源进行读写,假如Cob...

2019-02-19 14:05:40 129

原创 Mycat入门(一)

对于海量数据处理,按照场景,主要分为两种类型:联机事务处理(OLTP)和联机分析处理(OLAP):1. 联机事务处理(OLTP)也称为面相交易的处理系统,其基本特征是原始数据可以立即传送到计算中心进行处理,并在很短的时间内给出处理结果2. 联机分析处理(OLAP)是指通过多维的方式对数据进行分析,查询和报表,可以同数据挖掘工具,统计分析工具配合使用,增强决策分析能力关系型数据库和非关系型...

2019-02-18 20:29:14 192

原创 第十二章 Java内存模型与线程

DCL单例(双锁检测)public class Singleton{private volatile static Singleton instance;public Singleton getInstance(){if(instancenull){synchronized(Singleton.class){if(instancenull){instance=new Singlet...

2019-02-18 10:33:23 129

原创 第七章 虚拟机类加载机制

类的生命周期:类从被加载到虚拟机内存中开始,到卸载出内存为止,它的整个生命周期包括:加载,验证,准备,解析,初始化,使用和卸载7个阶段.其中验证,准备和解析3个部分统称为连接.类加载的过程:加载,验证,准备,解析和初始化1.加载阶段,虚拟机需要完成3件事情:a.通过一个类的全限定名来获取定义此类的二进制字节流b.将这个字节流所代表的静态存储结构转化为方法区的运行时数据结构c.在内存中...

2019-02-18 10:26:38 175

原创 第十三章 线程安全与锁优化

Java语言中各种操作共享的数据分为以下5类:不可变,绝对线程安全,相对线程安全,线程兼容和线程对立线程安全的实现方法:1.互斥同步:同步是指在多个线程并发访问共享数据时,保证共享数据在同一时刻只被一个(或者是一些,使用信号量的时候)线程使用.而互斥是实现同步的一种手段,临界区,互斥量和信号量都是主要的互斥实现方式.因此,在这4个字里面,互斥是因,同步是果;互斥是方法,同步是目的. 最基...

2019-02-18 10:24:07 127

原创 第四章虚拟机性能监控与故障处理工具

数据包括:运行日志,异常堆栈,GC日志,线程快照(threaddump/javacore文件),堆转储快照(heapdump/hprof文件)等.-Dcom.sun.management.jmxremote 开启JMX管理功能(JDK1.6以上默认开启)jpsJVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程,它是使用频率最高的JDK命令行工具...

2019-01-22 11:37:12 217

原创 第三章垃圾收集器与内存分配策略

对象存活判定算法:2种1.引用计数算法:给对象添加一个引用计数器,有地方引用它时,计数器就加1,引用失效时,计数器减1.任何时刻,计数器为0的对象,是不可能再被使用的 优点:实现简单,判断效率也很高 缺点:很难解决对象之间相互循环引用的问题,对象A,B相互引用,引用计数不为02.可达性分析算法: 通过一系列称为"GC Roots"的对象作为起点,从这些节点开始向下搜索,搜索所走过的路径称...

2019-01-09 14:28:15 147

原创 第二章Java内存区域与内存溢出异常

JVM内存模型及特征:堆: 1.JVM管理内存中最大的一块,被所有线程共享 2.唯一目的是存放对象实例和数组 3.垃圾搜集器管理的主要区域 4.可扩展,通过-Xmx和-Xms来控制 5.如果在堆中没有内存完成实例分配,并且堆也无法再扩展时,将会抛出OutOfMemoryError异常虚拟机栈: 1.线程私有 2.局部变量表所需的内存空间在编译期间完成分配 3.该区域规定了两...

2019-01-07 14:50:19 214 1

原创 IDEA切换远程分支提交代码

场景还原公司该项目的Git上有dev,test,master分支,同事提交代码至dev分支,笔者将idea的分支切换为dev并拉取最新代码,然后直接将本地dev的代码提交至test分支,发现无法切换远程分支,进行代码提交解决方案经过多次尝试,终于成功实现,IDEA是可以切换远程分支的,只不过…正常人很难找到,

2018-12-06 20:29:35 10980

原创 IDEA中文乱码

场景还原springboot项目中的配置文件,带有中文注释,将配置文件提交到git,或者用本地记事本打开,发现是unicode编码,而不是中文,检查了下文本编码都是UTF-8,很奇怪~~解决方式打开设置勾选Transparent native-to-ascii conversion,会将所有字符转成ascii编码保存(实际上就是转成unicode转义序列)...

2018-12-06 19:58:53 200

原创 Squid-搭建代理服务器

安装yum -y install squid 安装yum -y removed squid 卸载配置白名单验证:# /etc/squid/squid.confacl client src xx.xx.xx.xx #ip白名单acl localnet src 10.0.0.0/8 # RFC1918 possible internal networkacl local...

2018-12-05 20:44:18 717

原创 ELK集群-Kibana安装配置(六)

安装tar -zxvf kibana-6.2.2-linux-x86_64.tar.gzmv kibana-6.2.2 /home/elk/kibana-6.2.2配置server.port: 5600server.host: "0.0.0.0"server.name: "kibana-172.30.1.199:5601"elasticsearch.url: "http://1...

2018-11-30 13:24:39 389

原创 ELK集群-ElasticSearch安装配置(五)

安装tar -zxvf elasticsearch-6.2.2.tar.gzmv elasticsearch-6.2.2 /home/elk/elasticsearch-6.2.2-01cp -r /home/elk/elasticsearch-6.2.2-01 /home/elk/elasticsearch-6.2.2-02...cp -r /home/elk/elasticsea...

2018-11-30 13:10:37 533

原创 ELK集群-Logstash安装配置(四)

安装tar -zxvf logstash-6.2.2.tar.gzmv logstash-6.2.2 /home/elk/logstash-6.2.2-01cp -r /home/elk/logstash-6.2.2-01 /home/elk/logstash-6.2.2-02配置logstash-pipeline01.confinput{ kafka{ b...

2018-11-30 11:36:59 511

原创 ELK集群-Kafka安装配置(三)

安装kafka:tar -zxvf kafka_2.11-2.1.0.tgzmv kafka_2.11-2.1.0 /home/kafka-2.11zookeeper:tar -zxvf zookeeper-3.4.13.tar.gzmv zookeeper-3.4.13 /home/zookeeper-3.4.13配置kafka => server.propertie...

2018-11-26 20:51:17 237

原创 ELK集群-集群架构简介(一)

环境1.系统:CentOS72.ELK:elasticsearch-6.2.2,logstash-6.2.2,kibana-6.2.2 下载3.Kafka集群:kafka-2.11,zookeeper(当前篇幅中只单机演示,后期补上集群配置)ELK搭建架构图只是个人理解,有更好的建议或者想法,欢迎程序猿朋友留言交流详细配置,请见博客...

2018-11-26 19:59:44 963

原创 ELK集群-Filebeat安装与配置(二)

filebeat是一个ELK官方推出的轻量级日志收集工具,用go语言编写,相比logstash占用资源更少,安装也更方便,可以通过包管理直接安装,缺点是不具备logstash的filterfilebeat下载地址安装tar -zxvf filebeat-6.2.2-linux-x86_64.tar.gzmv filebeat-6.2.2-linux-x86_64 /home/el...

2018-11-26 19:33:10 353

原创 Tomcat优化

-----------------------------------------------------服务器优化-----------------------------------------------------------------------------------------------------------------------Tomcat优化: 1.内存优化(JV...

2018-11-22 18:24:16 182

原创 Job表达式

cron表达式一般只有7位http://cron.qqe2.com/ 第一位,表示秒,取值0-59* 第二位,表示分,取值0-59* 第三位,表示小时,取值0-23* 第四位,日期天/日,取值1-31* 第五位,日期月份,取值1-12* 第六位,星期,取值1-7,星期一,星期二...,注:不是第1周,第二周的意思 另外:1表示星期天,2表示星期一。* 第7为,年...

2018-11-22 18:21:50 541

原创 菜鸡的redis之路(四)-常见缓存问题之热点Key

这里的并发指的是多个redis的client同时set key引起的并发问题。比较有效的解决方案就是把redis.set操作放在队列中使其串行化,必须的一个一个执行,具体的代码就不上了,当然加锁也是可以的,至于为什么不用redis中的事务,留给各位看官自己思考探究...

2018-11-22 18:19:03 203

原创 菜鸡的redis之路(四)-常见缓存问题之缓存雪崩

2018-11-22 18:17:38 137

原创 菜鸡的redis之路(四)-常见缓存问题之缓存穿透

常见的redis缓存问题1.缓存穿透 -->频繁查询一个不存在的数据,由于缓存不命中,每次都要查询持久层,从而失去缓存的意义2.缓存雪崩 -->缓存大量失效的时候,引发大量查询数据库3.热点Key -->某个key访问非常频繁,当key失效的时候,有大量线程来构建缓存,导致负载增加,系统崩溃缓存穿透方案一:使用互斥锁排队(缺点:锁机制影响性能)######...

2018-11-22 18:16:03 176

原创 菜鸡的redis之路(三)-redis启动3个警告信息解决

Redis服务器启动3个警告信息的解决方案##################################################################################第一个警告信息:The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxcon...

2018-11-22 18:05:46 408

原创 ADSL拨号代理-构建IP代理池

// An highlighted blockvar foo = 'bar';yum update nss curl

2018-11-20 18:45:01 3146 2

原创 CentOS7.2安装headless Chrome+ChromeDriver

安装google-chrome1.执行:curl https://intoli.com/install-google-chrome.sh | bash安装成功后,显示如下图:检查是否缺少依赖,返回为空说明正常:ldd /opt/google/chrome/chrome | grep "not found"安装对应版本的Chromedriver地址:http://npm.taob...

2018-11-19 17:40:10 1000

原创 mongoDB可视化工具----adminMongo

adminMongo安装使用准备:node.js环境 [下载:https://nodejs.org/en/download/ ]mongodb [下载:https://www.mongodb.com/]安装将adminMongo项目从GitHub上克隆下来,地址[https://github.com/mrvautin/adminMongo.git]在工程目录下...

2018-08-22 17:12:22 546

原创 python3学习--开发环境配置

windows下安装https://www.python.org/请求库安装爬虫可以简单分为几步:抓取页面、分析页面、存储数据 在抓取页面的过程中,我们需要模拟浏览器向服务器发送请求,所以需要用到一些Python库来实现HTTP请求操作,用到的第三方库有requests、Selenium、和aiohttp等1.requests安装 pip3 install requests...

2018-08-20 15:59:24 265

原创 菜鸡的redis之路(二) List

Redis五大类型:字符串(String)、哈希/散列/字典(Hash)、列表(List)、集合(Set)、有序集合(sorted set)五种 redisTemplate.opsForValue();//操作字符串 redisTemplate.opsForHash();//操作hash redisTemplate.opsForList();//操作list re...

2018-08-17 14:13:51 861

原创 菜鸡的redis之路(一) String

Redis五大类型:字符串(String)、哈希/散列/字典(Hash)、列表(List)、集合(Set)、有序集合(sorted set)五种redisTemplate.opsForValue();//操作字符串redisTemplate.opsForHash();//操作hashredisTemplate.opsForList();//操作listredisTemplate.opsF...

2018-08-17 11:46:49 188

原创 Java开发两年经验面试题汇总

一、基础a.ArrayList和LinkedList区别,底层实现等等b.jvm内存模块有哪些,修改jvm参数,gc算法c.线程池是否用过,有哪些重要的参数,分别是什么意思;为什么选择用线程池,而不直接去创建线程d.一个对象,什么情况下会被回收e.map的底层实现f.java8有哪些新特性g.多线程有哪些创建方式h.线程同步的方式有哪些i.数据库事物的隔离级别有哪些j.mys...

2018-07-09 10:19:23 8306

转载 Intellij IDEA 快捷键整理

【常规】Ctrl+Shift + Enter,语句完成“!”,否定完成,输入表达式时按 “!”键Ctrl+E,最近的文件Ctrl+Shift+E,最近更改的文件Shift+Click,可以关闭文件Ctrl+[ OR ],可以跑到大括号的开头与结尾Ctrl+F12,可以显示当前文件的结构Ctrl+F7,可以查询当前元素在当前文件中的引用,然后按 F3 可以选择Ctrl+N,可以快...

2018-03-22 15:31:08 430

分布式数据库架构及企业实践-基于Mycat中间件

《分布式数据库架构及企业实践——基于Mycat中间件》由资深 Mycat 专家及一线架构师、DBA 编写而成。全书总计 8 章,首先简单介绍了分布式系统和分布式数据库的需求,然后讲解了分布式数据库的实现原理,并对市场上存在的各种分布式数据库中间件进行了对比,再围绕着如何利用 Mycat 实现分布式数据库而展开。基于阿里开源的Cobar产品而研发,Cobar的稳定性、可靠性、优秀的架构和性能以及众多成熟的使用案例使得MYCAT一开始就拥有一个很好的起点,站在巨人的肩膀上,我们能看到更远。业界优秀的开源项目和创新思路被广泛融入到MYCAT的基因中,使得MYCAT在很多方面都领先于目前其他一些同类的开源项目,甚至超越某些商业产品。 MYCAT背后有一支强大的技术团队,其参与者都是5年以上资深软件工程师、架构师、DBA等,优秀的技术团队保证了MYCAT的产品质量。 MYCAT并不依托于任何一个商业公司,因此不像某些开源项目,将一些重要的特性封闭在其商业产品中,使得开源项目成了一个摆设。

2019-02-14

linux学习笔记

包含了自己在学习linux过程中的一些记录,供有兴趣学习linux系统,或者涉及到服务器部署的童鞋参考

2018-11-20

空空如也

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

TA关注的人

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