自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

人间师格

币帛未曾带,匆匆羁旅程。 满山枫似锦,权可献神灵。

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

原创 elastic job 简单高可用机制

场景定时任务配置<job:simple id="springSimpleJob" class="com.dangdang.ddframe.job.example.job.simple.SpringSimpleJob" registry-center-ref="regCenter" sharding-total-count="2" cron="0/5 * * * * ?" o

2021-03-26 15:55:24 288

原创 elastic job 使用LeaderLatch选主功能分析

elastic job 选主功能介绍elastic job在启动的时候会进行选主,使用的是curator的LeaderLatch类进行选主,选主成功之后会执行回调操作LeaderElectionExecutionCallbackif (!hasLeader()) { jobNodeStorage.fillEphemeralJobNode(LeaderNode.INSTANCE, JobRegistry.getInstance().getJobInstance(jobName).get

2021-03-26 14:31:11 407

转载 mapreduce

https://www.zhihu.com/question/303101438

2020-03-21 11:51:30 114

原创 排序算法简介

排序排序:即将原本无序的序列重新排列成有序序列的过程。 排序的稳定性:所谓排序的稳定性就是当待排序序列当中有两个或者两个以上相同的关键字时,排序前后这些关键字的相对位置如果没有发生变化就是稳定的。插入类排序直接插入排序 原始序列 :49 ,38 ,65 ,50 一开始只看49,一个数是有序的。 排序结果:已排序( 49 ) 待排序(38,65,50)...

2019-03-13 14:37:22 133

原创 关系数据库理论-范式

范式范式是符合某一种级别的关系模式的集合。 范式的种类: 第一范式(1NF) ,第二范式(2NF) ,第三范式(3NF) ,BC范式(BCNF) ,第四范式(4NF) ,第五范式(5NF) 第一范式作为二维表,关系要符合一个最基本的条件:每个分量必须是不可分开的数据项。满足了这个条件的关系 模式就属于第一范式(1NF) 。即不能表中包含表。 S-L-C(Sno,Sd...

2019-03-13 12:31:35 1600 2

原创 spring容器管理下,bean组件管理需要注意的点

1.错误代码示范@Componentpublic class TransferUtilBiz { /** * 内部户转账 */ @Autowired private InnerAccountTransBiz innerAccountTransBiz; /** * 卡转账 */ @Autowired ...

2018-07-19 11:39:51 946

原创 jwt的使用

1.什么是jwtJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准((RFC 7519).该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO)场景。JWT的声明一般被用来在身份提供者和服务提供者间传递被认证的用户身份信息,以便于从资源服务器获取资源,也可以增加一些额外的其它业务逻辑所必须的声明信息,该tok

2017-10-20 16:33:07 3284 2

原创 spring cloud学习

1.服务的注册与发现@EnableEurekaServer@SpringBootApplicationpublic class EurekaserverApplication { public static void main(String[] args) { SpringApplication.run(EurekaserverApplication.class,

2017-10-09 14:30:49 254 1

原创 RSA加解密与签名验签

1.RSA介绍1.消息摘要如果消息改变了,那么改变之后的消息的指纹和原消息的指纹将不匹配,如果消息的指纹和消息是分开传送的。那么接收者就可以检查消息是否被篡改过。但是,如果我同时知道了消息和指纹,就可以对消息重新计算指纹,那么消息接收者就不会知道消息被篡改了。解决这个问题就用到了RSA,公共密钥加密技术。RSA包括公共密钥和私有密钥。公钥可以告诉任何人。这些密钥之间存在一定的数

2017-09-18 18:08:42 1491

原创 对称加密:AES

1.AES介绍数字签名是java api中实现的重要密码技术,安全性的第二个重要方面是加密。当消息通过认证之后,该消息本身是直白可见的。数字签名只不过是负责检验信息有没有被篡改过。相比之下,信息被加密之后,是不可见的,只能用匹配的密钥进行解密。   认证对于代码签名已经足够了——没必要将代码隐藏起来。但是当传输机密信息时,比如信用卡和号码之类的就需要加密了。2.AES使用例

2017-09-14 17:27:36 226

原创 webservice:客户端调用https接口

1.背景介绍因为项目当中用到了webservice接口,并且提供了一个公网地址给调用方使用,但是调用方在调用的时候一直报错,错误如下。这个错误的原因是:302 Found 是HTTP协议中的一个状态码(Status Code),可以简单的理解为该资源原本确实存在,但已经被临时改变了位置;或者换个说法,就是临时的存在于某个临时URL下。通常会发送Header来暂时重定向到

2017-08-22 09:55:38 10531 2

原创 ThreadPool

1.代码示例package threadPool;import java.io.*;import java.util.*;import java.util.concurrent.*;/** * @version 1.02 2015-06-21 * @author Cay Horstmann */public class ThreadPoolTest{ public

2017-08-16 13:57:07 426

原创 Callable与Future

1.代码示例package future;import java.io.*;import java.util.*;import java.util.concurrent.*;/** * @version 1.01 2012-01-26 * @author Cay Horstmann */public class FutureTest{ public static v

2017-08-16 10:48:16 159

原创 java多线程编程核心技术-volatile关键字

1.代码示例package extthread;public class RunThread extends Thread { private boolean isRunning = true; public boolean isRunning() { return isRunning; } public void setRunning(boolean isRunning

2017-08-15 16:10:06 274

原创 ConcurrentHashMap特性二

1.ConcurrentHashMap读的特性1.1 ConcurrentHashMap get操作。源代码:public V get(Object key) { Segment s; // manually integrate access methods to reduce overhead HashEntry[] tab; int

2017-08-10 16:08:19 190

原创 ConcurrentHashMap的特性

1.ConcurrentHashMap写操作ConcurrentHashMap采用了分段锁的设计,只有在同一个分段内才存在竞态关系,不同的分段锁之间没有锁竞争。相比于对整个Map加锁的设计,分段锁大大的提高了高并发环境下的处理能力。 因为ConcurrentHashMap引入了分割(segmentation),不论它变得多么大,仅仅需要锁定map的某个部分,而其它的线程不需要等...

2017-08-09 10:11:31 715

原创 乐观锁与悲观锁

1.解释          独占锁是一种悲观锁,synchronized就是一种独占锁,它假设最坏的情况,并且只有在确保其它线程不会造成干扰的情况下执行,会导致其它所有需要锁的线程挂起,等待持有锁的线程释放锁。而另一个更加有效的锁就是乐观锁。所谓乐观锁就是,每次不加锁而是假设没有冲突而去完成某项操作,如果因为冲突失败就重试,直到成功为止。

2017-08-08 16:08:37 243

原创 阻塞队列BlockingQueue

1.知识点

2017-08-08 10:14:32 171

原创 finally字句的用法

1.代码实例2.运行情况1.代码没有抛出异常执行顺序1-2-5-62.抛出一个在catch语句中捕获的异常1.如果catch语句没有抛出异常执行顺序1-3-4-5-62.如果catch语句抛出异常执行顺序1-3-53.代码抛出异常但是没有被补货执行顺序1-5

2017-08-03 16:15:37 682

原创 apache shiro使用nginx集群如何解决cache共享

如果要实现集群共享cache,我们就不能用shiro默认的方式处理了。之前在我的项目当中使用的cacheManager: 现在需要做出一些修改:

2017-07-21 17:38:48 465

原创 apache shiro框架如何使用nginx负载

1.apache shiro框架在使用负载均衡的时候出现的问题当我进入我的项目的首页的时候发现是无法登陆的,原因是因为服务器之间的session没有共享这也是Apache Shiro集群需要解决的问题。  Apache Shiro集群要解决2个问题,一个是session的共享问题,一个是授权信息的cache共享问题,官网给的例子是Ehcache的实现。这里我们可以通过集成redis

2017-07-21 15:26:10 2927

原创 nginx的使用经历

1.什么样的场景下使用nginx?很多时候我们的项目都是在一台服务器部署,但是当业务量很大时候就很陷入瓶颈期,这个时候我们就会选择在多台服务器上部署。就像我现在的项目就部署了12台服务器,主要业务是给全国各省提供一些业务能力。这个时候使用nginx就会非常好了。因为nginx就是负载均衡是所有的业务都能均匀的分摊到每一个服务器。2.nginx使用起来的效果。首先我自己在

2017-07-21 14:36:54 315

原创 nginx的安装

1.nginx的安装安装Nginx之前,首先要安装好编译环境gcc和g++,然后以CentOS为例安装Nginx,安装Nginx需要PRCE库、zlib库和ssl的支持,除了ssl外其他的我们都是去官网下载:  Nginx:http://nginx.org/  PCRE:http://www.pcre.org/  zlib:http://www.zl

2017-07-21 14:00:01 232

原创 session介绍

用户使用网站的服务,基本上需要浏览器与Web 服务器的多次交互。HTTP 协议本身是无状态的,需要基于HTTP 协议支持会话状态(Session State)的机制。而这样的机制应该可以使Web 服务器从多次单独的HTTP 请求中看到“会话”,也就是知道哪些请求是来自哪个会话的。具体实现方式为:在会话开始时,分配一个唯一的会话标识(SessionId),通过Cookie 把这个标识告诉浏览器,

2017-07-19 17:01:21 193

原创 cxf服务端创建与客户端调用和动态调用

1。服务端的创建首先我们写一个服务接口,这个接口有一个sayHi的操作。jaxb是不支持maps的,处理List很方便,但是不直接支持maps,需要一个适配器。IntegerUserMapAdapter的作用是完成Map到IntegerUserMap的映射和IntegerUserMap到Map的映射。方法分别是marshal和unmarshal而且如果需要处理接

2017-06-23 11:25:11 3884 1

原创 redis哨兵模式

1.首先介绍redis在linux系统下的安装方法。wget http://download.redis.io/releases/redis-2.8.3.tar.gz获取redis安装文件tar xzf redis-2.8.3.tar.gz解压cd redis-2.8.3make进入目录然后安装。然后将redis-benchmar

2017-06-15 16:17:15 413

原创 JDK动态代理与CGLIB代理

AOP 即面向切面编程。通常用来处理具有横切性质的系统级别服务,比如事务,安全,缓存等。AOP 代理主要分为两大类:静态代理:使用 AOP 框架提供的命令进行编译,从而在编译阶段就可生成 AOP 代理类,因此也称为编译时增强;静态代理以 AspectJ 为代表。动态代理:在运行时借助于 JDK 动态代理、CGLIB 等在内存中“临时”生成 AOP 动态代理类,因

2017-06-07 16:24:48 171

原创 StringBuffer和StringBuider的线程安全测试。

我们知道StringBuffer是线程安全,而StringBuider则不是,在多线程的情况下。同样的条件可能导致得出的结果不同。下面是测试代码:package com.cbf4life;import java.util.ArrayList;import java.util.List;/** * Created by Maggie on 2017/6/6. */publ

2017-06-07 10:16:26 620

原创 ArrayList在添加元素的时候会出现的一些线程不安全的现象

再学习多线程编程的时候,看到如下代码。package com.cbf4life;import java.util.*;public class ThreadSafeDemo { public ThreadSafeDemo() { ThreadGroup group=new ThreadGroup("testGroup"); MyT

2017-06-06 11:11:11 4491

原创 spring事物

1.配置<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager"> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://ww

2016-09-28 09:59:37 320

原创 struts-spring整合

1.web.xml里中的作用在2.4版本的servlet规范在部属描述符中新增加了一个元素,这个元素有四个可能的值:即REQUEST,FORWARD,INCLUDE和ERROR,可以在一个元素中加入任意数目的,使得filter将会作用于直接从客户端过来的request,通过forward过来的request,通过include过来的request和通过过来的request。如果没有指定

2015-09-18 17:01:39 140

原创 Maven仓库管理器之应用Nexus

 Maven(Maven仓库管理器之应用Nexus)http://www.csdn123.com/html/exception/568/568876_568878_568872.htm

2015-09-07 15:55:19 127

空空如也

空空如也

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

TA关注的人

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