自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 为什么使用线程池而不使用new Thread(runnable).start();

1、每次new Thread,新建对象性能差2、缺乏统一管理,可能导致线程创建过多,死机等。3、缺乏更多功能,如:定时执行,定期执行,线程中断等。4种线程池:Java通过Executors提供四种线程池,分别为:1、newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需求,可以灵活回收空闲线程,若无可回收则新建线程。2、newFixedThreadPool创建一个定长线程池,可以控制线程最大并发数,超过的线程会在队列中等待。3、newScheduled.

2020-07-15 10:21:46 1942

转载 什么是乐观锁,什么是悲观锁

https://www.jianshu.com/p/d2ac26ca6525

2020-07-15 10:20:54 134

转载 如何保证消息队列是高可用的?如何保证消息不被重复消费?如何解决丢数据的问题?

如何保证消息队列是高可用的?使用集群的方式维持MQ的可高用性。如何保证消息不被重复消费?保证消息不被重复消费的关键是保证消息队列的幂等性,这个问题针对业务场景来答分以下几点:1.比如,你拿到这个消息做数据库的insert操作。那就容易了,给这个消息做一个唯一主键,那么就算出现重复消费的情况,就会导致主键冲突,避免数据库出现脏数据。2.再比如,你拿到这个消息做redis的set的操作,那就容易了,不用解决,因为你无论set几次结果都是一样的,set操作本来就算幂等操作。3.如果上面两种

2020-07-15 10:20:23 941

原创 将redis发布订阅模式用做消息队列和rabbitmq的区别?Redis禁用持久化功能的设置?想想为什么要使用MQ?使用了消息队列会有什么缺点?

将redis发布订阅模式用做消息队列和rabbitmq的区别:1·、可靠性redis :没有相应的机制保证消息的可靠消费,如果发布者发布一条消息,而没有对应的订阅者的话,这条消息将丢失,不会存在内存中;rabbitmq:具有消息消费确认机制,如果发布一条消息,还没有消费者消费该队列,那么这条消息将一直存放在队列中,直到有消费者消费了该条消息,以此可以保证消息的可靠消费,那么rabbitmq的消息是如何存储的呢?(后续更新);2、实时性redis:实时性高,redis作为高效的缓存服务器,

2020-07-15 10:17:22 1056

原创 如何利用Feign封装Rest请求?自定义feign配置与服务调用的安全验证?CUBA在不允许匿名访问的情况下,如何利用自定义Feign来发送REST请求CUBA系统的方法?

自定义feign配置与服务调用的安全验证https://www.jianshu.com/p/755b15ff0249CUBA在不允许匿名访问的情况下,如何利用自定义Feign来发送REST请求CUBA系统的方法首先利用REST请求获取token2.将获取的token放入header中进行request验证...

2020-07-15 10:10:50 213

原创 如何理解zuul、nginx、Ribbon的负载均衡 

zuul也有负载均衡的功能,它是针对外部请求做负载,那客户端ribbon的负载均衡又是怎么一回事?客户端ribbon的负载均衡,解决的是服务发起方(在Eureka注册的服务,及客户端)对被调用的服务的负载,比如我们查询商品服务要调用显示库存和商品明细服务,通过商品服务的接口将两个服务组合,可以减少外部应用的请求,比如手机App发起一次请求即可,可以节省网络带宽,也更省电。ribbon是对服务之间调用做负载,是服务之间的负载均衡,也是软负载均衡,zuul是可以对外部请求做负载均衡,对服务器的负载均衡也

2020-07-15 10:08:08 2335 3

原创 直观讲解--RPC调用和HTTP调用的区别?WebSocket与HTTP的关系

很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单地介绍一下两种形式的C/S架构,先说一下他们最本质的区别,就是RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来看的话,RPC当然是要更胜一筹啦!WebSocket与HTTP的关系相同点1. 都是一样基于TC.

2020-07-15 10:02:00 536

转载 多线程:保证三个线程依次按顺序执行?newSingleThreadExecutor!!!

newSingleThreadExecutor会创建一个只有一个线程的线程池来操作不限数量的队列,也就是把线程放进了一个队列中,队列我们都知道是FIFO的(LinkedBlockingQueue)。SingleThreadExecutor的工作线程只有一个,其他队列中的线程都处于休眠,也就是sleep状态,当这个worker线程做完事了,也就是run方法运行结束,就又从队列中拿出一个休眠线程(sleep)出来唤醒(notify),这样依次把队列中的所有线程处理完毕,这样并没有结束,如果线程池中没有待处理的线

2020-07-15 09:58:05 363

转载 精简java代码

https://mp.weixin.qq.com/s?__biz=MjM5MjAwODM4MA==&mid=2650744508&idx=1&sn=d2139b5f07987064ce171d77216fb9da&chksm=bea7576f89d0de7954f8323a47a6c0a61bec7c3afcabd7261eca6cd7924ead6f1609d368892d&mpshare=1&scene=1&srcid=0511nco90qcVTK

2020-07-15 09:55:35 383

转载 CountDownLatch与thread.join()的区别

今天学习CountDownLatch这个类,作用感觉和join很像,然后就百度了一下,看了他们之间的区别。所以在此记录一下。首先来看一下join,在当前线程中,如果调用某个thread的join方法,那么当前线程就会被阻塞,直到thread线程执行完毕,当前线程才能继续执行。join的原理是,不断的检查thread是否存活,如果存活,那么让当前线程一直wait,直到thread线程终止,线程的this.notifyAll 就会被调用。我们来看一下这个应用场景:假设现在公司有三个员工A,B,C,他们要

2020-07-15 09:46:46 125

原创 用IDEA第一次配置Hibernate出现的com.mysql.jdbc.Driver红字问题及无法利用映射自动生成表的问题

一、关键在hibernate.cfg.xml的配置中出现如下问题解决方法:将驱动JAR包手动添加到module的dependences依赖中或者添加到Libraries中File—>project structure—>ModulesFile—>project structure—>Libraries二、当在hibernate.cfg.xml的配置中设置<!-- 生成...

2018-05-08 22:57:22 2105

空空如也

空空如也

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

TA关注的人

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