- 博客(7)
- 资源 (1)
- 问答 (2)
- 收藏
- 关注
原创 多线程之生产消费者【经典例子java】
1.普通的生产消费者例子 synchronized JVM提供的多线程同步,在少量线程下,足够用来this.wait() 线程等待notify(), JVM去随机唤醒一个线程,然后拿到锁 【不用竞争】notifyall() JVM去唤醒所有线程,然后竞争拿到锁【需要竞争】多线程,小心死锁和没同步住数据p
2017-05-28 18:33:29 598
原创 多线程之CountDownLatch
package com.test.thread;import java.util.concurrent.CountDownLatch;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;public class CountDownLatchTest { // 模拟了10
2017-05-28 16:57:23 355
原创 java项目中的加密
背景 加密原理很难,开发倒不难,面试也问经常被问到,然后我就一脸懵逼的看着面试官,我不清楚,不知道,没用过。哎,说多了都是泪。 开发其实就是那么几个工具类。AES和RSA都是加密算法AES属于对称加密算法RSA属于非对称加密算法,公钥和私钥不一致MD5对于暴露在互联网上的,RSA最给力啦。RSA需要维护两个密钥,公钥和私钥
2017-05-21 12:52:45 848
原创 java 反向代理的项目怎么获取访问者IP
背景 项目中经常有记录访问者IP的功能,如审计安全日志。现在项目部署到生产,没有不用反向代理的,nginx。复杂的项目网络可能有多个反向代理。 话说,很多奇葩BUG就是反向代理上出了问题。测试环境项目跑的好好的,一上生产问题就来不。网络环境生产复杂多了。扯多了。开发步骤 /** * 获取访问者IP * * 在
2017-05-21 12:18:15 865
原创 Spring的好用注解之异步注解@Async
背景 项目里异步场景很多,比如通知一个不需要马上反馈结果的部件,邮件啦等等。解决这个问题最简单,当时是自己写个Thread 出来。还有用MQ解决。自己写Thread,会用一点技术风险,比尽多线程,平时写的不多,容易出些问题。开发步骤 Spring异步注解@Async 使用很简单第一步:打开@A
2017-05-21 12:01:32 3775
原创 Redis分布式锁,开发实战
背景 项目的定时任务,出现重复执行的情况。由于解决时间非常紧急。打算用redis自带的分布式锁 SETNX key value设置键的值,仅当键不存在时 redis官方文档 SETNX key value将 key 的值设为 value ,当且仅当 key 不存在。若给定的 key 已经存在,则SETNX 不做任
2017-05-21 11:14:55 422
原创 Redis缓存注解
背景: 为了达到真正敏捷开发,开发中要简单化。Redis缓存,是开发中,决定高性能问题的,神器。项目应用: 上代码,上配置说明,Redis缓存注解的作用。Spring 自带redisTemplate 1.Redis缓存配置@Beanpublic CacheManagercacheManager(RedisTemplate
2017-05-21 10:58:10 1294
求mina通信框架相关资料
2015-11-09
java socketServer服务端可以把多个并成一个写
2015-11-05
TA创建的收藏夹 TA关注的收藏夹
TA关注的人