自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(199)
  • 资源 (6)
  • 收藏
  • 关注

原创 基于Mina实现的一个简单数据采集中间件

一、前言 该数据据采集中间件需要实现与多个终端的长连接,并定时给所有终端发送指令,终端在接收到相关指令后,返回相关信息给中间件。中间件需要一直监测所有终端的在线状态,并一直监听、接收所有终端的消息,并启动多个定时任务给在线终端发送相关指令。二、网络通信的相关概念和基础知识 长连接的基本概念: * 与Http短连接相反,通过某种方式与服务器一直保持连接就叫

2017-09-23 09:48:20 2146

原创 Easyui动态显示列的应用实例

1、前言 项目中一个考勤信息功能,考勤信息的数据表结构如下:CREATE TABLE `t_attendance` ( `id` varchar(50) NOT NULL, `beautician_id` varchar(50) NOT NULL COMMENT '美容师id', `att_date` date DEFAULT NULL COMMENT '考勤日期',

2017-06-17 17:18:21 5341 1

原创 自定义字段的设计与实现(Java实用版)

自定义字段又叫做“开放模型”,用户可以根据自已的需求,添加需要的字段,实现个性化定制。 如现有一套CRM系统,客户模块中客户信息,需要实现不同行业,不同业态都可以个性化需求。那我们知道客户信息表T_CUSTOM,如姓名,性别,电话 等基本通用属性是可以通用的,但如药疗行业客户需要记录体重,血压等,而运输行业的客户更关注货物品类,产量等,使用自定义字段可以解决该问题,而且对于系统的扩展很方便。

2017-04-12 18:13:37 43129 95

转载 【无标题】

使用工具:DBExportDoc V1.0 For MySQL 将数据库直接生成 数据库表结构说明文档.docx推荐一个使用DBExportDoc V1.0 For MySQL 生成数据库表结构说明文档本文转自https://blog.csdn.net/qq_37789351/article/details/79719071...

2022-04-08 10:17:20 206

转载 理解ReentrantLock可重入锁的使用

java除了使用关键字synchronized外,还可以使用ReentrantLock实现独占锁的功能。而且ReentrantLock相比synchronized而言功能更加丰富,使用起来更为灵活,也更适合复杂的并发场景。这篇文章主要是从使用的角度来分析一下ReentrantLock。一、简介ReentrantLock常常对比着synchronized来分析,我们先对比着来看然后再一点一点分析。(1)synchronized是独占锁,加锁和解锁的过程自动进行,易于操作,但不够灵活。ReentrantL

2021-06-15 23:09:55 287

原创 并发编程示例01-生产者、消费者

1、生产者public class Producer implements Runnable { private Queue<String> msg = new LinkedList<String>(); private int maxSize; public Producer(Queue<String> msg, int maxSize) { this.msg = msg; this.maxSize = ma

2021-06-15 23:05:23 293

原创 权限框架SpringSecurity简介及与SpringBoot集成示例

1、SpringSecurity简介SpringSecurity是一个强大的并且高度自定义的认证和访问控制的框架,为基于Spring的应用框架提供了权限管理的标准。SpringSecurity是一个框架,致力于为Java应用程序提供认证和授权,与所有的Spring项目一样,SpringSecurity真正强大的之处在于可以轻松的扩张以满足用户自定义的需求。2、SpringSecurity与SpringBoot集成示例2.1 新建一个SpringBoot项目添加以下引用,Lombok、Spring

2021-04-22 19:57:16 486

原创 使用Curator中的LeaderLatch使用示例

1、新建一个SpringBoot项目pom.xml中添加以下jar包引用<dependency> <groupId>org.apache.curator</groupId> <artifactId>curator-framework</artifactId> <version>4.2.0</version></dependency><dependency> <gr

2021-04-19 17:47:05 742

原创 Nacos监控部署配置(数据采集:prometheus,grafana:面板展示)

1、Nacos集群搭建参考:Centos7安装Nacos集群1.1 修改配置application.properties文件,暴露metrics数据management.endpoints.web.exposure.include=*注:上面的这个配置原来是注释掉的,现在去掉注释,放开。(集群中每个都要修改)1.2修改后,重启集群的每个节点然后在浏览器中访问http://192.168.1.10:8848/nacos/actuator/prometheus,如下图,说明已经暴露监控信息了

2021-04-16 19:58:40 3300 2

原创 基于Nacos实现配置中心的一个简单示例

1、搭建Nacos服务(单机或集群都可以)参考:Centos7安装Nacos集群Centos7安装Nacos单机版(Docker和Docker两种方式)2、在idea中创建一个Spring Cloud项目工程项目如下图:2.1 pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.o

2021-04-16 19:58:20 566

原创 Nacos简介

1、Nacos简介Nacos官网一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。2、什么是Nacos2.1 概览Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构 (例如微服务范式、云原生范式) 的服务基础设施。服务(Service)是 Nacos 世界的一等公民。Nac

2021-04-16 19:56:45 467

原创 Apache Dubbo简介及简单入门示例

1、Dubbo简介Apache Dubbo官网Apache Dubbo 是一款高性能、轻量级的开源 Java 服务框架。Apache Dubbo提供了六大核心能力:面向接口代理的高性能RPC调用提供高性能的基于代理的远程调用能力,服务以接口为粒度,为开发者屏蔽远程调用底层细节。智能负载均衡内置多种负载均衡策略,智能感知下游节点健康状况,显著减少调用延迟,提高系统吞吐量。服务自动注册与发现支持多种注册中心服务,服务实例上下线实时感知。高度可扩展能力遵循微内核+插件的设计原则,所有核心能

2021-04-13 21:01:07 512

原创 dubbo-admin管理控制台安装运行

1、dubbo-admin简介dubbo-admin是Dubbo的管理控制台2、dubbo-admin安装2.1、将dubbo-admin-0.2.0.tar.gz解压2.2、 修改dubbo-admin-0.2.0/dubbo-admin-server/src/main/resources/application.properties修改内容如下图2.3、修改dubbo-admin-0.2.0/dubbo-admin-ui/config/index.js文件修改内容如下图:2.4、连

2021-04-13 21:00:32 347

原创 Centos7服务器安装Apache Druid,以及文件数据摄入、kafka实时数据流摄入

1、Apache Druid简介Apache Druid是一个实时分析型数据库,旨在对大型数据集进行快速的查询分析("OLAP"查询)。Druid最常被当做数据库来用以支持实时摄取、高性能查询和高稳定运行的应用场景,同时,Druid也通常被用来助力分析型应用的图形化界面,或者当做需要快速聚合的高并发后端API,Druid最适合应用于面向事件类型的数据。Druid通常应用于以下场景:点击流分析(Web端和移动端)网络监测分析(网络性能监控)服务指标存储供应链分析(制造类指标)应用性能指标分析

2021-04-10 00:06:07 499

原创 Centos7服务器kafka的安装

1、使用Docker方式安装1.1 安装并启动kafka容器docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=192.168.1.12:2181/kafka -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.12:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -v /etc

2021-04-09 15:11:00 155

原创 使用Elastic-Job创建动态定时任务

1、Elastic Job简介elastic-job是当当开源的一款非常好用的作业框架,在这之前,我们开发定时任务一般都是使用quartz或者spring-task(ScheduledExecutorService),无论是使用quartz还是spring-task,我们都会至少遇到两个痛点:不敢轻易跟着应用服务多节点部署,可能会重复多次执行而引发系统逻辑的错误。quartz的集群仅仅只是用来HA,节点数量的增加并不能给我们的每次执行效率带来提升,即不能实现水平扩展。Elastic job是当当网架

2021-04-09 10:03:27 1301

原创 内网穿透工具natapp的使用说明简介

1、内网穿透工具使用背景我们在做微信支付或微信公众号开发时,使用自已本地应用程序连接微信服务器进行联调时,我们需要使用内网穿透工具,生成一个外网域名,使得微信服务器可以连接到我们自已本地的服务器(我们在做微信配置是需要配制一个我们应用程序回调的url)。内网穿透工具很多,natapp是我用过,还算比较好用,而免费的。natapp官网2、natapp的使用2.1 natapp官网注删、登录,购买免费型隧道记录authtoken2.2 下载natapp客户端快速上手,一定要先看NATAPP

2021-04-07 22:24:59 1853 2

原创 使用nginx+tomcat实现集群

1、工具及版本nginx1.8.1tomcat8.5.23jdk1.82、开始下载tomcat8,在百度中输入tomcat8下载,点第一个链接进入tomcat8下载页面,选择8.5.23版本,点红色部分进行下载3、新建一个文件夹test(该路径不要有中文),将下载好的tomcat拷贝进来,并解压为两个tomcat,如下图修改apache-tomcat-81的配制文件server.xml内容如下:<!-- 将端口8080改为9001 --><Connector

2021-04-07 21:45:23 371

原创 Centos7服务器Docker方式安装RocketMQ

1、RocketMQ简介RocketMQ是由阿里捐赠给Apache的一款分布式、队列模型的开源消息中间件,经历了淘宝双十一的洗礼。RocketMQ的特性:1、原生分布式2、两种消息拉取3、严格消息顺序4、特有的分布式协调器5、亿万消息堆积6、组(Group)RocketMQ基本概念:Client端Producer Group 一类Producer的集合名称,这类Producer通常发送一类消息,且发送逻辑一致Consumer Group 一类Consumer的集合名称,这类Cons

2021-04-07 21:01:28 409

原创 Centos7服务器安装Seata

1、Seata简介Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。在 Seata 开源之前,Seata 对应的内部版本在阿里经济体内部一直扮演着分布式一致性中间件的角色,帮助经济体平稳的度过历年的双11,对各BU业务进行了有力的支撑。经过多年沉淀与积累,商业化产品先后在阿里云、金融云进行售卖。2019.1 为了打造更加完善的技术生态和普惠技术成果,Seata 正式宣布对外开源,开放以来,广受欢迎,不到一年已经成为最受欢迎的分布式事务解决方案。Seat

2021-04-07 19:59:37 450

原创 Centos7中安装MongoDB(使用Docker方式)及简单使用

1、MongoDB简介MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。MongoDB是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。它支持的数据结构非常松散,是类似json的bson格式,因此可以存储比较复杂的数据类型。Mongo最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。Mongo

2021-04-05 23:07:26 590

原创 Centos7服务器Canal安装

1、Canal简介canal 阿里巴巴旗下的一款开源项目,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费。通过Canal监听数据库变更,并实时消费变更数据,实现实现数据同步到缓存、ElasticSearch等。我们也可以把canal理解为一个用来同步增量数据的一个工具。通过Canal我们实现以下业务场景:数据库镜像数据库实时备份索引构建和实时维护(拆分异构索引、倒排索引等)业务 cache 刷新带业务逻辑的增量数据处理2、Canal安装2.1 修改mysql数据

2021-04-05 10:09:11 594

原创 Centos7服务器上安装OpenResty

1、OpenResty简介OpenResty 是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。OpenResty 通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强大的通用 Web 应用平台。这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx

2021-03-29 21:14:32 508 2

原创 Centos7安装Nacos集群

1、环境准备说明1.1 准备一台centos机器,所以内存给大一点(我给的是3G,最好给4G),centos7安装好后,把防火墙关闭1.2 安装Nacos集群,需要使用到的软件及版本说明jdk 1.8.0_231jdk安装参考本人blog:Centos服务器上安装jdkdockerdocker安装参考:在Centos7中安装Docker 之所以安装Docker,是因为mysql我们使用的是docker的安装方式mysql 5.7mysql的安装参考:在centos中使用Docker安装

2021-03-27 23:17:21 646 3

原创 Centos7安装Nacos单机版(Docker和Docker两种方式)

1、环境准备准备一台centos7机器,关闭防护墙、关闭selinux,具体操作参考本人的前一篇blog:Ceph分布式文件系统集群搭建详解文章中的两前步2、将Nacos的安装包nacos-server-1.1.4.tar.gz上传到/usr/local目录下,并解压解压命令tar -zxvf nacos-server-1.1.4.tar.gzNacos的安装包nacos-server-1.1.4.tar.gz的网盘地址:链接:https://pan.baidu.com/s/169t6yg

2021-03-27 13:09:38 548

原创 Ceph分布式文件系统集群搭建详解

1、Ceph分布式文件系统简介Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。Ceph 独一无二地在一个统一的系统中同时提供了对象、块、和文件存储功能。基开发目标是:可轻松扩展到数 PB 容量支持多种工作负载的高性能(每秒输入/输出操作[IOPS]和带宽)高可靠性Ceph 不仅仅是一个文件系统,还是一个有企业级功能的对象存储生态环境。中文学习网址:CEPH中文学习网2.Ceph分布式文件系统搭建2.1 环境准备准备三台centos机器(使用虚拟机)

2021-03-27 00:20:48 2316 5

原创 MiniUI 的知识积累

1、默认选中树的根节点var tree = mini.get("tree-1");tree.selectNode(tree.getRootNode().children[0]);2. 表格修改列头名称<div class="mini-fit"> <div id="grid1" class="mini-datagrid" style="width: 100%; height: 100%" allowresize="true" pagesize="20" ajaxoption="

2020-11-26 21:04:49 672

原创 cloudera-quickstart 初体验

1、cloudera-quickstart提供了集成了大部分大数据组件的虚拟机镜像系统,包括hadoop,hbase,hive,hue,spark,zookeeper等等,是cloudera定制的版本,还有cloudera的管理组件,基本上不用配置,我下载了vmware的镜像。vmware的镜像下载地址:cloudera-quickstart-vm-5.5.0-0-vmware.zip2、下载后,直接解压,然后用vmware直接打开文件–>打开–>选择cloudera-quickstart

2020-10-28 19:24:13 1053 3

原创 CDH6.2.0集群搭建

1、准备工作1.1 首先我们要准备三台centos7机器,这三台centos7机器的ip、hostname分别为IPhostname192.168.1.11master192.168.1.12slave01192.168.1.13slave02

2020-10-27 21:16:37 646

转载 Hadoop V2 yarn与Hadoop V1 MapReduce对比

对于业界的大数据存储及分布式处理系统来说,Hadoop 是耳熟能详的卓越开源分布式文件存储及处理框架1、Hadoop v11.1 Hadoop v1 MapReduce 架构图1.2 Hadoop v1 MapReduce程序的流程及设计思路首先用户程序 (JobClient) 提交了一个 job,job 的信息会发送到 Job Tracker 中,Job Tracker 是 Map-reduce 框架的中心,他需要与集群中的机器定时通信 (heartbeat), 需要管理哪些程序应该跑在哪些

2020-10-24 11:27:31 447

原创 Hive单机版安装

1、环境准备Centos7HadoopJavaMySQL使用到的工具版本说明: centos版本:CentOS-7.4-x86_64-DVD-1708.iso JDK版本:jdk-8u231-linux-x64.tar.gz Hadoop版本:hadoop-2.7.3.tar.gz Hive:apache-hive-2.3.7-bin.tar.gz MySQL:5.7centos7、jdk、hadoop的安装这里就不再讲了,不清楚的可以查看本人之前的blog都有讲。Centos

2020-10-23 18:01:45 2005 1

转载 MapReduce流程

1、原理流程input data - input format - map - shuffle&sort - reduce - output datainput data 数据存储位置hdfs,切分成多个一定大小的block(128m 备份3个),存储在多个节点(DataNode)上input fomat MR框架基础类之一 实际上是一个接口默认TextInputForma,data splits 数据分割,通过分片算法对block进行分片,每个split包含后一个block中开头部分的数据

2020-10-23 08:37:57 79

转载 MapReduce简介及优缺点

1、什么是MapReduce?MapReduce是一种大规模数据处理的编程模型,用于大规模数据集的并行运算。Mapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。并以一种可靠的,具有容错能力的方式并行地处理上TB级别的海量数据集...

2020-10-23 08:36:36 5602

原创 使用mapreduce统计文件中所有单词出现的次数

1、将wordcount.txt文本文件上传到/data/目录下,wordcount.txt文件内容如下:red black green yellowred blue blueblack big small small yellowred red red redblue 2、创建一个java maven工程,pom.xml中添加hdfs、mapreduce的引用,如下<project xmlns="http://maven.apache.org/POM/4.0.0" xm

2020-10-23 08:35:13 1618

原创 使用nginx+tomcat实现集群

1、工具及版本nginx1.8.1tomcat8.5.23jdk1.82、开始下载tomcat8,在百度中输入tomcat8下载,点第一个链接进入tomcat8下载页面,选择8.5.23版本,点红色部分进行下载3、新建一个文件夹test(该路径不要有中文),将下载好的tomcat拷贝进来,并解压为两个tomcat,如下图修改apache-tomcat-81的配制文件server.xml内容如下:<!-- 将端口8080改为9001 --><Connector

2020-10-21 21:21:23 266

原创 分布式文件存储hdfs Java API读写示例

1、新建一个maven工程,pom.xml中添加hadoop-common,hadoop-hdfs引用。<dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.7.0</version></dependency> <dependency>

2020-10-21 18:39:54 679

原创 分布式文件存储hdfs简介及常用命令

1、hdfs简介1.1 什么是HDFS?HDFS(Hadoop Distributed File System)是hadoop生态系统的一个重要组成部分,是hadoop中的的存储组件,是最基础的一部分,MapReduce等计算模型都要依赖于存储在HDFS中的数据。HDFS是一个分布式文件系统,以流式数据访问模式存储超大文件,将数据分块存储到一个商业硬件集群内的不同机器上。1.2 HDFS的设计目标存储超大文件 HDFS适合存储大文件,单个文件大小通常在百MB以上 HDFS适合存储海量文件,总存储量

2020-10-21 18:19:35 818

原创 HBase单机版安装部署

1、安装前的环境准备工作,先要一台centos7机器,并安装JDK和Hadoop。参考:Hadoop2.7.3在centos7上的单机版安装部署注:需要注意hadoop的版本和HBase的版本centos版本:CentOS-7.4-x86_64-DVD-1708.isoJDK版本:jdk-8u231-linux-x64.tar.gzHadoop版本:hadoop-2.7.3.tar.gzHBase版本:hbase-2.2.6-bin.tar.gz2、HBase安装包下载下载地址:https

2020-10-17 23:41:16 2505

原创 Hadoop2.7.3在centos7上的单机版安装部署

1、使用到的工具版本说明: centos版本:CentOS-7.4-x86_64-DVD-1708.iso JDK版本:jdk-8u231-linux-x64.tar.gz Hadoop版本:hadoop-2.7.3.tar.gz2、环境准备2.1 安装centos参考:在VirtualBox中安装CentOS7详解(Mac版)2.2 关闭防火墙# 停止firewallsystemctl stop firewalld.service# 禁止firewall开机启动

2020-10-17 13:35:21 944

原创 使用zookeeper API实现分布式锁

1、使用zookeeper API实现分布式锁DistributedLock.javaimport java.io.IOException;import java.util.List;import java.util.SortedSet;import java.util.TreeSet;import java.util.concurrent.CountDownLatch;import java.util.concurrent.TimeUnit;import java.util.concurr

2020-09-15 18:21:51 219

redis-3.2.8 for centos.zip

redis-3.2.8.tar.gz,centos下的redis-3.2.8安装工具文件,需要解压,解压后就是redis-3.2.8.tar.gz

2020-01-22

redis-4.0.6 for centos.zip

redis-4.0.6.tar.gz,centos下的redis-4.0.6安装工具文件,需要解压,解压后就是redis-4.0.6.tar.gz

2020-01-22

solr 6.0.1 for centos.zip

solr-6.0.1.tgz ,centos下的solr-6.0.1安装工具文件,需要解压,解压后就是solr-6.0.1.tgz

2020-01-19

tomcat8.5.50 for centos.zip

apache-tomcat-8.5.50.tar.gz ,centos下的apache-tomcat-8.5.50安装工具文件,需要解压,解压后就是apache-tomcat-8.5.50.tar.gz

2020-01-19

activemq 5.15.7 for centos.zip

apache-activemq-5.15.7-bin.tar.gz ,centos下的apache-activemq-5.15.7安装工具文件,需要解压,解压后就是apache-activemq-5.15.7-bin.tar.gz

2020-01-19

jdk1.8 for centos.zip

jdk-8u231-linux-x64.tar.gz ,centos下的jdk1.8安装工具文件,需要解压,解压后就是jdk-8u231-linux-x64.tar.gz

2020-01-19

空空如也

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

TA关注的人

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