自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天涯明月

行尽天涯 寻当年明月

  • 博客(71)
  • 资源 (1)
  • 收藏
  • 关注

原创 简说VMware网络连接模式原理与实践

Bridged模式 桥接模式下,系统会在主机上虚拟出一个交换机,虚拟机和主机都连接该交换机,虚拟机和主机处于同等地位,在同一个网络内。相当于当虚拟机直接连接到外部网络上。NAT模式(Network Address Transtation 网络地址转换) 这种模式下,虚拟机和主机对外共用同一个IP(所有NAT模式的虚拟机都与主机共享IP),相当于建立了一个局域网,然后多台机器共享一个外网ip,好处是可以缓解IP4数量不足的问题。但坏处就是虚拟机的请求包、外部的响应包都需要经过主机的...

2021-10-19 17:55:49 619

原创 Java实现JWT

JWT(JSON Web Token) JWT在web环境中通常作为一种用户凭证,它是一个以.分隔,由heaer.payload.signature组成的字符串,其中每个部分都经过Base64编码。header包含token采用的算法、类型(JWT)、KeyId等信息,payload中包含token的发行人iss、过期时间exp、业务信息等(比如用户ID、昵称等),signature是对(header.payload)的Base64组合串用密钥加密得到的摘要,代表header.payloa....

2021-10-19 11:08:22 2530

原创 消息摘要、各种加密方式的简要说明

本篇不涉及具体的代码实现,相关代码可参考JWt、签名接口的博客消息摘要 消息摘要通常采用哈希/散列算法,比如MD5、SHA、MAC系列,是一种不可逆的单向算法,它可以把任意长度的信息,生成定长的摘要,并且无法通过摘要信息反向解析出原始数据。所以消息摘要一般用来确保数据传输过程中的完整性。 发送方在传输时,需要将原始数据与摘要信息同时传递给接收方,接收方再对原始数据进行同样的处理得到新的摘要信息,通过对比两个摘要信息是否一样,即可判断数据在传输过程中是否有被修改。当然,双方...

2021-10-19 10:58:34 1086

原创 Charles抓包工具的使用

目录Charles启用代理 Charles抓Chrom包 Charles抓取手机端HTTP包 Charles抓取手机端HTTPS包(解决<unknow>问题) 过滤Charles启用HTTP代理 进入Proxy--> Proxy Settings,设置代理端口,默认为8888 Charles抓Chrom包 依次进入设置-->系统-->打开代理设置-->局域网设置-->勾选"代理服务器"下的"为LAN使用代理..."--&g...

2021-10-19 10:46:51 727

原创 Eclipse加载color theme本地插件,无效问题

以Color Theme为例:1)下载:http://eclipse-color-theme.github.io/update/eclipse-color-theme-update-site.zip2)解压并将两个文件夹拷贝到Eclipse目录下(存在的情况下选择替换文件即可)3)启动,如果启动无效,尝试以下操作(无顺序要求) 3-1修改eclipse.ini文件,添加启动项...

2020-04-22 01:11:50 793

原创 Maven指南(二)POM文件说明 及依赖管理

POM  pom是Maven工作的基本单元,每个项目只会有一个pom.xml文件,其中包含项目对象、构建流程和其它配置信息。当构建项目时,Maven通过读取pom.xml获取配置信息然后执行相应的有序操作。超级POM  Maven自带了一个Super POM,也是Maven的默认POM。除非明确设置,否则所有POM都会扩展Super POM,这意味着在Super POM中的配置信息将由所有...

2020-04-22 01:10:58 2531

原创 Redis(五):主从复制

全量同步 增量同步 主从配置 复制流程及源码分析  主从复制问题及优化  Redis主从复制可以分为全量同步和增量同步,在Redis 2.8之前从节点每次连接主节点都会发送SYNC命令,来执行一次全量同步;2.8之后全量同步主要针对首次连接的情况,对于断线重连可以进行增量同步,且2.8之后用PSYNC代替了SYNC,其中psync ? -1表示全量同步,增量同步用psync &lt;ru...

2020-04-22 00:03:54 575

原创 Jetty应用部署与Session支持

启动Jetty  Jetty启动配置由全局的home/start.ini及多个home/start.d/*.ini文件控制,DOS模式下启动Jetty很简单,这里以一个空的应用为例(如下),其中--add-to-startd表示添加依赖模块,会在当前项目下创建webapps及start.d目录,并在start.d下生成模块对应的*.ini文件,如start.d/https.ini, start....

2020-04-22 00:03:19 918

原创 Maven简介

一、官网概述及Maven特点 Apache Maven is a software project management and comprehension tool.Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and doc...

2020-04-22 00:02:05 177

原创 Jedis实现分布式锁

ZooKeeper是什么?  ZooKeeper是一个高可用的分布式协调框架,ZooKeeper是一种集中式服务,用于维护配置信息,命名,提供分布式同步等服务,可以简单理解成一个高可用的分布式协调框架。所有这些类型的服务都以分布式应用程序的某种形式使用。每次实施它们都需要做很多工作来修复不可避免的错误和竞争条件。由于难以实现这些类型的服务,应用程序最初通常会吝啬它们,这使得它们在变化的情况下变得...

2020-04-22 00:01:21 295

原创 Spring Cloud之Ribbon原理,及RestTemplate启用负载的原理

ScriptEngine是1.6版本之后新加入的功能,提供了在服务器端调用脚本代码(如JavaScript、Groovy、Ruby、Scheme等)的相关API。JVM在启动时会发现所有可用的脚本引擎,每一个脚本引擎都可以处理特定的脚本代码。如JavaScript脚本引擎、Groovy脚本引擎等等。通过new ScriptEngineManager().getEngineFactories

2020-04-22 00:00:59 653 1

原创 Nginx负载均衡策略

上游服务器集群的配置语法及说明配置: upstream serverxxx{ ## 负载策略 ## server ip:port [params] server ip:port [params] ...} 默认: - Context http 负载策略主要有以下几种策略 说明 Round R...

2020-04-22 00:00:16 441

原创 分布式全局唯一ID的几种方式

Java的UUID基于Twitter-Snowflake算法实现Snowflake算法  Snowflake算法是由Twitter(推特)提出的,背景是为了给Twitter中的每条消息分配一个唯一ID,并保证ID的有序性,方便客户端排序,并且在分布式系统中的不同机器产生的ID也必须不同。  Snowflake的优点是,整体上按照时间自增排序,并且整个分布式系统内不会产生ID碰撞(由数据中心I...

2020-04-21 23:49:36 207

原创 Docke容器抛出WARNING: IPv4 forwarding is disabled. Networking will not wor,联不上网的问题

1)容器联不上网问题场景:在VMware中启动docker容器时,抛出WARNING: IPv4 forwarding is disabled. Networking will not work.结果:容器内部无法访问外网,也无法访问物理机。原因:Linux默认情况下禁止了IPv4转发,而VM的NAT模式下需要通过宿主机进行转发才能联通到外网解决方案:在内核文件中启用IPv4转发。注意Ce...

2020-04-21 23:44:43 160

原创 RocketMQ架构:服务端分析

fg fg

2020-04-21 23:44:13 268

原创 SpringBoot实践:热部署

spring-boot-devtools devtools是spring boot中一个热部署插件,它通过监测类路径来及时发现文件的更新,当有文件更新后即触发一次重启。根据Spring Boot官方文档上的描述,devtools插件底层使用了两个类加载器,一个类加载器加载那些不会被更改的类(比如第三方的jar包),另一个官方称为“restartclassloader”,专门来用...

2020-04-21 23:43:57 151

原创 Java:判断系统为Linux还是Windows

下载地址添加或不添加Path以管理员身份运行cmd.exe,已经添加了Path的情况下,直接执行mysqld --install即可。未添加Path的情况下,需要进入到安装目录\bin目录下,执行mysql -...

2020-04-21 23:42:41 595

原创 Redist短结构

1.禁用Banner2 、自定义Banner(图片或转成ASCII码以文本显示)方式一:在/src/main/resource目录下,创建banner.txt文件,将自定义的banner放入其中即可。...

2020-04-21 23:42:01 1092

原创 Eurake原理简介,及集群环境搭建

Java提供了对象序列化机制,允许把任何对象写入输出流中或从输入流中读取。写出去即称之为序列化,读取进来即称之为反序列化。下面简单的介绍下这两者的相关细节。  说序列化前就必须得先说一下Serializable接口,Serializable接口并不含任何内容,它仅仅用来标记该类对象是否可以被序列化。  序列化要求对象本身及关联的其它引用类型必须实现了Serializable接口;另外对于被

2020-04-21 23:41:07 6096

原创 Redis使用性能优化建议

事务,出错全部回滚。部分支持(语法级别的错误,全部回滚,比如getsetxxx。运行过程中的错误,只回滚失败部分。比如incr str类型)。watch(乐观锁/悲观锁)...

2020-04-21 23:40:44 601

原创 Spring Boot循环依赖,及失败时的解决方案

一Linux内核参数优化

2020-04-21 23:39:51 2844

原创 ZooKeeper(四):从源码角度分析Leader选举机制

  关于zookeeper的客户端,这里以zkCli.sh及Java版本客户端为例,前者是zk自带的一个命令行客户端,后者是当前流行的Java版客户端,比较具有象征意义。zkCli.sh简介  通过zkCli.sh建立与服务器的连接很简单:[root@localhost bin]# ./zkCli.sh -timeout 3000 -server 192.168.88.128:2181,连接后会...

2020-04-21 23:38:59 1120

原创 SpringBoot原理:启动

入口代码示例@SpringBootApplicationpublic class BootStart { public static void main(String[] args) { SpringApplication.run(BootStart.class, args); }}public class SpringApplication {...  public s...

2020-04-20 00:08:02 106

原创 RocketMQ:创建多个Producer/Consumer的问题

ttt

2020-04-20 00:06:15 7019

原创 Git联接本地仓库与远程仓库

2020-04-20 00:05:50 98

原创 Redis可视化工具:Redis Desktop Manager

了解Lambda之前(发音拉姆达)得先了解策略模式,但本篇不过多涉及策略模式,仅讲解Lambda的出现、使用。Lambda表达式的出现,使我们可以用更简洁的代码实现行为参数化,行为参数化在Java8之前是通过策略模式来实现的,Lambda并不是改变这种思想,改变的仅仅是编码风格而已。看一个最简单的例子,有一List需要你根据年龄倒序排列,Java8之前你可能会这么写 public st

2020-04-20 00:05:28 9282 2

原创 Redis Lua脚本简介、以及Redis实现计数器

JSON官方介绍、JSONObject与JSONArray、Demo示例

2020-04-20 00:04:58 1008

原创 Rocket事务消息

请输入用户名: /as sysdba连接到:Oracle Database 11g Express Edition Release 11.2.0.2.0 - Production

2020-04-20 00:04:21 263

原创 RocketMQ架构:客户端分析

test

2020-04-20 00:03:44 359

原创 Redis Cluster服务端 + JedisCluster客户端相关原理、及集群扩容/缩减操作

下载&amp;安装

2020-04-20 00:03:15 1040

原创 Git协议:Https协议下Clone项目及授权凭证管理、SSH协议下Clone项目及密钥生成

问题引子 在新开发机上安装了Git,通过Https协议方式拉取项目后,每次git push的时候都提示输入用户名和密码 。解决方案 在终端执行git config --global credential.helper store或git config --global credential.helper manager或git config --global cr...

2020-04-20 00:02:31 1341

原创 Redis命令之scan、sscan、hscan、zcan

如果需要经常创建线程,或者并发线程数量有可能很多的情况下应该使用“线程池”,这时线程池能减少创建线程的消耗,并且也能限制(或减少 )并发线程的数量。但池中具体存放的线程数量依不同项目而不同。Excetor:执行已提交的 Runnable 任务的对象。此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节、调度等)分离开来的方法。Excetor把任务(如runnabl

2020-04-20 00:01:59 6278 1

原创 RabbitMQ消息

消息持久化  rabbitmq通过将消息保存到日志文件中来实现持久化,对于持久化消息的发送,rabbitmq在写入到日志文件后才会发送确认。此外要想实现消息持久化,必须将exchange、queue、message同时设置成持久化。  使用持久化会在一定程序下降低rabbitmq的吞吐量(10倍甚至更低),原因是需要写磁盘,但持久化可以防止由重启宕机等原因造成的消息丢失。此外由于队列在集群环境...

2020-04-19 23:46:17 260

原创 ThreadLocal

以SimpleDateFormat解析日期为例进行说明package org.world.traveler.common;import java.text.SimpleDateFormat;import java.util.Date;public final class ThreadLocalTest { private final static SimpleDateFormat

2020-04-19 23:42:53 131

原创 Redis(六)高可用Redis

上篇博客详细介绍了主从复制流程及原理,这里对主从复制的其它细节、问题及优化进行一个整理。心跳检测 复制超时与中断 哨兵模式 集群心跳检测  在命令传播阶段,除了发送写命令外,主从节点还通过心跳检测机制(通过发送PING、REPLCONF ACK命令)来检测彼此状态,心跳检测通过周期性调用replicationCrom()函数来实现。/* Replication cron fu...

2020-04-19 23:28:47 102

原创 Git下载与配置

2020-04-19 23:26:52 182

原创 RocketMQ,基于docker的集群环境搭建

安装  由于资源有限,这里在同一个VM中搭建基于Docker的集群环境,个人已有镜像dnmy/rocket:tag01。关于Dockerfile文件内容参考https://blog.csdn.net/w1673492580/article/details/44038151[root@localhost /]# docker pull dnmy/rocket:tag01tag01: Pul...

2020-04-19 23:26:17 955

原创 Git基本概念及常用命令详解

版本控制  目前主流的版本控制系统主要有集中式版本控制系统Centralized Version Control Systems(简称 CVCS)和分布式版本控制系统(Distributed Version Control System,简称 DVCS)两种,主流代表分别是SVN和Git。  CVCS这类系统,都通过一个单一的服务器,集中保存所有文件的修订版本、提交历史记录等信息,开发人员...

2020-04-19 23:25:16 171

原创 Zookeeper(五):内存数据、事务日志、数据快照,及数据恢复

动态SQL数据源(多数据源切换)配置(一对一,一对多)ResultMap,嵌套处理Clok、Blok数据分页查询一个Map<,key为行号,value为记录与spring集成...

2020-04-19 23:24:51 807

原创 Redis-Cluster环境搭建

导入其他配置类你不需要把所有的@Configuration东西都放在一个班级里。所述@Import注释可以用于导入额外的配置类。或者,您可以使用@ComponentScan自动获取所有Spring组件,包括@Configuration类。...

2020-04-19 23:23:56 208

java Base64精简代码

包含sun.misc.编码解码、org.apache.commons.codec.binary.Base64编码解码、自定义的、myBase64Encode/Dencode 以及对对几种方式的区别

2016-03-04

空空如也

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

TA关注的人

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