自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 问答 (3)
  • 收藏
  • 关注

原创 修改Wireguard-windows客户端支持优先解析ipv6地址方案

不知道为啥解析出来A记录也是ipv6地址,,凑合用吧- -。由demo可知,他可以设置一个dns服务器,然后上服务器做域名解析记录。0.使用资源中的文件替换安装目录下的原文件(默认安装地址是c:\program files\wireguard)修改代码逻辑的思路是在配置文件中通过注释添加dns服务器地址,若有填地址则优先miekg/dns来解析文件。这个逻辑是调用windowsApi做dns解析得到ip地址。DNS解析结果中A记录ipv4地址,AAAA记录是ipv6地址。miekg/dns使用demo。

2023-10-16 19:39:54 415

原创 华硕路由器使用ipv6+ddns开启wireguard vpn实现内网穿透

ipv6+ddns+wireguard实现vpn方式内网穿透

2023-10-04 23:27:33 3145 6

原创 chatGPT3.5 回答elasticsearch 集群相关问题

需要注意的是,这些节点的角色并非是固定的,一个节点可以同时担任多个角色。在较小规模的集群中,通常会将这些角色放在同一个节点上,而在大规模的集群中,会将它们分布在多个节点上,以实现更好的性能和可伸缩性。请注意,确保新机器与现有集群之间的网络连接是可达的,并且新机器上的硬件资源和配置满足集群的要求。通过这些机制,Elasticsearch 实现了分布式、冗余和自动化的架构,提供了高可用性和容错能力,从而保证了系统在节点故障或其他故障情况下的稳定性和可用性。

2023-07-12 14:42:28 91 1

原创 使用wireguard+frp实现内网穿透远程桌面

wireguard+frp实现内网穿透远程桌面

2023-03-24 22:33:08 3548 4

原创 三门问题代码

三门问题(Monty Hall problem)亦称为蒙提霍尔问题、蒙特霍问题或蒙提霍尔悖论,大致出自美国的电视游戏节目Let's Make a Deal。问题名字来自该节目的主持人蒙提·霍尔(Monty Hall)。参赛者会看见三扇关闭了的门,其中一扇的后面有一辆汽车,选中后面有车的那扇门可赢得该汽车,另外两扇门后面则各藏有一只山羊。当参赛者选定了一扇门,但未去开启它的时候,节目主持人开启剩下两扇门的其中一扇,露出其中一只山羊。主持人其后会问参赛者要不要换另一扇仍然关上的门。问题是:换另一扇门是否会增加参

2021-06-03 14:40:18 205 1

原创 算法:第n个丑数-java

丑数定义1是丑数只包含质因子2,3和5的数称作丑数。如8,6,15算法思路一个丑数(除1外)是排在它前边的某个丑数乘以2或者乘以3或者乘以5得到的,那么我们只要在当前得到的丑数集合中找到比当前集合中最大丑数刚刚好大的丑数即可,因为我们要保持有序,才好找到第N个丑数,现在难点是怎么在O(1)时间内就找到一个丑数,使得它乘以2或者乘以3或者乘以5刚刚好大于当前最大丑数呢?我们设置三个游标,一个表示所指丑数乘以2是下一个可能加入到丑数集合中的丑数,一个表示所指丑数乘以3是下一个可能加入到丑数集合中的

2020-07-29 17:19:29 354

原创 LRU的Java实现

文章目录思路代码实现思路维护两个数据结构,1个用于“淘汰最远未使用的缓存”,另一个用于“缓存数据查询”代码实现import java.util.*;/** 手写lru */class LruCache1<K,V> { private final int capacity; private final KeyHolder<K> keyHolder; // keyHolder也可以直接使用linkedHashMap。 private final

2020-07-29 13:41:44 256

原创 Sentinel实践-熔断和限流

文章目录sentinel简介一些基本概念资源规则资源和规则的关系springboot项目应用简单实践pom依赖AopConfigurationResourceNameDefRuleDefinetion对接口限流查看效果总结sentinel简介Sentinel 是面向分布式服务架构的高可用流量防护组件,主要以流量为切入点,从限流、流量整形、熔断降级、系统负载保护、热点防护等多个维度来帮助开发者保障微服务的稳定性。Sentinel 具有以下特性:丰富的应用场景:Sentinel 承接了阿里巴巴近 10

2020-07-24 17:26:55 735

原创 令牌桶简单实现(Java)

令牌桶简单实现(Java)文章目录令牌桶简单实现(Java)简介实现思路codemain输出结果简介百度可得,令牌桶是一个桶,定时往里面放令牌,然后请求来了从令牌桶里取令牌,取到了继续后续逻辑,没取到就拦截不让请求,达到限流目的实现思路参考了guava的RateLimiter之后,发现并没有“一个线程定时往桶里放token”,而是在请求进来时通过当前时间戳实时计算(下一次加令牌的时间为x,此时时间为m,平均n秒放一个令牌,则此时应当增加 (m - x) / n + 1 个令牌)code/**

2020-07-15 14:08:30 5324

原创 Synconized,对象,锁,锁升级

锁 对于普通同步方法,锁是当前实例对象 对于静态同步方法,锁是当前class类对象 对于同步方法块,锁是括号内对象。 JVM基于进入和退出Monitor对象来实现方法和代码块同步。每个java对象都有一个Monitor与之对应。代码块同步是用monitorenter和monitorexit关键字实现。monitor的本质是依赖于底层操作系统的Mutex Lock实现。...

2020-04-04 10:42:06 382

原创 jenkins部署后应用不启动

在jenkins控制台看启动脚本执行(start.sh)完毕,ps查看进程发现没有对应进程在linux服务器上直接执行start.sh发现可以启动成功。其实原因很简单,在jenkins中有这个提示:jenkins Process leaked file descriptors即Jenkins默认会在Build结束后Kill掉所有的衍生进程,用官方的话来说就是:To rel...

2019-10-09 10:16:47 780

原创 线程池ThreadPoolExecutor简介

目录参数解释corePoolSizemaximumPoolSizekeepAliveTimeTimeUnitBlockingQueueThreadFactoryRejectedExecutionHandler线程池实现原理1. 线程池状态2. 任务的执行-execute方法3. 线程复用大致原理参数解释public ThreadPoolEx...

2019-06-24 00:07:18 178

原创 centos7下Docker和spring boot集成demo

以下均使用root用户操作一、构建打包环境需要的运行环境:jdk8 docker maven默认docker和java环境已经配置完毕3. maven安装首先在centos上下载mavenwget http://mirror.bit.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.t...

2019-06-02 17:33:21 154

原创 201904Java面经

三年经验。最近开始找工作,记录一下遇到的问题jvm强引用,弱引用,软引用,虚引用 jvm内存模型,gc算法有哪些,具体逻辑java:nio/bio区别,epoll/poll/select有什么区别 concurrenthashmap,7和8的差别,锁怎么用的 线程池具体实现 aqs,cas实现方式 sync关键字和可重入锁区别 threadlocal原理以及内存泄漏问...

2019-04-04 14:59:17 265

原创 HashMap阅读(jdk1.8)

hashMap有并发问题,1.6是死锁,1.8是丢元素。先看并发会产生什么现象import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.serializer.SerializerFeature;import java.util.HashMap;import java.util.Map;import java.uti...

2019-01-22 10:27:17 134

原创 spring cloud 本地配置研究

已知:spring cloud先加载bootstrap,后加载远程config-server的application。对于一个服务,需要公共配置:注册中心地址;日志级别configServer的server-id,profile,label另外需要私有配置:spring.application.name服务名server.port端口名需要在application拉取的配置名。问题:目前所有服务都...

2018-07-09 11:41:28 506

原创 ServerSocketChannel+Selector实现多路复用io

import java.io.IOException;import java.net.Inet4Address;import java.net.InetSocketAddress;import java.net.ServerSocket;import java.net.SocketAddress;import java.nio.ByteBuffer;import java.nio.ch...

2018-02-11 16:10:53 974

原创 java实现观察者模式

为了看netty源码做准备。观察者模式、发布-订阅模型、reactor模式本质上类似,通过事件回调来解耦动作执行者和观察者。观察者模式中主要分三个角色:观察者(监听器)事件(执行的动作)事件源(监视对象)具体的实现方式分两步:观察者初始化,绑定到事件源事件发生时通知绑定了该事件的观察者代码如下:观察者:public interface Listener {    void onEventAttac...

2018-02-11 16:06:46 227

原创 enum是什么

javap ResultEnum.class 得到了如下信息Compiled from "ResultEnum.java"public final class com.wecash.business.activity.otherdb.enums.ResultEnum extends java.lang.Enum&lt;com.wecash.business.activity.otherd...

2017-08-27 11:03:31 677

原创 >>>,>>的区别

思路:-32分别做>>>3和>>3的运算,然后看结果。代码如下:class Var{ public static void main(String[] args) { int a=-32; int b=-32; a=a>>>3; b=b>>3; System.out.println(a+","+b); }}结果A=536870908;B=-4。

2015-08-29 18:30:59 268

空空如也

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

TA关注的人

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