Sunfy Blog

Life is diligent, no pains, no gains.
Viewed Times
Visitors In Total

更优雅的发HTTP请求(RestTemplate)

Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。

RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。 我之前的HTTP开发是......

如何从容应对复杂性

软件的复杂性,是一个很泛的概念。但是一直都是开发过程中的一个难题,本文旨在探讨如何去从容应对复杂性。

一 软件的熵增、构造定律1 熵增定律熵的概念最早起源于物理学,热力学第二定律(又称“熵增定律”),表明了在自然过程中,一个孤立的系统总是从最初的集中、有序的排列状态,趋向于分散、混乱和无序;当熵......

高并发Redis缓存那些事儿

Redis缓存常见问题及相应问题的解决方案 缓存穿透查询一个根本不存在的数据, 缓存层和存储层都不会命中, 通常出于容错的考虑, 如果从存储层查不到数据则不写入缓存层。缓存穿透将导致不存在的数据每次请求都要到存储层去查询, 失去了缓存保护后端存储的意义。 基本原因 自身业务代码或者数据出现问题。 一些恶意攻击、 爬虫等造成大量空命中。 解决方案1、缓存空对象 12345678910111......

LRU缓存算法的实现

一种常见的页面置换算法

LRULRU(Least Recently Used)是一种常见的页面置换算法,在计算中,所有的文件操作都要放在内存中进行,然而计算机内存大小是固定的,所以我们不可能把所有的文件都加载到内存,因......
LRU

CAS操作分析

Compare And Swap,比较并交换

CASCAS(Compare And Swap,比较并交换),通常值的是一种原子操作,针对一个变量,首先比较它的内存值与某个期望值是否相同,如果相同就给它赋值另一个值。正所谓比较并交换。 if......

深入理解 Java SPI机制

一种服务发现机制,自动加载文件里所定义的类。

SPI ,全称为 Service Provider Interface,是一种服务发现机制。在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类......
SPI

docker-compose 启动容器

docker 客户端非常简单 ,我们可以直接输入 docker 命令来查看到 Docker 客户端的所有命令选项。 docker-compose 是什么docker-compose 是一个用来把 docker 自动化的东西。有了 docker-compose 你可以把所有繁复的 docker 操作全都一条命令,自动化的完成。 为什么要用 docker-compose,他解决了什么用通俗的语言......

Spring推断构造方法

一个构造方法|多个构造方法

Spring推断构造方法 Spring中的一个bean,需要实例化得到一个对象,而实例化就需要用到构造方法。 一个构造方法一般情况下,一个类只有一个构造方法: 要么是无参的构造方法 要么是有......

docker-修改容器的挂载目录三种方式

docker-修改容器的挂载目录三种方式 方式一:修改配置文件(需停止docker服务)1、停止docker服务systemctl stop docker.service(关键,修改之前必须停止docker服务)2、vim /var/lib/docker/containers/container-ID/config.v2.json修改配置文件中的目录位置,然后保存退出 1"MountPoin......

Ubuntu桌面被删除后

Ubuntu桌面被误删除,Ubuntu在重启时会校验当前设置路径是否存在,不存在会默认设置一个路径,我Ubuntu20.04版本删除桌面文件夹被删除后,将桌面路径默认为根目录,导致桌面一下子出现了很多文件,为了恢复桌面的清爽,而进行如下操作。 终端打开自己根目录 进入隐藏文件夹 .config 12-- 查看当前目录下所有文件ls -la 编辑文件 vim user-dirs.dirs......

Logtail技术分享一:Polling + Inotify 组合下的日志保序采集方案

logtail是阿里云一款进行日志实时采集的Agent

logtail是阿里云一款进行日志实时采集的Agent,当前几十万台部署logtail的设备运行在各种不同环境上(集团、蚂蚁、阿里云,还有用户部署在公网、IOT设备),每天采集数PB的数据,支撑......
log

Linux系统下VMware kernel Module Updater弹框,Install失败

Ubuntu系统更新后,打开VMware提示需要更新安装,点击安装失败问题解决 提示框 安装失败 123456789101112131415161718--处理方法--打开终端执行如下代码VMWARE_VERSION=workstation-15.5.1TMP_FOLDER=/tmp/patch-vmwarerm -fdr $TMP_FOLDERmkdir -p $TMP_FOLDERc......

Centos 安装 Jenkins

CentOS安装Jenkins 一、Java jdk 安装 安装之前先检查一下系统有没有自带open-jdk 命令: 1rpm -qa |grep java复制代码 1rpm -qa |grep jdk复制代码 12rpm -qa |grep gcj复制代码 如果没有输入信息表示没有安装。 如果安装可以使用rpm -qa | grep java | xargs rpm -e --nodep......

RabbitMQ主要工作模式

MQ全称 Message Queue(消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。 简单模式:一个生产者,一个消费者 work模式:一个生产者,多个消费者,每个消费者获取到的消息唯一(消费者彼此竞争成为接收者)。 订阅模式:一个生产者发送的消息会被多个消费者获取。 路由模式:发送消息到交换机并且要指定路由key ,消费者将队列绑定到交换机时需要指定路由ke......
MQ

Maven-Nexus 私服部署发布报错

我在部署构件至 maven nexus 私服时,有时会出现 Failed to deploy artifacts: Failed to transfer file: … Return code is: 4XX, ReasonPhrase: … 类似这样的错误,那么这些错误是怎么产生,又如何解决呢?我在此将自己在部署过程中遇到的错误整理汇总一下,供大家参阅,希望对大家有所帮助。 一、错误的请求......

解决: Incorrect username or password, or no permission

( Docker 方式运行 Nexus3 登陆密码不为 admin123 、重置登陆密码) 登陆 输入 admin admin123 直接报错 登陆 输入 admin admin123 直接报错: 查日志 发现的确登陆不成功: 后来注意到在登陆时有提示信息 ,密码保存在 /nexus-data下的 admin.password 中。 进入容器:docker exec -i......

docker下gitlab安装配置使用

docker下gitlab安装配置使用(完整版) docker 安装gitlab以及使用 一、安装及配置1.gitlab镜像拉取12# gitlab-ce为稳定版本,后面不填写版本则默认pull最新latest版本$ docker pull gitlab/gitlab-ce 拉取镜像 2.运行gitlab镜像12345$ docker run -d -p 443:443 -p 80:80 ......

Maven私服:Docker安装nexus3

Maven私服:Docker安装nexus3 心血来潮,想自己搭个项目试试,锻炼下架构相关的东东。其中的一步就是搭建maven私服,方便自己部署私包。 查找nexus3镜像1docker search nexus3 拉取nexus3镜像1docker pull docker.io/sonatype/nexus3 查看镜像1docker images 启动容器1doc......