自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Docker拉取镜像失败报错Error response from daemon: Get https://registry-1.docker.io解决办法

我们docker安装mysql拉取镜像docker pull mysql:5.7 时报以下错误:[root@localhost ~]# docker pull mysql:5.7 Error response from daemon: Get https://registry-1.docker.io/v2/library/mysql/manifests/5.7: Get ht...

2020-04-24 23:28:42 1651

原创 Python爬虫来啦,抓取数据导出到excel,简单明了,强大,直接贴代码

#!/usr/bin/pythonimport requestsimport xlwtfrom bs4 import BeautifulSoupdef getHouseList(url): house = [] headers = { 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) Apple...

2020-04-20 17:42:26 631

原创 Hadoop启动报错NoClassDefFoundError: javax/activation/DataSource解决方案

如果Hadoop完成正常启动后,我们用jps应该能看到以下5个进程:NameNode、SecondaryNameNode、DataNode、NodeManager、ResourceManager但是发现NodeManager、ResourceManager这两个进程没起来。查看日志发现以下报错:Caused by: java.lang.NoClassDefFoundError...

2020-04-20 13:43:40 567

原创 MySql中 DATE_FORMAT日期格式化的基本语法

以下可以查出完整的日期格式,若需要其它格式可修改。select DATE_FORMAT(last_time, '%Y-%m-%d %h:%i:%s') from alert_event_summary;

2020-04-15 18:30:49 191

原创 Spring依赖注入(DI)详解

一.依赖简介 一个典型的企业应用程序不是由一个单一的对象组成(或Spring的说法中的bean)。即使是最简单的应用程序也只有几个对象一起工作来呈现最终用户看作是一个连贯的应用程序。如何从定义许多独立的bean定义到完全实现的应用程序,在这些应用程序中对象协作实现目标。有关spring的设计模式和应用详情可以参考我这篇文章《spring常用设计模式及应用》二.依赖注

2020-04-15 10:29:41 165

原创 centos7通过yum安装JDK1.8详解

安装之前先检查一下系统有没有自带open-jdk命令:rpm -qa |grep javarpm -qa |grep jdkrpm -qa |grep gcj如果没有输入信息表示没有安装。如果安装可以使用rpm -qa | grep java | xargs rpm -e --nodeps 批量卸载所有带有Java的文件,这句命令的关键字是java。首先检索包含j...

2018-10-09 00:05:14 1831

原创 优化ElasticSearch之合理分配索引分片详解

大多数ElasticSearch用户在创建索引时通用会问的一个重要问题是:我需要创建多少个分片?在本文中, 我将介绍在分片分配时的一些权衡以及不同设置带来的性能影响. 如果想搞清晰你的分片策略以及如何优化,请继续往下阅读.为什么要考虑分片数分片分配是个很重要的概念, 很多用户对如何分片都有所疑惑, 当然是为了让分配更合理. 在生产环境中, 随着数据集的增长, 不合理的分配策略可能会...

2018-09-29 21:07:45 1869

原创 Centos7下Rabbitmq安装详解

第一步:yum安装erlang添加rabbitmq依赖的erlang yum命令repos/etc/yum.repos.d/rabbitmq-erlang.repo[rabbitmq-erlang]name=rabbitmq-erlangbaseurl=https://dl.bintray.com/rabbitmq/rpm/erlang/21/el/7gpgcheck=...

2018-09-20 23:55:38 1439

原创 搭建SpringCloud微服务注册中心详解

我们在使用SpringCloud微服务的时候,首先要创建一个服务注册中心,什么是服务注册中心呢,就好比老师手上的一张同学名单,上面写着所有的同学名字和座位等信息。废话不多说,下面我们来做微服务的第一步:搭建注册中心。我们用开发工具idea进行搭建。第一步:File-New-Project...选择Spring Initializr。第二步:创建包名,类名。第三步:选择Cloud Discover...

2018-04-22 15:46:08 4229

原创 ActiveMq报错Channel was inactive for too (>30000)long解决方案

首先看下警告日志在生产服务器上,如果长期没有使用到队列,MQ Produce和consumer端同时报如下错误,导致不能正常工作。01-30 20:06:59.479 WARN [ActiveMQ InactivityMonitor Worker] (FailoverTransport.java:278) -Transport (tcp://10.27.155.123:6161

2018-01-31 11:01:03 9647

原创 压力测试工具、Web性能压力测试工具ApacheBench(ab)详解

网站性能压力测试是性能调优过程中必不可少的一环。只有让服务器处在高压情况下才能真正体现出各种设置所暴露的问题。Apache中有个自带的,名为ab的程序,可以对Apache或其它类型的服务器进行网站访问压力测试。ApacheBench命令原理:ab命令会创建很多的并发访问线程,模拟多个访问者同时对某一URL地址进行访问。它的测试目标是基于URL的,因此,既可以用来测试Apache的负

2018-01-08 12:49:42 842

原创 Spring MVC整合Velocity详解

Velocity是一个基于java的模板引擎(template engine)。它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象。当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人 员可以只关注页面的显示效果,而由jav

2017-11-10 14:05:59 3788

原创 redis + Jedis + Spring报错Type 'redis/clients/jedis/JedisPoolConfig'(current frame, stack[4]) is not a

redis + Jedis + Spring集成之后运行报以下错误:log4j:WARNNo appenders could be found for logger(org.springframework.core.env.StandardEnvironment).log4j:WARNPlease initialize the log4j system properly.SLF4J:Failed to load class "org.slf4j.impl.StaticLoggerBinder".SL

2017-11-07 10:20:06 10722

原创 Redis之RedisTemplate常用接口详解

以下主要讲3个使用的接口。1、RedisOperations这个接口的实现类就是RedisTemplate,提供了一些对Redis命令的一些操作。2、ValueOperations这个接口的实现类为:DefaultValueOperations. 在RedisTemplate中,已经提供了一个工厂方法:opsForValue()。这个方法会返回一个默认的操作类。另外,我们可以直接通过注解@Resource(name = “redisTemplate”)来进行注入。//声明@Resource(

2017-11-06 23:02:50 9754 1

原创 基于Spring AOP方式的读写分离

一、为什么需要读写分离 随着网站的业务不断扩展,数据不断增加,用户越来越多,数据库的压力也就越来越大,采用传统的方式,比如:数据库或者SQL的优化基本已达不到要求,这个时候可以采用读写分离的策略来改变现状。采用读写分离技术能够有效减轻Master库的压力,又可以把用户查询数据的请求分发到不同的Slave库,从而保证系统的健壮性。二、常用的两种方式 1、定义两个数据库链接。一个是masterDataSource,另个是slaveDataSource,更新数据时读取masterData

2017-10-31 09:37:12 18448

原创 Java数据库连接池详解

1.数据库连接池概述数据库连接的建立是一种耗时、性能低、代价高的操作,频繁的数据库连接的建立和关闭极大的影响了系统的性能。数据库连接池是系统初始化过程中创建一定数量的数据库连接放于连接池中,当程序需要访问数据库时,不再建立一个新的连接,而是从连接池中取出一个已建立的空闲连接,使用完毕后,程序将连接归还到连接池中,供其他请求使用,从而实现的资源的共享,连接的建立、断开都由连接池自身来管理。

2017-10-26 21:06:27 831

原创 ActiveMQ集群部署详解

1、什么是ActiveMQActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ 是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现,尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中间仍然扮演着特殊的地位。 2、ActiveMQ特性⒈ 多种语言和协议编写客户端。语言: Java,C,C++,C#,Ruby,Perl,Python,PHP。应用协议: OpenWire,Stomp REST,WS Notificati

2017-10-20 18:02:28 5285

原创 linux下解压命令、压缩命令大全

linux常用的解压和压缩命令如下:1、.tar 解包:tar xvf FileName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!)2、.gz解压1:gunzip FileName.gz解压2:gzip -d FileName.gz压缩:gzip FileName3、.tar.gz 和 .tgz解压:tar zxvf FileName.tar.gz压缩:tar zcvf FileName.tar.gz DirName4、

2017-10-17 21:58:23 4924

原创 搭建Tomcat集群详解

一、为什么需要Tomcat集群Tomcat的最大并发数是可以配置的,实际运用中,最大并发数与硬件性能和CPU数量都有很大关系的。更好的硬件,更多的处理器都会使Tomcat支持更多的并发。Tomcat默认的HTTP实现是采用阻塞式的Socket通信,每个请求都需要创建一个线程处理,当一个进程有500个线程在跑的话,那性能已经是很低很低了。Tomcat 默认配置的最大请求数是150,也就是说同时支持150个并发。具体能承载多少并发,需要看硬件的配置,CPU 越多性能越高,分配给JVM的内存越多性能也就越高,

2017-10-14 17:56:35 5723

原创 ZooKeeper集群部署详解

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。ZooKeepe提供了协调分布式应用的基本服务,它向外部应用暴露一组通用服务——分布式同步(Distributed Synchronization)、命名服务(NamingService)、集群维护(Group Maintenance)等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。ZooKee

2017-10-12 17:52:19 5482

转载 Selenium Webdriver元素定位的八种常用方式详解

在使用selenium webdriver进行元素定位时,通常使用findElement或findElements方法结合By类返回的元素句柄来定位元素。其中By类的常用定位方式共八种,现分别介绍如下。1. By.name()假设我们要测试的页面源码如下:<button id="gbqfba" aria-label="Google Search" name="btnK" class="gbqfba"><span id="gbqfsa">Google Search</span></button>

2017-10-01 23:20:50 5655

原创 Tomcat集群session如何共享详解

首先我们需要知道什么是session共享,共享session的目的是什么。我们知道,session是一次浏览器和服务器的交互的会话,当一个浏览器和服务器连接之后就会产生一个会话。当我们进行tomcat集群的时候,会遇到这样的问题,我们第一次请求分发到第一台服务器下的服务,第二次请求可能会被分发到另一台服务器下的服务。这样就会产生两个会话,我们获取到的sessionid值是不一样的,此时我们两台服务器通过session获取到的一些值也不一样,这样就无法满足我们的业务需求。那有什么办法解决呢?下边就讲下

2017-09-30 22:36:26 4547

原创 springboot集成redis详解

springboot集成redis非常简单1、引入maven依赖redis包 org.springframework.boot spring-boot-starter-redis2、application.yml配置文件中配置redis环境spring: redis: host: localhost #password: redisp

2017-09-29 18:27:00 5130

原创 springboot中application.properties 改成 application.yml详解

springboot官方推荐使用application.yml配置文件,yml文件的好处,天然的树状结构,一目了然。使用的时候需要注意一些细节的地方:原有的key,例如spring.jpa.properties.hibernate.dialect,按“.”分割,都变成树状的配置,key后面的冒号,后面一定要跟一个空格。下面对比两个文件application.properties:

2017-09-28 23:52:06 28356 1

原创 springboot+poi导出指定格式Excel模板详解+Demo

项目用的是springboot框架,非常的简单,只需导入项目即可运行,先看看效果:资源下载地址:http://download.csdn.net/download/tjcyjd/9998721具体步骤如下:1、引入依赖jar包。在pom.xml中引入两个依赖的包即可: org.apache.poi poi 3.17

2017-09-27 23:17:28 19069 6

原创 Spring Boot 部署与服务配置详解

Spring Boot 其默认是集成web容器的,启动方式由像普通Java程序一样,main函数入口启动。其内置Tomcat容器或Jetty容器,具体由配置来决定(默认Tomcat)。当然你也可以将项目打包成war包,放到独立的web容器中(Tomcat、weblogic等等),当然在此之前你要对程序入口做简单调整。项目构建我们使用Maven或Gradle,这将使项目依赖、jar包管理、以

2017-09-25 00:23:39 3881

原创 nginx配置limit_req限制ip访问速率详解

1、漏桶原理漏桶原理是什么呢?我们可以从字面上简单的理解,就是有一个桶,它的体积是固定的,桶底下有一个小洞会不停的漏水出去,而桶的上方有个水龙头,也不停的往桶里灌水。假设我们这个桶的体积是1L,小洞的口能漏水的最大速率为100ml/s,对以下情况进行实验:(1)进水的速率是50ml/s,这时候对于小洞来说完全无压力,那么这个桶里的水就不会溢出,所有的水都会从小洞里漏出来。(2)接着

2017-09-10 14:17:33 7811 2

原创 Myeclipse SVN 修改用户名和密码详解

Myeclipse的SVN插件想切换账号,找了半天没有找到切换账号的入口怎么办,通过以下办法就可以重置SVN账号。1、首先找到SVN验证身份的加密文件。大概位置如下,如果找不到可用Everything工具全局查找,很容易找到。C:\Users\Administrator\AppData\Roaming\Subversion\auth\svn.simple发现这文件夹里有

2017-09-01 14:56:56 4849

原创 MyEclipse10中折行数设置详解

编辑完成代码,用MyEclipse的代码格式化后,本来不长的代码也被自动转成了多行。虽然自动换行以后在编辑器中一眼就能看到全部的代码,但是可读性却大打折扣,避免出现这种情况的办法是:1.Java代码打开Eclipse的Window菜单,然后Preferences->Java->Code Style->Formatter->Edit/Show(根据不同版本可用的按钮会不一样) ->Line

2017-08-27 22:48:43 3790

原创 RabbitMQ简单概念详解

首先了解下RabbitMQ中的一些专有名词的概念,主要包括:包括ConnectionFactory 、Connection 、Channel、Exchange、Queue、RoutingKey、BindingKey等等。1、Queue-存储消息接收者(消费者)的消息RabbitMQ就是消息队列的一种实现,围绕这个,我们就可以思考一个消息队列到底需要什么,当然是需要队列,那么这个队列就是Qu

2017-08-19 10:40:19 4301

原创 Maven快速查找jar包的pom结构详解

每个Maven项目中都有一个jar包管理的配置文件pom.xml如有以下配置:com.alibabafastjson1.2.1那怎么知道groupId是com.alibaba,artifactId是fastjsonr呢?方法非常的简单,可以到maven的官网查询,打开以下两个网址,查询框中输入fastjson即可查询出相应信息,第二个网址更全更好用点。1、htt

2017-08-18 18:04:23 9365 4

原创 windows下安装Rabbitmq详解

RabbitMQ是建立在强大的Erlang OTP平台上,因此安装Rabbit MQ的前提是安装Erlang。1、什么是Erlang?Erlang(['ə:læŋ])是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erla

2017-08-13 23:57:06 14103

原创 Redis批量删除详解

例如:现在需要删除Redis中的root:001,root:002,root:003,有以下方法1、第一种方法:/usr/local/redis-3.2.1/src/redis-clidel root:001 root:002 root:0032、第二种方法/usr/local/redis-3.2.1/src/redis-cli keys "root:*" | xargs /usr/

2017-08-11 17:21:15 5750

原创 js通过UA判断浏览器是pc端还是手机端详解

网上找的一段,直接上代码,简单明了: var browser = { versions: function() { var u = navigator.userAgent, app = navigator.appVersion; return { //移动终端浏览器版本信息

2017-06-25 23:21:13 15815

原创 nginx配置中的root和alias详解

1、alias配置如下:location /test{ alias/var/www/html/images/;}在这个location配置段中,如果URL请求“/test/logo.gif”,那么nginx将会在服务器上查找“/var/www/html/images/logo.gif”文件,即请求的URL中location后面的部分会被追加到alias指定的目录后面,而locat

2017-06-19 16:22:32 5451

原创 nginx返回json或者文本格式详解

用nginx怎么返回json格式或者文本格式的数据?其实很简单,如下代码:1、返回文本格式location ~ ^/get_text { default_type text/html; return 200 'hello world!'; }2、返回json格式location ~ ^/get_json { default_type applicatio

2017-06-15 17:48:05 10239

原创 nginx状态码详解

nginx有以下的状态码:200:服务器成功返回网页403:服务器拒绝请求。404:请求的网页不存在499:客户端主动断开了连接。500:服务器遇到错误,无法完成请求。502:服务器作为网关或代理,从上游服务器收到无效响应。503 - 服务不可用504:服务器作为网关或代理,但是没有及时从上游服务器收到请求。这些状态码被分为五大类:

2017-06-15 17:28:33 7848

原创 nginx实现tomcat动静分离详解

1.为什么要实现动静分离1)nginx的处理静态资源能力超强主要是nginx处理静态页面的效率远高于tomcat的处理能力,如果tomcat的请求量为1000次,则nginx的请求量为6000次,tomcat每秒的吞吐量为0.6M,nginx的每秒吞吐量为3.6M,可以说,nginx处理静态资源的能力是tomcat处理能力的6倍,优势可见一斑。2)动态资源和静态资源分开,使服务器结构更

2017-05-21 00:19:12 11184 1

原创 Redis执行Lua脚本详细实例

1、redis使用lua的好处​Redis在2.6推出了脚本功能,允许开发者使用Lua语言编写脚本传到Redis中执行,使用lua脚本有以下一些好处:1).减少网络开销:本来5次网络请求的操作,可以用一个请求完成,原先5次请求的逻辑放在redis服务器上完成。使用脚本,减少了网络往返时延。2).原子操作:Redis会将整个脚本作为一个整体执行,中间不会被其他命令插入。3).复用:客

2017-05-11 16:02:59 5188

原创 linux下搭建lua脚本语言的编程环境详解

1、首先了解lua的一些知识lua是一个小巧的脚本语言。是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组,由Roberto Ierusalimschy、Waldemar Celes 和 Luiz Henrique de Figueiredo所组成并于1993年开发。 其设计目的是为了嵌入应用程序中,从

2017-05-09 17:00:40 7132 1

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