自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李维的博客

昨夜西风凋碧树。独上高楼,望尽天涯路。

  • 博客(35)
  • 收藏
  • 关注

原创 kubernetes学习环境搭建及开发调试(golang)

本文介绍如何在本地开发环境搭建一个minikube(k8s的单机版),然后重点介绍如何进行开发调试。

2022-03-25 16:11:10 2639

原创 Knative1.0技术初探——serving、istio的安装与函数部署

Knative1.0技术初探——serving、istio的安装与函数部署Preface关于knative的介绍,参考:初识 Knative - 技术教程 (knative-sample.com)11月4日,knative终于发布了其第一个稳定版本:Knative 1.0。这是从2018年7月knative第一次发布时,到现在已经历经3年的时间了。本次发布的主要特点有:支持多个 HTTP 路由层(包括 Istio、Contour、Kourier 和 Ambassador),当然主选应该还是isti

2021-11-10 11:14:58 1544

原创 Java NIO的理解

概述Java的NIO是一种的新的Java io机制。这里的NIO就是New IO,而不是Not blocking(非阻塞i)的IO。与传统的Java IO不一样的是,NIO提供了非阻塞状态的IO操作,但是,并不是所有的NIO都是可以非阻塞的,比如NIO中文件流的相关API就是阻塞状态的。可以认为JavaNIO的操作,只需一个线程,就可以具备处理多个数据流的能力。这点类似Linux系统上的多路IO复用技术,比如redis的实现就是利用了linux的该技术。Java NIO 由以下几个核心部分组成:B

2021-05-26 14:22:45 238 1

原创 关于jdbc连接mysql出现Communications link failured的问题

问题描述近日,在测试服务同步功能时,出现了这么一个异常:2020-09-24 15:45:10,442 com.sitech.esbsync.sap.SapInvoker [pool-1-thread-1] (SapInvoker.java:103) ERROR --> connection init failed org.hibernate.exception.JDBCConnectionException: could not execute query //stacktrac

2020-09-24 17:54:01 3625 1

原创 Redis安装部署及集群搭建

Preface介绍redis集群的搭建部署操作,以及集群加密等功能。集群搭建准备工作我本地用的是windows自带的bash,也就是一个Ubuntu版本的linux。下载rediswget http://download.redis.io/releases/redis-5.0.7.tar.gz 安装gccapt install gcc安装rubyapt install ruby部署创建目录创建一个新目录,刚才下载的包redis安装包扔在改目录下,然后解压mkdi

2020-07-29 09:17:23 162

原创 Spring事务使用总结

Spring对事务的支持首先,程序是否支持事务,取决于数据库,比如Mysql的Innodb引擎,那么就支持事务;如果是Myisam引擎,那么就根本不支持事务。Spring支持两种方式的事务管理,一种是编程式,另一种是注解式。编程式对代码入侵太大,一般使用情况较少;基本上都是通过注解方式来进行事务管理。事务传播行为事务传播行为是为了解决业务层方法之间互相调用的事务问题。当事务方法被另一个事务方法调用时,必须指定事务应该如何传播。例如:方法可能继续在现有事务中运行,也可能开启一个新事务,并在自己的事务

2020-07-14 16:44:52 262

原创 Spring中bean初始化时的扩展接口

Prefacearticle from my blog:李维的个人博客先回顾下bean的生命周期:图片from:http://www.iocoder.cn如上,容器启动后,从配置文件或者注解读取某个bean的配置,先开始进行bean的实例化,而后根据配置为bean注入属性。接下来就是bean的初始化,主要就是三件事情:激活Aware系列接口的方法;BeanPostProcessor...

2019-12-13 15:24:01 761

原创 Elasticsearch的聚合

一些概念如同sql里面的group by关键字,Elasticsearch(以下简称es)也是支持聚合、统计的。es的聚合有两个比较重要的概念:bucket :桶Metrics :指标BucketsBuckets简单来说就是满足特定条件的文档的集合。如同我们经常使用的sql中group by A,B,C…,每个A,B,C等这样的关键字都可以将其视为桶。因为数据库的表都是二维表的形...

2019-09-09 15:20:26 396 1

原创 Field [@timestamp] of type [keyword] does not support custom formats

问题描述执行es的聚合histogram 或者date_histogram 返回错误。传入报文:{ "size":0, "aggs":{ "calltime":{ "date_histogram":{ "field":"@timestamp", "interval":"minute", "format" : "yyy...

2019-09-06 10:48:50 4221

原创 Elasticsearch—Java api的使用

Elasticsearch的api官方文档:https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/java-rest-overview.html官方给了两种Java调用Elasticsearch(以下简称"es")方式,分别是:Java Low Level REST Client:Java低级客户端。可...

2019-09-05 19:13:44 248

原创 Filebeat快速使用

Filebeat 简述Filebeat is a lightweight shipper for forwarding and centralizing log data. Installed as an agent on your servers, Filebeat monitors the log files or locations that you specify, collects ...

2019-06-24 17:25:15 3036

原创 Elasticsearch的'sql'

Preface之前已经说过es的一些基本知识,这里将学习一些es的"sql",也就是es的DSL查询表达式。如同数据的查询语言->sql,es也有自己的查询语言,以json的格式。在这里,我同样会采用简写的模式,而且会进一步的简写。我接下来的查询都会在_index为"esb-inparam-2019-04-16",_type为"doc"的范围里面,所以,前缀都会是一样的,我只会给出查...

2019-05-28 17:34:23 221

原创 Elasticsearch简述与基本交互

PrefaceElasticsearch(以下简称Es或者es)官方文档: https://www.elastic.co/guideEs部署安装:https://www.elastic.co/guide/cn/elasticsearch/guide/current/running-elasticsearch.htmlEs简述Elasticsearch 是一个分布式、可扩展、实时的搜索与数...

2019-04-30 10:48:35 835

原创 Linux定时任务:crontab

crontab命令用于设置周期性被执行的指令。该命令从标准输入设备读取指令,并将其存放于crontab文件中,以供之后读取和执行。通常,crontab储存的指令被守护进程激活。crond 常常在后台运行,每一分钟检查是否有预定的作业需要执行。这类作业一般称为cron jobs。安装首先,需要先安装vixie-cron。vixie-cron软件包是cron的主程序直接使用yum安装:...

2019-01-21 11:37:54 139

原创 JVM类加载机制理解

from:http://blog.abreaking.com 概述我们知道,当编写完一个java文件后,使用javac命令可以将该java文件编译成java字节码文件,即.class的文件。class文件存储者该类的各种描述信息,而后我们可以使用java命令启动java虚拟机,虚拟机把描述类的数据从class文件中加载到内存,并对数据进行校验、解析及初始化,最终形成可被虚拟机直接使用的Ja...

2018-11-27 06:09:05 149

原创 设计模式—访问者(Visitor)模式

from:http://blog.abreaking.com/c/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F_%E8%AE%BF%E9%97%AE%E8%80%85Visitor%E6%A8%A1%E5%BC%8FPreface最近在研究一个框架JSqlParser时,发现该框架使用了一种设计模式——访问者(Visitor)模式。遂在网上找了一下该设计模式相关...

2018-11-23 14:01:52 490

原创 Springboot中yml文件读取

SpringBoot的.yml文件是一个非常简洁明了的配置文件,可看作.properties的精简版。一般来讲,我们通过@Value这个注解就可以直接获取到某个properties的值。如:有如下配置:spring: datasource: druid: localhost: driverClassName: c...

2018-11-12 11:35:07 18545 3

原创 linux设置静态ip及绑定hostname

from:http://blog.abreaking.com在windows中,我们设置ip地址的位置在:网络适配器-->以太网-->Internate协议版本4-->属性,如下:可见,设置一个ip地址至少需要三个属性:IP地址(ipaddr),子网掩码(netmask),网关(gateway)。所以,linux系统上也得需要同样的配置。Linux的ip的配置文件...

2018-11-12 11:15:35 4517 1

原创 对ThreadLocal的理解

from: http://blog.abreaking.comPreface参考:http://www.cnblogs.com/dolphin0520/p/3920407.html在Java并发编程中,最主要问题就是对共享的资源如何进行合理的调配。因为多个线程访问同一个资源时难免会有临界区的冲突,一般的解决方式都是进行合理的加锁。加锁的一个最大问题就是对程序的效率打折扣。但有时候,线程...

2018-11-01 15:30:54 511

原创 linux的vi编辑实用命令

from: http://blog.abreaking.comlinux的vim/vi编辑器是一个较常用的工具,包含一些较实用的命令,在编辑中是使用这些命令,往往能让我们的操作事半功倍。基本操作使用vim或者vi打开一个文件后,移动光标:键盘上下左右键,或者 h(上)j(下)k(上)l(右) 一样的效果。开始编辑:i,或者键盘insert键退出编辑:键盘ESC键保存退出...

2018-10-29 17:48:20 165

原创 Java如何停止线程

Preface启动一个线程或任务都是很简单,线程一般在任务结束后便会自行停止。但是有时我们希望能够在线程自行停止前能够停止它们,比如一些取消操作,或者是应用程序需要快速关闭。博主日前就遇到了这样的问题。但是在《JAVA并发编程实践》一书中指出:Java没有提供任何机制,来安全地强迫停止手头地工作。 一般来讲,对于Runnable来说,需要做的任务都是在run方法里面进行的,...

2018-10-25 11:28:24 4153

原创 使用Sentinel对访问端流量控制

from:http://blog.abreaking.com访问端流量控制博主面临的一个问题是,如何对该esb的调用者调用某个服务的次数进行控制。也就是说:对于服务A,每个调用者调用该服务单位时间内调用次数不能超过阈值;反过来也一样,对于调用者,调用任意服务单位时间内的调用次数不能超过阈值。那么此时,根据访问端的ip地址来标识某个调用源 origin,用服务的接口名srvName来...

2018-08-28 19:22:05 4258 1

原创 分布式流量控制框架sentinel初探

from:http://blog.abreaking.com/c/%E5%88%86%E5%B8%83%E5%BC%8F%E6%B5%81%E9%87%8F%E6%8E%A7%E5%88%B6%E6%A1%86%E6%9E%B6sentinel%E5%88%9D%E6%8E%A2最近需要对公司的服务集成平台做一个流量控制、服务熔断等功能。刚好之前,也就是这个月初,在社区上看到阿里开源了一个流量...

2018-08-27 18:05:56 2927

转载 springcloud服务网关zuul

参考:http://www.ityouknow.com/springcloud为什么需要API Gateway摘录自:http://www.ityouknow.com/springcloud/2017/06/01/gateway-service-zuul.html1、简化客户端调用复杂度在微服务架构模式下后端服务的实例数一般是动态的,对于客户端而言很难发现动态改变的服务实例的访问地...

2018-08-06 17:42:34 205

转载 springcloud 使用git作为配置中心

参考:http://www.ityouknow.com/springcloud首先,需要明确一个配置中心提供的核心功能应该有什么提供服务端和客户端支持 集中管理各环境的配置文件 配置文件修改之后,可以快速的生效 可以进行版本管理 支持大的并发查询 支持各种语言Spring Cloud Config可以完美的支持以上所有的需求。Spring Cloud Config项目是一个...

2018-08-03 19:21:09 9987 4

转载 SpringCloud学习---注册中心、服务注册、服务调用

参考:http://www.ityouknow.com/spring-cloud.html先把第一个项目跑起来。完成服务注册到注册中心,消费者从注册中心进行服务的调用。首先,创建一个简单的spingboot工程。推荐一个project,三个moduel。因为后续测试中,注册中心、服务提供者、消费者都是分开的。可参考我的项目:注册中心使用Eureka作为注册中心。Eureka的读...

2018-08-02 18:08:46 2566

转载 springboot 发送邮件

参考:https://www.cnblogs.com/ityouknow/p/6823356.html准备工作:添加依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</ar...

2018-07-26 18:37:02 235

原创 springboot数据库的操作—整合jpa,mybaits

一些准备的东西:单元测试首先需要整合junit单元测试,方便后续的操作。1、添加依赖:&lt;dependency&gt; &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt; &lt;artifactId&gt;spring-boot-starter-test&lt;/artifactId&gt; &...

2018-07-25 14:26:10 554

原创 使用Idea创建第一个springboot项目

一、IDEA创建springboot项目打开Idea,File--&gt;new--&gt;Project,点击next,输入maven的groupid,artifact,选择java版本(建议1.8以上),打包方式(默认jar),点击next,选额springboot版本,可以选择是否需要添加依赖(也可以在创建好了之后的项目中手动添加),这里我选择mysql依赖,最后,点击...

2018-07-25 11:19:03 241

原创 Java动态代理原理分析

先简单说下静态代理       其实这静态代理非常类似委派模式(Delegate),只不过可以认为代理类跟实现类还是有关联嘛,起码他们都实现了相同的接口,而委派模式两个类完全不相关。       静态代理比较简单,一般就是我们的代理类与我们的实现类实现了同样的接口,在代理类的方法(实现接口的方法)中引用我们的实现类的方法,从而能够起到一个简单的AOP功能了。  【因比较简单,暂不列出代...

2018-07-17 14:13:49 171

原创 linux,建立主机之间的信任,scp、ftp操作

eg: 主机A 要连接主机B。采用: ssh B               #可以是B的IP地址 还会出现是否确认,确认后输入b的密码就连接成功了。此时在主机A上会生成一个known_hosts的文件,保存着此次连接的连接的信息,下次就不用再进行确认了,但还是要输入密码哦。      这样还是比较麻烦,因为总是要输入密码,为此就是需要建立两个主机之间的信任。在主机A...

2018-07-17 14:10:53 1042

原创 Linux的expect命令

先下载安装包:tcl: http://prdownloads.sourceforge.net/tcl/tcl8.5.10-src.tar.gzexpect: http://sourceforge.net/projects/expect/files/Expect/5.45/expect5.45.tar.gz/download。       安装tcl: tar zxvf tcl8....

2018-07-17 14:09:17 1427

原创 修改linux ip地址的方法,让ip静态化

进入:view /etc/sysconfig/network-scripts/ifcfg-eth0修改: DEVICE="eth0" #BOOTPROTO="dhcp"(dhcp为自动分配ip地址,我们把他注释了,在下面另外加) HWADDR="00:0C:29:48:59:0A" #IPV6INIT="yes"(这个改为yes) NM_CONTROLLE...

2018-07-17 14:06:51 287

转载 解决跨域--jsonp、nginx、cors三种方式

from:http://blog.abreaking.com/c/jjkyjncszfs一、什么是跨域如果存在协议、域名、端口或者子域名不同服务端,都会算作跨域。一般来讲,浏览器为了安全的问题都是限制了跨域的访问,因而,有时候就需要想方法绕过浏览器的同源策略了。二、使用jsonp解决的跨域问题   根据jquery的文档:jsonp是json的一种扩展,它要求服务端的代码来检测并处...

2018-07-16 18:01:25 721

原创 Spring源码分析之仿BeanFactory原理实现

参考某个大神的分解Spring源码,具体的github地址给忘记了。后续补上加入我自己的理解,如果让你写Spring的BeanFacotory,你是否也会想到这么写?Step1:         我们知道,spring就是一个大容器(工厂),里面放置了spring初始化的bean,我们需要需要获得该bean时,直接从spring容器中取就OK了。所以,我们大致描述为:BeanD...

2018-07-16 18:00:39 2737

空空如也

空空如也

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

TA关注的人

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