自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

dsen726的博客

欢迎来到我的移动城堡

  • 博客(37)
  • 资源 (2)
  • 收藏
  • 关注

原创 Java 集合求交集的方法比较

1.简介两个List集合求交集想必学过Java的都知道用系统自带的retainAll()方法,但是在数据量比较大时,这个方法效率并不高,利用空余时间研究了几种数据量较大时求两个集合交集的办法。本文主要研究了JDK自带方法求交集、Guava集合求交集、Java8的parallelStream并行流求交集、双指针方法求交集以及bitmap求交集的方法和效率。2.Java 集合求交集的方法比较...

2020-04-22 10:12:40 2767

原创 MongoDB 副本集-Replica Sets 搭建

1.副本集-Replica Sets1.1 简介MongoDB中的副本集(Replica Set)是一组维护相同数据集的mongod服务。 副本集可提供冗余和高 可用性,是所有生产部署的基础。也可以说,副本集类似于有自动故障恢复功能的主从集群。通俗的讲就是用多台机器进行同一数据的异 步同步,从而使多台机器拥有同一数据的多个副本,并且当主库当掉时在不需要用户干预的情况下自动 切换其他备份服...

2020-04-21 17:21:41 960

原创 通过shell脚本批量处理Redis的永久key

一、前言由于代码BUG原因,未设置给Redis的key设置过期时间,并且未配置Redis淘汰策略,长期导致环境服务器Redis占内存过大。二、处理过程1.环境数据分析通过分析测试环境redis的数据,永久key数据如下:CITICS_TRAIL_USER_X…(省略了)CITICS_TRAIL_USER_X…CiticsFundWholeIndustryX…HistoryProd...

2019-12-20 15:07:38 1255

原创 LVS+Keepalived+Nginx+Tomcat搭建高可用双机主从热备集群

1.前言LVS作用:LVS是一个开源的软件,可以实现传输层四层负载均衡。LVS是Linux Virtual Server的缩写,意思是Linux虚拟服务器。目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR);八种调度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh)。Keepalived作用:LVS可以实现负载均衡,但是不能够进行健康检查,比如一个rs...

2019-04-25 18:29:52 1425 2

原创 Docker搭建FastDFS+FastDHT+Nginx+SpringBoot

一、前言:Docker:是一种轻量级的虚拟化方式,Docker在运行应用上跟传统的虚拟机方式相比具有显著优势(简化运维安装复杂环境、占内存少、启动和停止环境快);FastDFS:一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。FastDHT:避免大量重复文件导致磁盘资源的浪费,需要对重复文件...

2019-04-02 09:59:44 2779 6

原创 mysql5.6 主从同步失败问题解决

1. 场景分析:主(hsz_sql0):#分析主数库在干什么,其中“307844154”是show slave status\G;查看Last_SQL_Error:…最后 end_log_pos 307844154/usr/local/mysql/bin/mysqlbinlog --no-defaults -v -v --base64-output=DECODE-ROWS mysql-bin...

2018-12-11 15:10:34 1292 2

原创 SpringBoot集成springsession利用redis来实现session共享

一、前言1.场景:当我项目应用搭建了集群,就会产生session共享问题。因为session是保存在服务器上面的。2.解决方案:a.通过nginx的负载均衡其中一种ip绑定来实现(通过ip绑定服务器其中一台,就没有集群概念了);b.通过cookie备份session实现(因为cookie数据保存在客户端,所以不安全);c.通过redis备份session实现(可靠);...

2018-07-02 09:50:10 5209 3

原创 java手机号归属地查询

所需的包:carrier-1.75.jar 、geocoder-2.85.jar 、libphonenumber-8.8.8.jar 、prefixmapper-2.85.jar对象:public class PhoneModel { /** 省份名称 */ private String provinceName; /** 城市名称 */ private String cityName...

2017-12-27 10:10:51 6860 10

原创 SpringBoot项目单元测试报websocket错误

项目引入websocket后发现测试报错,出现下面的错误,查找后特此记录下:org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'serverEndpointExporter' defined in class path resource [com/xx/xx/xx/xx/xxx/xxx.class]: Invocation of init method failed; nested

2021-06-07 11:54:07 1302

原创 K8S集群搭建

1.节点部署列表:主机名:Ip:角色:系统:CPU/内存磁盘:K8S-master192.168.200.50MasterLinux 3.10.0核的64为操作系统(CentOS 7.9)2 核 4G40GK8S-node01192.168.200.51NodeLinux 3.10.0核的64为操作系统(CentOS 7.9)2 核 4G40GK8S-node02192.168.200.52NodeLinux 3.10.0核的64为操作系统

2021-06-04 17:46:07 229

原创 Springboot2.X整合redisson实现分布式锁

1.添加依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> <dependency> <gr

2021-06-04 13:53:40 339

原创 查看JDK8默认垃圾回收器

命令:java -XX:+PrintCommandLineFlags -version-XX:InitialHeapSize=264867136 -XX:MaxHeapSize=4237874176 -XX:+PrintCommandLineFlags -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGCjava version "1

2021-06-04 12:20:39 365

原创 Spring Boot 2.2.X Actuator 用不了 HttpTrace 和 Tomcat Thread 解决方案

一、前言spring boot 2.2.x release note 说明:1.1 HttpTrace:由于Spring Boot Actuator使用HttpTrace消耗资源并不支持集群,在Spring Boot 2.2 Release Notes开始已经默认禁用了,要启用HTTP跟踪,实现HttpTraceRepository或AuditEventRepository重新打开这些功能。1.2 Tomcat Thread:Spring Boot 2.2 Release Notes开始已经

2021-05-11 17:18:56 1000

原创 Springboot整合kettle项目案例

一、前言地址:Kettle中文网Kettle是一款国外开源的ETL工具,纯java编写,可以在Window、Linux、Unix上运行,绿色无需安装,数据抽取高效稳定。Kettle 中文名称叫水壶,该项目的主程序员MATT 希望把各种数据放到一个壶里,然后以一种指定的格式流出。Kettle这个ETL工具集,它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。Kettle中有两种脚本文件,transformation和job,transformatio

2021-03-11 17:22:17 4523

原创 MongoDB 分片集群-Sharded Cluster 搭建

1. 分片概念分片(sharding)是一种跨多台机器分布数据的方法, MongoDB使用分片来支持具有非常大的数据集 和高吞吐量操作的部署。换句话说:分片(sharding)是指将数据拆分,将其分散存在不同的机器上的过程。有时也用分区 (partitioning)来表示这个概念。将数据分散到不同的机器上,不需要功能强大的大型计算机就可以储存 更多的数据,处理更多的负载。具有大型数据集或高...

2020-04-24 16:03:22 393

原创 java中数据结构以及算法

1.Hash算法:优点:通过字段的值计算的hash值,定位数据非常快。缺点:不支持范围查询,因为底层数据结构是散列的,无法进行比较大小。2.二叉树:...

2020-04-22 13:26:41 289

原创 Linux 安装 MongoDB社区版

1.Linux 安装 MongoDB社区版1.1配置程序包管理系统(yum)创建一个/etc/yum.repos.d/mongodb-org-4.2.repo文件,以便您可以使用yum以下命令直接安装MongoDB :[mongodb-org-3.6]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$r...

2020-04-22 09:28:44 258

原创 docker+docker-compose安装

Compose 项目是 Docker 官方的开源项目,负责实现对 Docker 容器集群的快速编排。从功能上看,跟 OpenStack 中的 Heat 十分类似。其代码目前在 https://github.com/docker/compose 上开源。Compose 定位是 「定义和运行多个 Docker 容器的应用(Defining and running multi-container Docker applications)」,其前身是开源项目 Fig。我们知道使用一个 Dockerfil

2020-04-04 17:39:52 366

原创 CentOS7+Nginx 配置SFTP文件服务器

一、前言sftp是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。sftp 与 ftp 有着几乎一样的语法和功能。SFTP 为 SSH的一部分,是一种传输档案至 Blogger 伺服器的安全方式。其实在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件传输子...

2019-08-03 10:30:34 1082

原创 Linux设置服务自启动的常用两种方式

一、第一种在/etc/rc.local文件后面添加启动脚本,比如下图:二、第二种方式通过自定义脚本,添加到linux服务中启动2.1 自定义脚本#!/bin/sh#chkconfig:2345 50 90#description:tomcat#processname:tomcatexport JAVA_HOME=/usr/local/hszc/jdk1.7.0_75export ...

2019-07-06 11:49:17 445

原创 spring+springmvc+Interceptor+jwt+redis实现sso单点登录

一、前言1.在大型互联网公司下,一个公司有多个平台系统项目,而且有可能每个项目开发语言都不同,同时每个平台也会分别有APP、PC(前后端分离)、小程序端等,而且服务部署在分布式环境下,要实现支持PC、APP(ios、android)、小程序等多端的会话共享,本文章采取的方案是spring+springmvc+Interceptor+jwt+redis实现sso单点登录。假如用传统方式sessi...

2019-06-18 17:04:33 1354

原创 非对称加密:RSA

pom.xml中Base64依赖: <!-- base64 --> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.10<...

2019-06-12 13:46:05 336

原创 Centos7下kafka集群搭建

一、前言1.1 简介:Apache Kafka是分布式发布-订阅消息系统,在 kafka官网上对 kafka 的定义:一个分布式发布-订阅消息传递系统。 它最初由LinkedIn公司开发,Linkedin于2010年贡献给了Apache基金会并成为顶级开源项目。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。注意:Kafka并没有遵循JMS规范,它只提供...

2019-05-22 11:19:38 2950 2

原创 SpringBoot+RabbitMQ简单实现Fanout模式

一、生产者1.1maven依赖添加 <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</ver...

2019-05-21 10:22:29 2776

原创 SpringCloud之Eureka集群搭建

一、前言一般Eureka作微服务注册中心,都是搭集群,为了确保整个微服务RPC运程调用通讯。1.1 Zookeeper与Eureka区别CPA理论:一个分布式系统不可能同时满足C(一致性)、A(可用性)和P(分区容错性)。由于分区容错性在是分布式系统中必须要保证的,因此我们只能在A和C之间进行权衡。在此Zookeeper保证的是CP, 而Eureka则是AP。Consistency(...

2019-05-10 17:10:21 300

原创 Centos7下zookeeper集群搭建

一、前言一般在公司中zookeeper都会搭建集群,实现高可用。在大型分布式集群系统中,Zookeeper是一个非常重要的分布式协调服务组件;其应用场景非常广泛,如做服务的注册中心、实现分布式锁以及集群Master选举等等。本文讲述的,就是Zookeeper集群的搭建。二、环境1.JDK安装2.三台搭建外网服务器环境准备服务器ip服务器名称192.168.8.14...

2019-05-08 09:53:16 551 1

原创 docker安装mysql、nginx、redis

1.Nginx安装下载镜像并运行:docker run -d -p 81:80 nginx(开docker时启动,多个端口时:docker run -dit -p 80:80 -p 443:443 --name nginx -d --restart=always nginx:1.12.1)docker run -dit -p 80:80 -p 443:443 -v ~/default....

2019-04-06 17:42:28 296

原创 Docker

1.1 什么是Docker?Docker是一种轻量级的虚拟化方式,Docker在运行应用上跟传统的虚拟机方式相比具有显著优势(简化运维安装复杂环境、占内存少、启动和停止环境快):a. Docker容器很快,启动和停止可以在秒级实现,这相比传统的虚拟机方式要快得多。b. Docker容器对系统资源需求很少,一台主机上可以同时运行数千个Docker容器。c. Docker通过类似Git...

2019-04-06 17:30:49 129

原创 linux 简易版 jdk1.8安装

前言:JDK安装分为两种方式 一种是解压tar.gz配置安装, 一种是rpm安装,我这里是tar.gz安装方式1.下载1.8jdk安装包:链接: https://pan.baidu.com/s/1M47vtEJWAnyFnXVzRNqsrA 提取码: ktgt2.创建linux安装目录:命令:mkdir /usr/local/java3.进入该目录下,并解压:命令1:cd /usr/l...

2019-03-15 16:00:51 257

原创 linux下安装redis

1.安装目录是/usr/local/下,获取redis资源:wget http://download.redis.io/releases/redis-4.0.8.tar.gz2.解压tar xzvf redis-4.0.8.tar.gz3.安装cd redis-4.0.8makecd srcmake install PREFIX=/usr/local/redis4.移动配...

2018-12-18 14:59:55 100

原创 CentOS 7下忘记mysql密码找回

1.mysql密码忘记2.停止mysql/etc/init.d/mysql stop3.启动无密登录mysql前面/usr/local/mysql/bin/,是MySQL安装的目录bin下/usr/local/mysql/bin/mysqld_safe --user=mysql --skip-grant-tables --skip-networking &amp;4.进入my...

2018-12-07 17:33:18 168

原创 Linux搭建Maven私库

一、前言项目开发时,一般采用Maven来进行项目构建,管理,jar包下载,项目组开发人员开发时,只要在项目的pom.xml文件中,添加如下pom.xml信息从公共的库中下载相关的Jar包以及依赖Jar包,但有时候公共的库不是那么稳定而且下载速度往往很慢,一个团队一起开发项目时,如果每个组员都去下载一遍所有依赖的Jar包,其实是一件很麻烦的事情,所以这时候就有必要搭建一个Maven的私库了,这样如...

2018-11-23 18:04:06 5888 1

原创 克隆已配置CentOS 7.x NAT模式静态IP上网,无法重启、上网

1.前言很多情况下,假如我们在一台虚拟机已搭建了静态IP上网,JDK和Maven等基础环境下,自己又不想重新搭建这些环境,我们就会想到到虚拟机克隆。2.环境列如在192.168.8.21,已搭建了静态IP上网;CentOS 7.x NAT模式静态IP上网可以参考:[https://blog.csdn.net/no_ob/article/details/78656552](https:/...

2018-11-23 11:18:59 331

原创 SpringBoot整合ActiveMQ

1.pom.xml添加依赖: &amp;amp;lt;dependency&amp;amp;gt; &amp;amp;lt;groupId&amp;amp;gt;org.springframework.boot&amp;amp;lt;/groupId&amp;amp;gt; &amp;amp;lt;artifactId&amp;amp;gt;spring-boot-start

2018-11-22 15:40:41 336

原创 SpringBoot整合mybatis报错org.apache.ibatis.binding.BindingException: Invalid bound statement not found异常

问题记录 问题是:找不到你项目映射文件(*.xml) 在application.properties文件中添加mybatis.mapper-locations=classpath*:/mapper/**Mapper.xml

2018-06-25 16:36:27 895

原创 安装maven后运行:mvn help:system报错

安装maven后运行:mvn help:system报错[ERROR] No plugin found for prefix 'help' in the current project and in the plugin groups [org.apache.maven.plugins, org.codehaus.mojo] available from the repositorie...

2018-06-20 12:08:01 2776

原创 linux下安装Nginx

1. nginx安装环境nginx的的是c语言开发,建议在Linux的的上运行,本教程使用Centos6.5作为安装环境。GCC安装nginx的的需要先将官网下载的源码进行编译,编译依赖GCC的环境,如果没有GCC环境,需要安装GCC:命令:yum install gcc-c ++PCREPCRE(Perl的兼容正则表达式)是一个Perl的库,包括perl的兼容的正则表达...

2018-03-21 11:52:02 347

Nginx安装手册

nginx是C语言开发,建议在linux上运行,本教程使用Centos6.5作为安装环境

2018-03-20

java手机号归属地查询所需的包

java手机号归属地查询所需的包,具体maven依赖地址http://mvnrepository.com/

2018-03-20

空空如也

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

TA关注的人

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