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,需要实例化得到一个对象,而实例化就需要用到构造方法。 一个构造方法一般情况下,一个类只有一个构造方法: 要么是无参的构造方法 要么是有......

MySQL mybatis-generater

mybatis-generater

使用方法: 创建generatorconfig配置文件,并设置 创建数据库用户名及授权以及数据库 1drop database if exists xhh;drop user if exis......

配置https

首先需要生成一个keystorekeytool -genkey -alias kyfxbl -keyalg RSA -keystore f:\kyfxbl.keystore -validity 3650 接下来需要把这个keystore放到应用服务器里,这里用的是jboss4.2.3 然后在%JBOSS_HOME%\server\default\deploy\jboss-web.depl......

SQL四种连接

SQL四种连接

深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接1、内联接(典型的联接运算,使用像 = 或 <> 之类的比较运算符)。包括相等联接和自然联接。 内联接使用比较......

MySQL 远程访问Mysql服务错误

远程访问Mysql服务错误

mysql无法远程连接的解决方法​ 在阿里云服务器上安装好MySQL后,首先想到的就是安装一款工具来管理数据库,一开始选择了phpMyAdmin,这个工具安装很简单,只要解压到能访问的目录......

Redis消息队列

Redis中一个重要的功能

Redis是目前最受欢迎的kv类数据库,当然它的功能越来越多,早已不限定在kv场景,消息队列就是Redis中一个重要的功能。 Redis从2010年发布1.0版本就具备一个消息队列的雏形,随着1......

Java String 对象

深入浅出理解String对象

String 对象的实现String对象是 Java 中使用最频繁的对象之一,所以 Java 公司也在不断的对String对象的实现进行优化,以便提升String对象的性能,看下面这张图,一起了......

并发-分布式锁质量保障总结

分布式锁的方式来进行叙述如何进行质量保障

一 背景并发问题是电商系统最常见的问题之一,例如库存超卖、抽奖多发、券多发放、积分多发少发等场景;之所以会出现上述问题,是因为存在多机器多请求同时对同一个共享资源进行修改,如果不加以限制,将导致......

MySQL - MDL 锁的实现与获取机制

MDL 系统中常用的数据结构及含义

一 背景为了满足数据库在并发下的事务的隔离性和一致性,同时针对 MySQL 插件式多种存储引擎都能发挥作用,MySQL 在 Server 层实现了 Metadata Locking(MDL)机制......

JBoss7多数据源配置

JBoss7数据源配置文件路径%JBossHome%/standalone/configuration/standalone.xml 配置内容如下: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849<datasources> <dataso......

JBoss限制IP直接访问

cd /your_install_dir/jbossweb-tomcat50.sar//bin/cp server.xml server.xml.100323vi server.xml 先修改默认的8080端口 123456<Service name="jboss.web"className="org.jboss.web.tomcat.tc5.StandardService">&......