自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2022-03-14

一.你在工作中用到了什么设计模式,怎么用的?(1)单例模式编写kafka共用sdk写入的时候,使用了单例模式,不管new多少次kafkaProducer实例,最终都是一个,采用了静态内部类初始化方式使用阿里云oss sdk的时候,创建的client对象也是单例的意图:保证一个类仅有一个实例,并提供一个访问该实例的全局访问点何时使用:当想控制实例数量,节约系统资源的时候常见使用场景:单例模式只允许创建一个对象,因此节省内存,加快对象访问速度,因此对象需要被共用的场合使用,如多个模块使用同.

2022-03-14 23:24:29 919

原创 ElasticSearch的一些用法

这里写自定义目录标题欢迎使用Markdown编辑器自定义映射规则添加字段数据迁移ES新版本改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示

2022-01-08 16:57:45 294

原创 mysql日志系统

概述mysql有如下4种不同的日志:错误日志二进制日志(Binlog日志)查询日志慢查询日志错误日志记录了当mysqld启动和停止时,以及服务器在运行过程中发生任何严重错误时的相关信息,当mysql出现故障导致无法正常启动的时候,可以首先查看此日志该日志是默认开启的,默认存放目录是mysql的数据目录(/var/lib/mysql),默认的日志文件名为hostname.err(hostname是主机名)查看日志位置指令show variables like 'log_error

2021-10-06 14:53:04 376

原创 硬件结构

冯诺依曼模型1945年,冯诺依曼和其他计算机科学家提出了计算机具体实现的报告,遵循了图灵机的设计,提出用 电子元件 构造计算机,并约定用二进制进行计算和存储,将计算机基本结构分为5部分:中央处理器,内存,输入设备,输出设备,总线内存程序和数据都存储在内存,内存的区域是线性的类似于数组(所以内存的读写任何1个数据的速度都是一样的),内存中的数据存储单位是bit,即0或1,最小的存储单位为字节byte,1byte=8bit内存地址自增且从0开始编号,最大地址为内存总字节数-1,cpu平常所说的.

2021-09-30 19:52:49 250

原创 OS内核以及进程间通信方式IPC

一、内核1. 概念计算机由各种外部硬件设备组成,如内存,cpu,硬盘等。如果每个程序要访问某个硬件,那它必须知道如何和这个硬件设备对接通信协议,那这样太麻烦了,因此这项工作交给了中间人-内核来负责,应用程序只需关心与内核交互,无需关心硬件细节2. 内核的功能管理进程、线程,决定哪个进程,线程使用cpu,即cpu调度能力决定内存的分配和回收,即内存管理能力管理硬件设备,为进程和硬件设备之间提供通信能力,即硬件通信能力提供系统调用,如果应用程序要运行更高权限运行的服务,就需要有系统调用,它是用户

2021-09-26 17:04:07 739

原创 HTTPS加密原理

常用加密算法常用对称加密算法AES、DES优点:速度快,对称性加密通常在消息发送方需要加密大量数据时使用,算法公开、计算量小、加密速度快、加密效率高。缺点:在数据传送前,发送方和接收方必须商定好秘钥,然后 使双方都能保存好秘钥。其次如果一方的秘钥被泄露,那么加密信息也就不安全了。另外,每对用户每次使用对称加密算法时,都需要使用其他人不知道的唯一秘 钥,这会使得收、发双方所拥有的钥匙数...

2019-09-24 17:03:25 185

转载 史上最全阿里 Java 面试题总结

JAVA基础JAVA中的几种基本数据类型是什么,各自占用多少字节。String类能被继承吗,为什么。String,Stringbuffer,StringBuilder的区别。ArrayList和LinkedList有什么区别。讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字 段,当new的时候,他们的执行顺序。用过哪些Map类,都有什么区别,Hash...

2019-07-27 09:37:14 114

原创 kafka消费者参数解析

官方文档:参数名含义默认值heartbeat.interval.msThe expected time between heartbeats to the consumer coordinator when using Kafka’s group management facilities. Heartbeats are used to ensure that the c...

2019-07-23 16:47:26 940

原创 Jmeter压力测试案例

介绍Apache JMeter是100%纯JAVA桌面应用程序,被设计为用于测试客户端/服务端结构的软件(例如web应用程序)。它可以用来测试静态和动态资源的性能,例如:静态文件,Java Servlet,CGI Scripts,Java Object,数据库和FTP服务器等等。JMeter可用于模拟大量负载来测试一台服务器,网络或者对象的健壮性或者分析不同负载下的整体性能。官方网站:http...

2019-06-16 11:03:50 16502 1

原创 ElasticSearch索引别名和零停机

起因显而易见,如果我们需要修改索引,而重建需要删除旧的索引,会导致线上服务不可用,因此,我们想要在不影响线上检索服务的同时,修改索引,就需要用到elasticsearch的一个特性,别名机制什么是索引别名索引 别名 就像一个快捷方式或软连接,可以指向一个或多个索引,也可以给任何一个需要索引名的API来使用。别名 带给我们极大的灵活性,允许我们做下面这些:在运行的集群中可以无缝的从一个索引...

2019-05-07 15:19:07 255

原创 MongoDB和MongoTemplate模拟SQL的ifNull

近日需求中用到这个,但是网上找到的答案并不理想,在查阅MongoDB官网后,得到解决方案:MongoDB原生写法等待查询数据,需要将description为null的数据在查询时候给默认值{ "_id" : 1, "item" : "abc1", description: "product 1", qty: 300 }{ "_id" : 2, "item" : "abc2", descr...

2019-04-24 15:17:29 1476

转载 win10下查看杀死进程

https://blog.csdn.net/qq_36819098/article/details/80262482

2019-03-13 13:43:43 1076

原创 storm的并发机制与实践

基本概念Nodes:服务器,配置了storm集群,有安装nimbus的node,以及安装supervisor的nodeWorkers(JVM虚拟机):一个服务器上相互独立运行的JVM进程,一个服务器node可以配置一个或者多个worker,一个topology会分配到一个或者多个worker运行,如下图:注意:worker只存在于supervisor服务器Task:任务,就是spout...

2019-02-19 16:16:45 336

原创 java服务linux系统cpu占用96以上问题解决方案

1 top命令查看当前cpu占用,内存占用排行2 top -H -p查看进程中占用cpu时间最久的线程3 使用jstack工具查看线程堆栈信息jstack:stack trace for java:生成虚拟机当前时刻的线程快照(一般称为threaddump文件或者javacore文件),线程快照是当前虚拟机内每一条线程正在执行的方法堆栈的集合,之所以生成堆栈快照主要目的是定位线程出现长...

2019-01-07 14:51:52 574 1

原创 kafka集群如何内外网均可访问

有3台kafka集群broker,以下ip地址均属杜撰,仅仅做举例用hostname内网ip外网Ipkafka110.0.0.1139.0.0.1kafka210.0.0.2139.0.0.2kafka310.0.0.3139.0.0.3本来kafka集群配置的listener参数如下:# The address the socket ser...

2018-12-27 10:28:44 10190 10

原创 Kafka

Kafka概述为什么需要消息队列客户端A要向客户端B交互,A要向B发送数据,这时候可能有两种问题B不在线,B挂了A传输速度是10M/S,B接收速度是5M/S这样就会造成数据丢失因此我们需要在AB中间加一层消息队列一对一的情况下,客户端需要实时监控消息队列中内容点对点和发布订阅模式共同的优点:解耦(没有直接相连,通过消息队列中间件相连)冗余扩展性(kafka是有集群概念的...

2018-11-18 22:34:43 2020

原创 SpringBoot项目与maven分环境自动打包配置

打jar包springboot项目分环境打包打jar包如果为多模块项目,比如我下面目录结构其中api工程配置目录如下1 首先在顶层工程中配置pom文件添加如下配置<!--定义打包命令指定的环境对应的profileActive变量值--> <profiles> <profile> <id&amp

2018-10-19 10:28:11 9129 4

原创 Jenkins第一节:linux安装jenkins以及解决各种常见问题

1 下载jenkins[root@VM_0_3_centos jenkins]# wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo[root@VM_0_3_centos jenkins]# rpm --import https://jenkins-ci.org/redhat/j...

2018-10-18 15:40:53 2118

原创 $.extend(true,{},a,b)解析

什么是$.extendjQuery.extend() 函数用于将一个或多个对象的内容合并到目标对象。 $.extend(true,{},a,b) true:是否深度拷贝,不加为false,浅拷贝,加了深拷贝 {}:将合并结果保存到新对象,这样原对象将不会发生改变 a:第一个合并的对象 b:第二个合并的对象浅拷贝var defaults = {name:"张三",age:18,...

2018-08-16 11:26:03 10748 3

原创 js中null和undefined区别

null是空对象引用,引用指向为空 undefined是只定义了引用typeof null:”object” typeof undefined : “undefined”null == undefined true null === undefined false :值相同,但类型不同均可以用null或者undefined清空属性var person = null; // ...

2018-08-15 15:11:53 5393 2

原创 idea基础配置

下面的配置均为全局配置1 修改下面选项以支持界面字体大小改变,更改以后可能出现中文菜单项乱码的情况2 修改控制台字体3 编码方式修改如下:properties后面的√打上才能保证properties中的中文正常显示为中文我不是ascII码值4 general中勾选第二项,以实现按住ctrl和鼠标滚轮改变字体大小5 打勾第5项目,以在两个方法之间加入分隔6 修改下面选项,以让idea能够智能提示,忽...

2018-06-26 10:07:31 179

转载 mysql日期时间函数

-- MySQL日期时间处理函数-- 当前日期:2017-05-12(突然发现今天512,是不是会拉防空警报)SELECT NOW() FROM DUAL;-- 当前日期时间:2017-05-12 11:41:47-- 在MySQL里也存在和Oracle里类似的dual虚拟表:官方声明纯粹是为了满足select ... from...这一习惯问题,mysql会忽略对该表的引用。-- 那么M...

2018-06-04 16:04:40 161

转载 线程池大小设置,CPU的核心数、线程数的关系和区别,同步与堵塞完全是两码事

线程池应该设置多少线程合适,怎么样估算出来。最近接触到一些相关资料,现作如下总结。最开始接触线程池的时候,没有想到就仅仅是设置一个线程池的大小居然还有这么多的学问,汗颜啊。首先,需要考虑到线程池所进行的工作的性质:IO密集型CPU密集型简单的分析来看,如果是CPU密集型的任务,我们应该设置数目较小的线程数,比如CPU数...

2018-04-27 11:08:05 6104 2

原创 java高并发程序设计(二)线程状态,sychronized,wait,notify,AtomicInteger,CountDownLatch

终止线程 对象实例u,有2个字段,默认情况下一个0,一个null 为了防止这个对象被多个线程同时修改,所以我可能在写之前或读之前都要对这个对象加锁读的时候 等待锁 确保 写完了这样我不会读到一个错误的数据 写也是一样,要加锁现在:写之前我加了一个锁然后我对数据进行写入,给id写入1,正准备开始写入小明的时候,你很暴力的把我stop掉了 这样导致我的锁会释放掉后果:如...

2018-04-23 15:12:42 542

转载 为什么说Redis是单线程的以及Redis为什么这么快!

一、前言近乎所有与Java相关的面试都会问到缓存的问题,基础一点的会问到什么是“二八定律”、什么是“热数据和冷数据”,复杂一点的会问到缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存降级等问题,这些看似不常见的概念,都与我们的缓存服务器相关,一般常用的缓存服务器有Redis、Memcached等...

2018-04-16 10:10:39 163

原创 Mongodb增删改查高级操作

MongoDB中常见数据类型Object IDIntegerDoubleArrays:数组或列表,多个值存储到一个键Object:嵌入式文档,一个值为一个文档NullTimestampDate:存储当前日期或时间的unix时间格式增删改保存语法 insert:直接插入:db.集合名称.insert(document)db.beauty.inser...

2018-04-08 15:52:06 548 1

原创 Storm流式计算入门

流式计算实时获取数据,实时数据储存,实时数据计算,实时结果缓存,持久化存储(mysql) 代表技术: Flume:实时获取数据 Kafka:实时数据存储 Storm/jstorm:实时数据计算 Redis:实时结果缓存 总结:将源源不断产生的数据实时收集并实时计算,迅速得到计算结果关于storm1、storm是twitter的开源流计算解决方案,因为对hadoop的ma...

2018-03-29 21:17:41 5049

转载 Redis的持久化机制

Redis提供的持久化机制   Redis是一种面向“key-value”类型数据的分布式NoSQL数据库系统,具有高性能、持久存储、适应高并发应用场景等优势。它虽然起步较晚,但发展却十分迅速。 近日,Redis的作者在博客中写到,他看到的所有针对Redis的讨论中,对Redis持久化的误解是最大的,于是他写了一篇长文来对Redis的持久化进行了系统性的论述。文章主要包含三个方面:R...

2018-03-28 16:01:08 148

转载 ThreadPoolTaskExecutor 使用和原理

为什么要用线程池?服务器应用程序中经常出现的情况是:单个任务处理的时间很短而请求的数目却是巨大的。构建服务器应用程序的一个过于简单的模型应该是:每当一个请求到达就创建一个新线程,然后在新线程中为请求服务。实际上,对于原型开发这种方法工作得很好,但如果试图部署以这种方式运行的服务器应用程序,那么这种方法的严重不足就很明显。每个请求对应一个线程(thread-per-request)方法的...

2018-03-16 11:55:07 4656

原创 solrCloud集群的搭建

什么是solrCloudSolrCloud是solr提供的分布式搜索方案 适用情景:大规模,容错,分布式索引,检索 soLrCloud是基于solr和zookeeper的分布式搜索方案,zookeeper的作用使用zookeeper来管理集群:监控集群中的每个节点的健康状态请求来了先连zookeeper,而不是直接连solr,然后由zookeeper决定...

2018-03-11 14:48:21 276

原创 Git以及TortoiseGit的下载安装使用

下载git下载地址:https://git-scm.com/ 然后进行一系列的安装,傻瓜式的操作即可TortoiseGitTortoise 英[ˈtɔ:təs]乌龟,TortoiseGit是一个开放的git版本控制系统的源客户端,通过它可以更加方便的使用Git 此次我们需要下载两部分,一部分是TortoiseGit,另一部分是它的中文语言包,两个都可以在下面的地址下载到 ht...

2018-03-10 11:26:22 24305 1

转载 Ueditor1.4.3.3+springMvc+maven 实现图片上传

前记:由于项目中需要有一个新增数据并且要能支持表格图片上传的功能。使用了ueditor控件。为实现这个功能,从一开始什么都看不懂,到一直连着弄了5天,总算是有了眉目。在此记录一下以便能帮到可以和我一样遇到问题的人!本人使用的是ueditor 1.4.3.3 的jsp 版本的。首先下载ueditor 开发版 到本地目录下载地址:...

2018-03-03 00:38:29 434

转载 百度地图API (1):往地图中添加标注点

1.实现功能:通过给定的坐标点,往地图中添加标注点,点击标注点,显示改点的详细信息。 2.效果图: 演示链接:http://www.ltbetter.com:8080/BMap/MapTest1.html 3.核心方法:手动创建数据,实际项目则是接受GPS信息/...

2018-02-17 13:50:32 2334

原创 linux系统下solr服务器的搭建

Linux版本为centOS6.5 64位1 上传solr压缩包到linux中,并解压缩,目录结构如下图所示2 进入dist目录查看3 拷贝solr服务器war包到tomcat的webapps目录下,并改名solr.war4 启动tomcat,以解压缩solr.war5 可以通过tail -f logs/catalina.out查看启动日志,同时

2018-01-16 12:02:40 639

原创 Redis在linux下的安装

此次linux系统为centOS 64位1 Redis为c语言编写,因此安装需要配置c语言编译环境gcc,查看linux是否安装了该编译环境,可以直接输入命令查看如下图所示:上图表示已经存在该编译环境,而如果提示commond not find则意味着本机并无该环境,因此需要安装gcc环境,采用yum install gcc-c++进行安装2 然后上传redis的tar包到li

2018-01-15 10:02:55 8100

原创 Maven安装与配置

1  maven下载地址:http://maven.apache.org/download.cgi如上图所示,其中tar.gz为linux版本,src和bin为windows环境下的源码包和软件包,在此我们选择软件包,即bin2 下载好maven以后解压到文件夹如我的文件夹目录3 解压完毕以后会在用户个人目录下自动创建.m2/repository本地仓库,如下图所示

2017-12-18 14:02:18 267

空空如也

空空如也

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

TA关注的人

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