上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 55 下一页
摘要: 什么是幂等性? 一般在服务调用时,读服务如果调用失败了,会自动按配置次数转移到别的服务上去请求。而写服务就不能重复请求,如果因为超时或者网络故障等原因被调用服务并没有返回成功的响应,服务调用方就认为是失败了,但很有可能的是已经成功了,如果继续重复请求写服务,如转账类的服务,可能会造成严重的后果。所以 阅读全文
posted @ 2018-10-01 13:33 如.若 阅读(393) 评论(0) 推荐(0) 编辑
摘要: 分布式事务 分布式事务场景如何设计系统架构及解决数据一致性问题,个人理解最终方案把握以下原则就可以了,那就是:大事务=小事务(原子事务)+异步(消息通知),解决分布式事务的最好办法其实就是不考虑分布式事务,将一个大的业务进行拆分,整个大的业务流程,转化成若干个小的业务流程,然后通过设计补偿流程从而考 阅读全文
posted @ 2018-10-01 13:24 如.若 阅读(15145) 评论(3) 推荐(0) 编辑
摘要: 动态代理在我们工作当中应用相当广泛,如Srping AOP就是动态代理的在开源框架的比较出名的应用。动态代理有两种试:一是通过JDK自带的API实现动态代理,二是通过别的字节码框架实现,如cglib。需要注意的是JDK只能针对接口实现动态代理,不能代理普通类,使用具有局限性。而cglib可以代理接口 阅读全文
posted @ 2018-10-01 00:27 如.若 阅读(719) 评论(0) 推荐(0) 编辑
摘要: 代理模式 代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象.这样做的好处是:可以在目标对象实现的基础上,增强额外的功能操作,即扩展目标对象的功能. 这里使用到编程中的一个思想:不要随意去修改别人已经写好的代码或者方法,如果需改修改,可以通过代理的方式来扩展 阅读全文
posted @ 2018-10-01 00:09 如.若 阅读(232) 评论(0) 推荐(0) 编辑
摘要: 使用 Spring Boot 会涉及到各种各样的配置,如开发、测试、线上就至少 3 套配置信息了。Spring Boot 可以轻松的帮助我们使用相同的代码就能使开发、测试、线上环境使用不同的配置。 在 Spring Boot 里面,可以使用以下几种方式来加载配置。本章内容基于 Spring Boot 阅读全文
posted @ 2018-09-30 23:39 如.若 阅读(504) 评论(0) 推荐(0) 编辑
摘要: Sun HotSpot VM,是JDK和Open JDK中自带的虚拟机,也是目前使用范围最广的Java虚拟机。 JVM内存分布 程序计数器:是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。程序中的分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器完成。由于多线程是 阅读全文
posted @ 2018-09-30 22:35 如.若 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 1、轮询(默认) 应用程序轮流来响应请求 2、最少连接(least-conn) 请求被分配到活动连接最少的服务器上 3、ip-hash 通过一个hash函数决定哪个服务器来响应用户的请求(依据客户端的请求ip) 4、权重配置(weight) 5、手动宕机与备份主机(down,backup) 6、fa 阅读全文
posted @ 2018-09-28 11:18 如.若 阅读(270) 评论(0) 推荐(0) 编辑
摘要: 1、原理 布隆过滤器的巨大用处就是,能够迅速判断一个元素是否在一个集合中。因此他有如下三个使用场景: 网页爬虫对URL的去重,避免爬取相同的URL地址 反垃圾邮件,从数十亿个垃圾邮件列表中判断某邮箱是否垃圾邮箱(同理,垃圾短信) 缓存穿透,将所有可能存在的数据缓存放到布隆过滤器中,当黑客访问不存在的 阅读全文
posted @ 2018-09-27 12:57 如.若 阅读(24204) 评论(1) 推荐(6) 编辑
摘要: 说明 自我保护背景 首先对Eureka注册中心需要了解的是Eureka各个节点都是平等的,没有ZK中角色的概念, 即使N-1个节点挂掉也不会影响其他节点的正常运行。 默认情况下,如果Eureka Server在一定时间内(默认90秒)没有接收到某个微服务实例的心跳,Eureka Server将会移除 阅读全文
posted @ 2018-09-27 11:55 如.若 阅读(6319) 评论(1) 推荐(0) 编辑
摘要: 前言 设计一个缓存系统,不得不要考虑的问题就是:缓存穿透、缓存击穿与失效时的雪崩效应。 缓存穿透 缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,并且出于容错考虑,如果从存储层查不到数据则不写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。在流量大时, 阅读全文
posted @ 2018-09-27 10:38 如.若 阅读(369) 评论(0) 推荐(0) 编辑
上一页 1 ··· 13 14 15 16 17 18 19 20 21 ··· 55 下一页