自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP/IP协议与Http协议的区别(*)

TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据。关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:“我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容,如果想要使传输的数据有意义,则必须使用到应用层协议,应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。WEB使用HTTP协议作应用层协议,以封装HTTP 文本信息,然后使用TCP/IP做传输层协议将

2021-10-30 10:59:53 2069

原创 TCP协议详解(*)

为什么会有TCP/IP协议在世界上各地,各种各样的电脑运行着各自不同的操作系统为大家服务,这些电脑在表达同一种信息的时候所使用的方法是千差万别。就好像圣经中上帝打乱了各地人的口音,让他们无法合作一样。计算机使用者意识到,计算机只是单兵作战并不会发挥太大的作用。只有把它们联合起来,电脑才会发挥出它最大的潜力。于是人们就想方设法的用电线把电脑连接到了一起。但是简单的连到一起是远远不够的,就好像语言不同的两个人互相见了面,完全不能交流信息。因而他们需要定义一些共通的东西来进行交流,TCP/IP就是为此而生。T

2021-10-30 10:53:29 196

原创 本地Windows环境下安装MySql(*)

Windows 上安装 MySQLWindows 上安装 MySQL 相对来说会较为简单,你需要在 中下载MySQL 下载 Windows 版本的 MySQL 安装包。点击 Download 按钮进入下载页面,点击下图中的 No thanks, just start my download. 就可立即下载:下载完后,我们将 zip 包解压到相应的目录,这里我将解压后的文件夹放在 D:\dev_software\Mysql\mysql-8.0.27-winx64。(一般不选择C盘,选择另外一个磁

2021-10-29 18:45:30 610

转载 EntityUtils 工具类(*)

EntityUtils 工具类EntityUtils对象是org.apache.http.util下的一个工具类,用官方的解释是为HttpEntity对象提供的静态帮助类package org.apache.http.util; import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.io.Reader;import java.io.Unsupport

2021-10-29 15:26:07 2993

转载 httpclient的两个重要的参数maxPerRoute及MaxTotal(*)

httpclient封装了java中进行http网络请求的底层实现,是一个被广泛使用的组件。httpclient是支持池化机制的,这两个参数就是表示池化设置的。服务之间发送http请求常用的有Apache的Fluent以及spring的restTemplate等Apache的Fluent,以及spring的restTemplate都是对httpclient进行了封装以Apache的Fluent为例说明其Executor类 /** * An Executor for fluent reques

2021-10-29 15:06:50 4772

原创 HttpClient高并发下性能优化-http连接池(*)

首先,明确三点:1.http连接池不是万能的,过多的长连接会占用服务器资源,导致其他服务受阻2.http连接池只适用于请求是经常访问同一主机(或同一个接口)的情况下3.并发数不高的情况下资源利用率低下那么,当你的业务符合上面3点,那么你可以考虑使用http连接池来提高服务器性能使用http连接池的优点:1.复用http连接,省去了tcp的3次握手和4次挥手的时间,极大降低请求响应的时间2.自动管理tcp连接,不用人为地释放/创建连接使用http连接池的大致流程 :1.创建PoolingHt

2021-10-29 14:59:31 3430

原创 HttpClien高并发请求连接池 - PoolingHttpClientConnectionManager(*)

连接池技术作为创建和管理连接的缓冲池技术,目前已广泛用于诸如数据库连接等长连接的维护和管理中,能够有效减少系统的响应时间,节省服务器资源开销。其优势主要有两个:其一是减少创建连接的资源开销,其二是资源的访问控制。连接池管理的对象是长连接,对于HTTP连接是否适用,我们需要首先回顾一下长连接和短连接。所谓长连接是指客户端与服务器端一旦建立连接以后,可以进行多次数据传输而不需重新建立连接,而短连接则每次数据传输都需要客户端和服务器端建立一次连接。长连接的优势在于省去了每次数据传输连接建立的时间开销,能够大幅度

2021-10-29 14:31:41 4369

转载 Docker和k8s的区别与介绍(*)

2010年,几个搞IT的年轻人,在美国旧金山成立了一家名叫“dotCloud”的公司。这家公司主要提供基于PaaS的云计算技术服务。具体来说,是和LXC有关的容器技术。LXC,就是Linux容器虚拟技术(Linux container)后来,dotCloud公司将自己的容器技术进行了简化和标准化,并命名为——Docker。Docker技术诞生之后,并没有引起行业的关注。而dotCloud公司,作为一家小型创业企业,在激烈的竞争之下,也步履维艰。正当他们快要坚持不下去的时候,脑子里蹦出了“开源

2021-10-28 17:15:57 10263

原创 Linux常用命令——grep(*)

grep 文本过滤工具语法格式:grep 【options】【pattern】【file】 grep [参数] [匹配模式] [查找的文件]注意:1.grep 是 Linux 系统中最重要的命令之一,其功能是从文本文件或管道数据流中筛选匹配的行及数据。2.grep 命令里的匹配模式或模式匹配,都是你要好找的东西,可以是普通的文字符号也可以是正则表达式。参数选项:参数 说明-c 计算找到‘搜索字符串’的行数-o 指数出匹配的内容-i 不区分大小写-n 显示匹配内容的行号-r 当指定要查

2021-10-28 15:49:19 9319

转载 Linux中管道命令的用法(*)

原文地址:http://blog.csdn.net/wirelessqa/article/details/8968381一. 管道命令管道命令操作符是:”|”,它只能处理经由前面一个指令传出的正确输出信息,对错误信息信息没有直接处理能力。然后,传递给下一个命令,作为标准的输入.管理命令的输出说明:【指令1】正确输出,作为【指令2】的输入 然后【指令2】的输出作为【指令3】的输入 ,【指令3】输出就会直接显示在屏幕上面了。通过管道之后【指令1】和【指令2】的正确输出不显示在屏幕上面【提醒注意】:

2021-10-28 15:33:58 410

转载 springboot yml定义属性,下文中${} 引用(*)

比如: yml中自定义一个域名属性:mytest: domainName: https://blog.csdn.net/imHanweihu/article/details/96111227上面定义了之后, 在此配置文件中,就可通过 ${} 来代替域名了defaultHead: ${mytest.domainName}/head.jpeg

2021-10-28 14:52:26 926

原创 YAML学习笔记(*)

一.YAML简介YAML,即YAML Ain’t Markup Language的缩写,YAML 是一种简洁的非标记语言。YAML以数据为中心,使用空白,缩进,分行组织数据,从而使得表示更加简洁易读。二.YAML语法1.基本规则YAML有以下基本规则:大小写敏感使用缩进表示层级关系禁止使用tab缩进,只能使用空格键缩进长度没有限制,只要元素对齐就表示这些元素属于一个层级。使用#表示注释字符串可以不用引号标注2.数据类型(1)字符串#YAMLstr: abc#JSON

2021-10-28 14:18:51 476

原创 Sentinel介绍(*)

前言随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel作为一个流量控制组件,是如何从流量控制、熔断降级、系统自适应保护等多个维度来保障微服务的稳定性的。1.简介随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 是面向分布式服务架构的流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统自适应保护等多个维度来帮助您保障微服务的稳定性。2.基本概念(1)资源资源是 Sentinel 的关键概念。它可以是 Java 应用程序中的任何内容,例如,由

2021-10-28 11:43:52 766

原创 xshell的快捷复制粘贴设置(*)

今天试着用xshell连接Linux,运行一些命令的时候想快点复制粘贴实现效率,却发现还要右键选择复制,再右键选择粘贴,很是麻烦。看了一下xshell的设置,其实可以自己设置成快捷方式以xshell5为例子,下边给出一些解决方法:1.打开 工具 - 选项 - 键盘和鼠标2.实现复制 : 将选定的文本自动复制到剪贴板 的选项勾选这样当选定字符串的时候,也就自动进行了复制3.实现粘贴: 右键的时候直接自己粘贴到xshell里面向右按钮选定paste the clipboa

2021-10-27 20:07:57 4840

转载 Xshell复制粘贴(Ctrl+C,Ctrl+V)配置(*)

在使用Windows一般使用ctrl+c,ctr+v实现粘贴复制,通过Xshell连接Linux时,可以通过设置实现两种环境的复制粘贴,从而提高工作效率(比如按照文档操作,直接复制代码到Linux,比手敲快很多)。设置步骤如下:点击“工具”——“选项”——“键盘和鼠标”——“编辑”点击“新建”——输入快捷键“ctrl+c”类型选择“菜单”,“[编辑]复制”,确定即完成同理按照同样的方式配置粘贴快捷键。......

2021-10-27 20:03:47 8248

原创 Kubectl 常用命令大全(*)

前言Kubectl是一个用于操作kubernetes(看k8s)集群的命令行接口,通过利用kubectl的各种命令可以实现各种功能,是在使用kubernetes中非常常用的工具。Kubectl 常用参数分类一.基础命令:create,delete,get,run,expose,set,explain,edit1.create 命令根据文件或者输入来创建资源# 创建Deployment和Service资源$ kubectl create -f demo-deployment.yaml$ k

2021-10-27 19:49:58 4137 2

转载 一文读懂Redis的四种模式,单机、主从、哨兵、集群(*)

前言:redis有多种模式:单机模式、主从模式、哨兵模式、集群模式1.单机模式安装一个redis,启动起来,业务调用即可。单机在很多场景也是有使用的,例如在一个并非必须保证高可用的情况下。优点:部署简单,0成本。成本低,没有备用节点,不需要其他的开支。高性能,单机不需要同步数据,数据天然一致性。缺点:可靠性保证不是很好,单节点有宕机的风险。单机高性能受限于CPU的处理能力,redis是单线程的。2.主从复制主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服

2021-10-27 16:33:08 3882 1

转载 redisson简单介绍(*)

一.什么是redissonRedisson - 是一个高级的分布式协调Redis客服端,能帮助用户在分布式环境中轻松实现一些Java的对象,Redisson、Jedis、Lettuce 是三个不同的操作 Redis 的客户端,Jedis、Lettuce 的 API 更侧重对 Reids 数据库的 CRUD(增删改查),而 Redisson API 侧重于分布式开发。二.支持Redis多种连接模式1.集群模式 Config config = new Config(); config.useCl

2021-10-27 14:15:58 2161

转载 Redission配置参数说明(*)

spring-redission配置spring: application: name: lizz-boot redis: redisson: # 配置文件 file: classpath:redisson.yml # 字符串配置 #config:redisson.yml# 集群模式clusterServersConfig: # 如果当前连接池里的连接数量超过了最小空闲连接数,而同时有连接空闲时间超过了该数值, #

2021-10-26 21:16:57 3599

转载 redis 主从模式,哨兵模式,cluster(集群)模式 简介(*)

详细可以参看《redis官网文档》《redis官网文档》或者《redis中文网》Redis集群方式共有三种:主从模式,哨兵模式,cluster(集群)模式一.主从模式主从模式:是三种集群方式里最简单的。它主要是基于Redis的主从复制特性架构的。通常我们会设置一个主节点,N个从节点;默认情况下,主节点负责处理使用者的IO操作,而从节点则会对主节点的数据进行备份,并且也会对外提供读操作的处理。主要的特点如下:1.主从模式下,当某一节点损坏时,因为其会将数据备份到其它Redis实例上,这样做在很大程度上

2021-10-26 20:15:56 1836

原创 Linux -- 查询某个文件夹下的文件数量(*)

查看当前目录下的文件数量(不包含子目录中的文件)ls -l|grep “^-”| wc -l#查看当前目录下的文件数量(包含子目录中的文件) 注意:R,代表子目录ls -lR|grep “^-”| wc -l查看当前目录下的文件夹目录个数(不包含子目录中的目录),同上述理,如果需要查看子目录的,加上Rls -l|grep “^d”| wc -l查询当前路径下的指定前缀名的目录下的所有文件数量例如:统计所有以“20161124”开头的目录下的全部文件数量ls -lR 20161124*/|gr

2021-10-26 18:41:22 1127

原创 linux中的wc命令(*)

1.linux中wc命令用法Linux系统中的wc(Word Count)命令的功能为统计指定文件中的字节数、字数、行数,并将统计结果显示输出。1.命令格式:wc [选项]文件…2.命令功能:统计指定文件中的字节数、字数、行数,并将统计结果显示输出。该命令统计指定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所指定文件的总统计数。3.命令参数:-c 统计字节数。-l 统计行数。-m 统计字符数。这个标志不能与 -c 标志一起使用。-w 统计字数。一个字被

2021-10-26 17:57:57 2130

转载 java判断手机号是否合法(*)

import java.util.regex.Matcher;import java.util.regex.Pattern; public class PhoneUtil { /** * 验证手机号是否合法 * @return */ public static boolean isMobileNO(String mobile){ if (mobile.length() != 11) { return

2021-10-25 15:49:43 4657

原创 Maven --- <distributionManagement>标签(*)

1.<distributionManagement>的作用: 负责管理构件的发布。这是一个环境变量 <downloadUrl> URL </downloadUrl> 其它的Maven项目可以通过该URL下载并引用当前Maven项目的构件.<status> 当前Maven项目的状态.可用的状态有以下几种.并且这个值不是人为设置的.而是Maven自动设置的none : 未指明状态,默认值converted : 该Maven项目的构件已经被转换为兼容M

2021-10-21 18:04:39 993

原创 Hibernate简介(入门)(*)

什么是HibernateHibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代C

2021-10-21 17:53:43 570

原创 SpringBoot热部署简介(*)

首先来看看 JAVA 热部署与热加载的联系:(1)都可以不重启服务器的情况下进行编译/部署项目;(2)基于 Java 的类加载器实现热部署与热加载的区别:(1)热部署在服务器运行时重新部署项目(2)热加载在运行时重新加载 class (字节码文件)只加载重新修改后的类(class 文件)(3)热部署会重新加载整个应用(4)热加载在运行时重新加载 class可以理解为 JVM 启动后会启动一个后台线程,定时来监控文件的时间戳,如果变化就将类重新载入(5)热部署更多在生产环境下使用,热加载多

2021-10-21 17:45:57 252

原创 SpringBoot配置devtools实现热部署(*)

spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot应用。devtools的原理深层原理是使用了两个ClassLoader,一个Classloader加载那些不会改变的类(第三方Jar包),另一个ClassLoader加载会更改的类,称为restart ClassLoader,这样在有代码更改的时候,原来的restart ClassLoader 被丢弃,重新创建一个restart

2021-10-21 17:33:55 339

转载 理解 spring-boot-starter-parent(*)

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.3.RELEASE</version> <relativePath/> <!-- lookup parent from repository --></

2021-10-21 17:23:06 918

转载 springboot中使用dockerfile(*)

环境MACCentos7JDK8SpringBootDockerfile一.创建springboot项目上面是springboot的项目结构。选择Initalizr Service URL创建springboot项目的时候,选择https://start.aliyun.com,速度比默认的快好几倍。https://start.spring.io/https://start.aliyun.com二.创建Dockerfile文件Dockerfile内容如下:# 该镜像需要依赖的

2021-10-21 17:06:53 702

转载 IntelliJ IDEA中用git提交代码时忽略文件的设置(*)

在用intellijidea开发时,经常会用git或其他版本管理工具提交代码到远程。但是idea默认会把所有只要本地与远程不同的文件都会列出来,实际上像后缀名是.iml, .idea这类文件是不需要提交的。如下图所示如果每次都手动取消这些文件,都是些重复性的操作。按如下操作可一次性设置好,以后提交代码就会自动忽略这些文件: .iml, .idea,target 文件夹1.进入idea设置界面Windows环境:File - Settings - Editor - File TypesMac

2021-10-21 16:45:49 13683 6

原创 SpringBoot的.gitignore文件使用(*)

一.介绍临时文件,编译的中间文件等不要提交到代码仓库,这时就要设置相应的忽略规则,来忽略这些文件的提交。git提供了一个.gitignore,来自动忽略这些配置文件。二.配置规则# 表示此为注释,将被Git忽略*.a 表示忽略所有 .a 结尾的文件!lib.a 表示但lib.a除外/TODO 表示仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODObuild/ 表示忽略

2021-10-21 16:42:21 5509

转载 Ceph介绍及原理架构分享(*)

一. Ceph架构简介及使用场景介绍1.Ceph简介Ceph是一个统一的分布式存储系统,设计初衷是提供较好的性能、可靠性和可扩展性。Ceph项目最早起源于Sage就读博士期间的工作(最早的成果于2004年发表),并随后贡献给开源社区。在经过了数年的发展之后,目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack都可与Ceph整合以支持虚拟机镜像的后端存储。2 Ceph特点(1)高性能a. 摒弃了传统的集中式存储元数据寻址的方案,采用CRUSH算法,数据分布均衡,并行度高。

2021-10-19 18:56:21 525

原创 ELK原理与介绍(*)

为什么用到ELK:一般我们需要进行日志分析场景:直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大的场景中,此方法效率低下,面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化的日志管理,所有服务器上的日志收集汇总。常见解决思路是建立集中式日志收集系统,将所有节点上的日志统一收集,管理,访问。一般大型系统是一个分布式部署的架构,不同的服务模块部署在不同的服务器上,问题出现时,大部分情况需要根据问题暴露的关键信息,定位到具体的服务器和服务模块,构建一套集中

2021-10-17 15:44:07 169

原创 ES索引原理(3)(*)

介绍Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎.Elasticsearch 是一个建立在全文搜索引擎 Apache Lucene™ 基础上的搜索引擎. 当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:(1)分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。(2)实时分析的分布式搜索引擎。(3)可以扩展到上百台服务器,处理PB级别的结构化或非结构化数据。基本概念先说Elasticsearch的

2021-10-17 15:24:13 625

转载 ES基本介绍(2)(*)

简介ES是一个基于RESTful web接口并且构建在Apache Lucene之上的开源分布式搜索引擎。同时ES还是一个分布式文档数据库,其中每个字段均可被索引,而且每个字段的数据均可被搜索,能够横向扩展至数以百计的服务器存储以及处理PB级的数据。可以在极短的时间内存储、搜索和分析大量的数据。通常作为具有复杂搜索场景情况下的核心发动机。ES就是为高可用和可扩展而生的。一方面可以通过升级硬件来完成系统扩展,称为垂直或向上扩展(Vertical Scale/Scaling Up)。另一方面,增加更多

2021-10-17 15:00:28 1936

转载 区块链-技术简介(*)

1.什么是区块链?区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。简单来讲, 在区块链系统中, 每过一段时间, 各参与主体产生的交易数据会被打包成一个数据区块, 数据区块按照时间顺序依次排列, 形成数据区块的链条,各参与主体拥有同样的数据链条, 且无法单方面篡改,任何信息的修改只有经过约定比例的主体同意方可进行,并且只能添加新的信息,无法

2021-10-16 15:28:17 1745

转载 DAG(有向无环图)易懂介绍(*)

DAG看他的结构挺唬人的,但是原理还是蛮简单的。DAG改变的是传统区块链的数据结构。首先简单介绍一下什么是图。一个图(graph)是由两部分组成:点(vertex)和边(edge)。所谓有向无环图其实就是:有方向的边;这些边在一个图中不会构成一个闭合的环路。1. Tip的概念在DAG中,如图所示,方块(vertex)表示的是一笔笔的交易,而虚线(edge)表示的是验证关系。每一个新加入的交易都需要挑两个没有被验证过的交易来验证这两个交易的合法性。方块6就是还未被验证过的交易,也称为tip。tip是DA

2021-10-16 15:17:04 24553 2

转载 Hadoop简介(*)

1.Hadoop介绍Hadoop是Apache旗下的一个用java语言实现开源软件框架,是一个开发和运行处理大规模数据的软件平台。允许使用简单的编程模型在大量计算机集群上对大型数据集进行分布式处理。狭义上说,Hadoop指Apache这款开源框架,它的核心组件有:HDFS(分布式文件系统):解决海量数据存储YARN(作业调度和集群资源管理的框架):解决资源任务调度MAPREDUCE(分布式运算编程框架):解决海量数据计算广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈。

2021-10-16 14:40:06 4329

原创 HDFS简介及基本概念(*)

前言当需要存储的数据集的大小超过了一台独立的物理计算机的存储能力时,就需要对数据进行分区并存储到若干台计算机上去。管理网络中跨多台计算机存储的文件系统统称为分布式文件系统(distributed fileSystem)。分布式文件系统由于其跨计算机的特性,所以依赖于网络的传输,势必会比普通的本地文件系统更加复杂,比如:如何使得文件系统能够容忍节点的故障并且保证不丢失数据,这就是一个很大的挑战。一.HDFS简介及其基本概念HDFS(Hadoop Distributed File System)是had

2021-10-16 14:23:19 5980

原创 AirFlow简介(*)

1.简介Airflow是一个可编程,调度和监控的工作流平台,基于有向无环图(DAG),airflow可以定义一组有依赖的任务,按照依赖依次执行。airflow提供了丰富的命令行工具用于系统管控,而其web管理界面同样也可以方便的管控调度任务,并且对任务运行状态进行实时监控,方便了系统的运维和管理。2.执行器(Executor)Airflow本身是一个综合平台,它兼容多种组件,所以在使用的时候有多种方案可以选择。比如最关键的执行器就有四种选择:SequentialExecutor:单进程顺序执行任务,

2021-10-16 13:54:37 1086

空空如也

空空如也

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

TA关注的人

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