自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Centos7安装mysql8.0整理

一、安装前准备工作1、查看是否有安装过mysqlrpm -qa | grep -i mysql 2、删除mysql(安装过)yum -y remove MySQL-* 3、找出mysql目录并删除find / -name mysql查找mysql的一些目录,把所有出现的目录删除,可以使用rm -rf 路径,删除时请注意,一旦删除无法恢复。4、删除配置文件rm -rf /etc/my.cnf5、删除mysql的默认密码rm -rf /roo...

2021-08-09 16:39:09 143

原创 circuit_breaking_exception,“reason“:“[parent] Data too large, data for [<http_request>]

ES 断路器,jvm堆内存不够当前查询加载数据所以会报data too large, 请求被熔断。一、出现原因批量导入数据过多 或者 查询数据太多,比较频繁集群状态为yellow或red时,分析原因:GET _cluster/allocation/explain二、定期清理缓存出现这样问题,一般是 服务器 内存不够导致的,可以加大 ES可用的内存,但是如果加大不了,那么为了保证服务的可用性,可以 来一个定时任务,定期清理 索引缓存。虽然可能导致 查询会慢,但是总比直接报错 查询.

2021-07-23 17:52:32 5994

原创 Elasticsearch高性能优化实践

ES 性能调优ES 的默认配置,是综合了数据可靠性、写入速度、搜索实时性等因素。实际使用时,我们需要根据公司要求,进行偏向性的优化。一、写优化假设我们的应用场景要求是,每秒 300 万的写入速度,每条 500 字节左右。针对这种对于搜索性能要求不高,但是对写入要求较高的场景,我们需要尽可能的选择恰当写优化策略。综合来说,可以考虑以下几个方面来提升写索引的性能:加大 Translog Flush ,目的是降低 Iops、Writeblock。 增加 Index Refresh 间隔,

2020-08-29 10:48:53 1651

原创 Elasticsearch慢查询日志配置

参看网址:https://www.elastic.co/guide/en/elasticsearch/reference/7.4/index-modules-slowlog.html1、通过修改elasticsearch.yml来启用慢查询:vimelasticsearch.yml###Search Slow Log :查询慢日志配置,日志记录在以“_index_isearch_slowlog.log”结尾的文件中#注:配置不一定都需要,自己选择需要那种级别(warn、info、deb...

2020-07-14 20:37:49 1640

原创 elasticsearch 插件 大全

推荐几款比较常用的elasticsearch插件1.集群监控插件bigdesknodeimageclusterimage2.集群资源查看和查询插件kopfimageimageHQ #elasticsearch-HQ3.调试查询inquisitorimage4.类似sql语法的查询插件elasticsearch-sql(...

2019-10-18 14:27:37 259

原创 通过IDEA的Terminal操作命令时遇到的坑

一、java和javac版本的问题idea版本是IntelliJ IDEA 2019.2,安装完成后,然后通过terminal执行java -version和javac -version时,版本号为11.0.3。需要调整的地方是菜单help-->find action ,输入switch boot jdk,弹出如下框,改成本机的jdk1.8即可。二、maven配置的问题记住...

2019-09-20 22:24:26 6587 1

原创 Elasticsearch7 单节点与集群部署

最近对新版本的ES进行测试,现在整理一下。一、Elasticsearch 7.x 特性ES 7.0是2019年4月份发布的,底层是Lucence 8.0。其新特性有:1、废除单个索引下多Type的支持2、彻底废弃_all字段支持,为提升性能默认不再支持全文检索3、新增应用程序主动检测功能,搭配对应版本的kibana,用户可监测应用服务的健康状态,并在出现问题后及时发出通知4...

2019-09-17 20:28:13 8606

原创 centos7下zookeeper集群安装部署

Zookeeper介绍:Zookeeper是一个分布式协调服务。本身就是一个分布式程序,只要半数以上节点存活,zookeeper就能正常服务。为分布式应用提供一致性服务(CAP理论的CP,区别于Eureka的AP)。zookeeper底层其实只提供了两个功能:1)管理(存储、读取)用户程序提交的数据;2)为用户程序提交数据节点监听服务。原理:zookeeper在配置文件中并没有指...

2019-09-12 17:48:22 172

原创 Elasticsearch介绍及核心概念

一、什么是Elasticsearch?es基于lucence,隐藏复杂性,提供简单易用的restful api接口、java api接口(还有其它语言的api接口)es是一个实时分布式搜索和分析引擎,它用于全文搜索、结构化搜索、分析。二、Elasticsearch特点三、Elasticsearch核心概念3.1近实时从写入数据到可以被搜索到有一个小延迟(大概1秒);...

2019-09-05 10:03:13 819

原创 线上扩展Elasticsearch节点的过程

前置条件:1.保证当前机器能ping通要加入的集群的节点2.保证当前机器的es使用的端口未添加防火墙,默认为9200,9300说明:集群添加节点不会影响线上已经上线的程序中配置的节点信息,例如程序中配置的为a、b、c节点,要上线的节点为d、e,当上线节点时,不会影响程序使用扩充节点:1.设置es堆大小,(es默认堆大小为1g,需要设置为机器内存的一半,...

2019-09-04 15:20:48 940

原创 MySQL的create table as 与create table like区别

最近在进行数据库表备份时,遇到一个坑:create table 的用法上,有关索引丢失的问题。对于mysql的复制相同表结构方法,有create table as 和create table like 两种: create table t2 as select * from t1;as创建出来的t2表(新表)缺少t1表(源表)的索引信息,只有表结构相同,没有索引。 cr...

2019-03-18 11:52:38 13077

翻译 Centos7+Tomcat8,tomcat启动巨慢的解决方案

在apache-tomcat官方文档:如何让tomcat启动更快里面提到了一些启动时的优化项,其中一项是关于随机数生成时,采用的“熵源”(entropy source)的策略。他提到tomcat7的session id的生成主要通过java.security.SecureRandom生成随机数来实现,随机数算法使用的是”SHA1PRNG” A.使用伪随机函数生成器/dev/unran...

2018-09-14 17:07:17 802

转载 Spring Boot:内置tomcat启动和外部tomcat部署总结

springboot的web项目的启动主要分为:一.使用内置tomcat启动启动方式:1、IDEA中main函数启动2、mvn springboot-run 命令3、java -jar XXX.jar使用第三种时,为保证服务在后台运行,会使用nohup ,例如:nohup java -jar -Xms128m -Xmx128m -Xss256k -XX:+PrintG...

2018-05-09 20:07:12 162678 11

转载 ArrayDeque类的使用详解

源码分析来自网址:http://czj4451.iteye.com/blog/1688693

2018-04-25 15:49:08 349

原创 Java并发编程——阻塞队列

阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。 BlockingQueue有两个阻塞场景:1、当队列中没有数据的情况下,消费者端的所有线程都会被自动阻塞(挂起),直到有数据放入队列。2、当队列中填满数据的情况下,生产者端的所有线程都会被自动阻塞(挂起),直到队列中有空的位置,线程被自动唤醒。BlockingQueue的核心方法:放入数据(offe...

2018-04-23 12:51:18 150

原创 Java反射机制

Java 反射是 Java 被视为动态(或准动态)语言的一个关键性质。Java 反射机制容许程序在运行时加载、探知、使用编译期间完全未知的 classes。换言之,Java 可以加载一个运行时才得知名称的 class,获得其完整结构。Java 反射相关的 API 在包 java.lang.reflect 中。Java 反射机制提供如下功能: 在运行时判断任意一个对象所属的类; 在运行时构造任意一个...

2018-04-23 12:44:34 128

原创 TCP与UDP区别总结

TCP和UDP是OSI模型中的运输层中的协议。TCP提供可靠的通信传输,而UDP则常被用于让广播和细节控制交给应用的通信传输。TCP与UDP区别总结:1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保   证可靠交付3、TCP面向...

2018-04-23 11:39:33 136

转载 分布式锁的几种实现方式

目前几乎很多大型网站及应用都是分布式部署的,分布式场景中的数据一致性问题一直是一个比较重要的话题。分布式的CAP理论告诉我们“任何一个分布式系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance),最多只能同时满足两项。”所以,很多系统在设计之初就要对这三者做出取舍。在互联网领域的绝大多数的场景中,都需要牺牲强一致...

2018-04-22 22:56:56 111

原创 [MySql]explain用法详解

转自:https://yq.aliyun.com/articles/51753摘要: 写在前面 explain对我们优化sql语句是非常有帮助的。可以通过explain+sql语句的方式分析当前sql语句。 例子 EXPLAIN SELECT dt,method,url FROM app_log WHERE id=11789 table 显示这一行数据属于哪张表,若在查询中为select起了别名,...

2018-04-22 21:41:34 211

原创 抽象类与接口以及Java8中接口的默认方法

Java8中的默认方法和静态方法的由来,首先还是先重温一下抽象类和接口的区别:抽象类抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。public abstract class GenericServlet implements Servlet, ServletConfig, Serializable {    // abstract...

2018-04-22 21:06:03 11595 1

原创 ReentrantLock使用场景以及注意事项

import java.util.concurrent.TimeUnit;import java.util.concurrent.locks.ReentrantLock;/** * @author FanShukui * @version 2018/4/21 18:01 */public class ReentrantLockTest { public static Reen...

2018-04-21 18:06:54 2295 2

转载 java8的parallelStream

先看一段代码,分别为串行遍历、并行遍历、并行加锁遍历:private static List<Integer> list1 = new ArrayList<>();private static List<Integer> list2 = new ArrayList<>();private static List<Integer> li...

2018-04-20 11:07:23 1119

转载 MySQL优化细节分析

一、数据类型优化1. 为什么要尽量避免NULL?因为对于NULL列,MySQL更难优化,因为NULL使得索引,索引统计和值都更加复杂可为null的列会使用更多的存储空间当null列被索引时,每一个索引记录需要1个额外的字节,在MyISAM可能还会导致固定大小的索引变为可变大小的索引2. 整数类型指定长度int(10),大多数情况下是没有意义的,对于存储和计算来说,int(1)和int(10)是相同...

2018-04-17 21:19:43 117

转载 MYSQL性能优化的最佳20+条经验

1. 为查询缓存优化你的查询大多数的MySQL服务器都开启了查询缓存。这是提高性最有效的方法之一,而且这是被MySQL的数据库引擎处理的。当有很多相同的查询被执行了多次的时候,这些查询结果会被放到一个缓存中,这样,后续的相同的查询就不用操作表而直接访问缓存结果了。这里最主要的问题是,对于程序员来说,这个事情是很容易被忽略的。因为,我们某些查询语句会让MySQL不使用缓存。请看下面的示例:12345...

2018-04-17 21:00:32 163

原创 使用@Transactional需要注意的

使用@Transactional的时候请注意一下两点:1、方法一定要 throws Exception2、如果方法里用到了try{}catch(){},那么catch里一定要throw new Exception(e),且使用@Transactional(rollbackFor=Exception.class)

2011-10-26 17:57:41 623 1

原创 oracle数据库管理网页地址

http://192.168.1.203:1158/em

2011-09-08 19:30:57 4798

原创 sql循环嵌套、游标使用、循环结果集示例

sql循环嵌套、游标使用、循环结果集示例:declarecursor user_id isselect u.agent_user_id as userid  from (select t.agent_user_id from agent_power t groupby t.agent_user_id) temp,       agent_user u where temp.agent_user_id = u.agent_user_id   and u.agent_user_code like'%admin'

2011-04-25 15:50:00 1434

原创 Building Word 2007 Documents Using Office Open XML Formats

<br />今晚收到了朋友的一个zip文件,里面全是xml格式,开始不知如何打开,后来看了看[Content_Types].xml的内容,<Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types">,在网上搜了一下这个schemas,找到了这个网址:http://msdn.microsoft.com/en-us/library/bb264572(v=office.12).aspx,才知道如何打开的,原来这是通过这些固

2011-04-11 23:00:00 372

原创 svn 简介及搭建步骤 --- 补充说明

<br />前段时间,做了svn server的学习和搭建,还有结合apache server的svn的搭建,虽然也成功使用svn://和http://来访问svn管理仓库中的文件(同时包括用户权限的配置),但svn server与apache server 是单独安装后,再通过配置的修改进行结合的。而今天又在网上看到了一种基于collabnet(http://www.collab.net/)的svn server(http://www.collab.net/downloads/subversion/)的搭

2011-04-01 17:05:00 399

原创 maven 学习内容整理

1、maven的定义:Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(ProjectLifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。2、apache maven与apache ant的比较:1)、约定方面:      Ant 没有正式的约定如一个一般项目的目录结构,你必须明确的告诉 A

2011-03-31 10:13:00 355

原创 window下,Subversion应用在Apache HTTP服务器上(http://)

1、软件:Subversion:Setup-Subversion-1.6.13.msi(http://subversion.apache.org/packages.html);Apache HTTP Server服务器:httpd-2.2.17-win32-x86-no_ssl.msi(http://httpd.apache.org);2、安装软件时注意:安装Apache HTTP Server服务器完毕后,使用浏览器打开网址http://localhost 检查安装是否成功完成。如果Apache无法启动请

2011-03-22 14:32:00 1968

原创 svn 简介及搭建步骤

Subversion 是一个集中式的信息共享系统。版本库是 Subversion 的核心部分,是数据的中央仓库。版本库以典型的文件和目录结构形式文件系统树来保存信息。任意数量的客户端连接到Subversion 版本库,读取, 修改这些文件。客户端通过写数据将信息分享给其他人,通过读取数据获取别人共享的信息。Subversion,CVS和一些版本控制系统使用拷贝-修改-合并模型,在这种模型里,每一个客户联系项目版本库建立一个个人工作副本—版本库中文件和目录的本地映射。用户并行工作,修改各自的工作副本,最终,各

2011-03-16 15:02:00 533

原创 刚刚接触的涉及html的工具

<br />学习中<br />1、Modernizer<br />       当浏览器不支持HTML5表单或者一部分特性时,我们将会提供替代方案。和检测浏览器的方式相比,更合适的技术是使用特性检测。我们将会使用当前流行的Modernizr库。<br />       Modernizr是一个小型的Javascript库,检测当前浏览器支持HTML5和CSS3的哪些特性。<br />2、Webforms2<br />       Webforms2是 Weston Ruter开发的一个Javascript库

2011-03-14 16:44:00 311

原创 Java多线程之同步与死锁

Java多线程之同步与死锁1.线程的同步<br />1)The code segments within a program that access the same object from separate, concurrent threads are called “critical sections”。这是临界区的概念。<br /> <br />2)同步的两种方式:同步块和同步方法。<br /> <br />3)每一个对象都有一个监视器,或者叫做锁。<br />当线程执行到synchronized的

2011-03-08 17:58:00 1130

转载 spring中的AOP与IOC

<br />spring中的AOP与IOC<br />在J2EE的整个发展历程中,现在正是一个非常时刻。从很多方面来说,J2EE都是一个伟大的成功:它成功地在从前没有标准的地方建立了标准;大大提升了企业级软件的开放程度,并且得到了整个行业和开发者的广泛认可。然而,J2EE在一些方面已经开始捉襟见肘。J2EE应用开发的成本通常很高。J2EE应用项目至少和从前的非J2EE项目一样容易失败——如果不是更容易失败的话。这样的失败率高得让人难以接受。在这样的失败率之下,软件开发几乎变成了碰运气。而在J2EE遭遇失败的

2011-03-07 19:02:00 334

转载 高级权限管理系统的设计

在任何系统中,权限设计是最基础的东西,一个好的权限系统,可以为开发人员提高开发进度;而且,又可以为用户提供完美的可扩展权限管理,而非简单的权限定制。本文实现功能:实现基于角色+模块+权限粒度的权限管理相关概念:(1)角色:是一类功能的集合,比如新闻编辑这个角色,他可能有起草新闻、编辑新闻等功能集合,而责任编辑他可能就有更多的权限,比如除了新闻编辑的功能,还有审核新闻、删除新闻等粒度级别操作;这个可以理解为程序设计中的组.(2)权限粒度:它是最小的单位,比如起草新闻、编辑新闻、审核新闻、删除新闻等(3)用户:

2011-03-07 17:22:00 482

原创 Tomcat 服务器虚拟路径的几种配置方式

<br />配置虚拟路径的好处:<br />      1.可以避免程序员对同一个web项目重新部署,提高开发效率。<br />      2.可以使web应用程序和服务器安装文件所在目录分开,便于web项目的管理。<br />配置方式列表:<br />1. 在%TOMCAT_HOME%/conf/Catalina/localhost目录中创建一个xml文件,文件内容<Context path=”/” docBase=”” workDir=”” debug=”” reloadable=”” crossCon

2011-03-07 16:38:00 599

原创 wget命令详解

<br />长选项必须用的参数在使用短选项时也是必须的。<br /><br />启动:<br />-V, --version 显示 Wget 的版本并且退出。<br />-h, --help 打印此帮助。<br />-b, -background 启动后进入后台操作。<br />-e, -execute=COMMAND 运行‘.wgetrc’形式的命令。<br /><br />日志记录及输入文件:<br />-o, --output-file=文件 将日志消息写入到指定文件中。<br />-a, --app

2011-03-07 16:19:00 683

原创 javascript 创建类的几个方法

Javascript 语言本身也可以进行面向对象的编程,如下是最近几天对javascript面向对象编程的总结。 对象的创建 javascript对象有两种创建方式 1.使用对象初始器: objName = { prop1:value_1, prop2:value_2, ... } 该方法直接创建实例对象,而无需声明。 2.使用构造函数: 如:fuction Engineer(para1,para2){ this.para1 = para1; this.para2 = para2; ... } my Bil

2011-03-07 15:00:00 361

转载 软件开发七宗罪

<br />想成为一名优秀的软件开发人员需要很长时间的培训和实践。但是如果不遵循合适的原则,即便是再好的程序员也会成为失败的牺牲品。不经意间你就会养成一些可怕的坏习惯,它们可能会一而再再而三地出现,甚至对于经验最为丰富的程序员而言也是如此。我认为软件开发至少存在七宗罪。那么,就请看看欲望、暴食、贪婪、懒惰、愤怒、嫉妒和骄傲会为你的最新编程项目带来哪些意想不到的损失吧。<br />软件开发第一宗罪:欲望(过度设计)<br />现代编程语言趋向于不断增加更新的功能让其臻于成熟。程序员们一层一层地往上堆叠抽象的代

2011-03-04 13:49:00 393

空空如也

空空如也

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

TA关注的人

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