一、dubbo提供6种容错模式failover:默认模式。调用失败时,自动切换重试,可通过retries属性设置重试次数。适用于读操作,每次读数据都相同。failfast:快速失败模式。只调用一次,调用失败时立即报错。适用于写操作,不能重复写。failsafe:安全失败模式。只调用一次,调用失败时忽略失败的调用,记录日志。failback:失败恢复模式。在失败后自动恢复,后台记录失败的请求,定时重            
                
         
            
            
            
            文章目录键入网址再按下回车,后面究竟发生了什么?HTTP报文请求行状态行头部字段安全与幂等URI 的基本组成状态码HTTP的特点HTTP的优点和缺点 键入网址再按下回车,后面究竟发生了什么?Wireshark 里有捕获的数据包,如下图所示浏览器要用 HTTP 协议收发数据,首先要做的就是建立 TCP 连接。我们在地址栏里直接输入了 IP 地址“127.0.0.1”,而 Web 服务器的默认端口是            
                
         
            
            
            
            dubbo负载均衡策略以及自定义负载均衡 
 最近在用dubbo做服务治理,用到了负载均衡,看了下dubbo的源码,整理下。dubbo的负载均衡类图如下:LoadBalance是顶层接口,提供了唯一的接口方法select,如下:标注为@SPI的注解,只有标有@SPI注解的接口类才会查找扩展点的实现,dubbo依次从下面这三个路径读取扩展点文件:META-INF/dubbo/internal            
                
         
            
            
            
            16. 面试题1、Dubbo是什么?Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目。面试官问你如果这个都不清楚,那下面的就没必要问了。官网:http://dubbo.apache.org2、为什么要用Dubbo?因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高            
                
         
            
            
            
            1、问题的直接表现:org.apache.dubbo.rpc.RpcException: No provider available from registry localhost:9090 for service com.hxy.boot.ticket.articles.api.ArticleService on consumer 192.168.137.1 use dubbo version            
                
         
            
            
            
            Dubbo 缺省协议采用单一长连接和 NIO 异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。反之,Dubbo 缺省协议不适合传送大数据量的服务,比如传文件,传视频等,除非请求量很低。 Transporter: mina, netty, grizzySerialization: dubbo, hessian2, java, jsonDispat            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-11 07:44:21
                            
                                68阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
                Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案,是阿里巴巴的一个开源项目。    笔者认为阿里巴巴的Dubbo的user guide写得非常好,下面是笔者摘抄的一部分内容:    随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-13 10:24:31
                            
                                33阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            单注册中心消费原理整体RPC的消费原理:ReferenceCnofig
   		 ↓
     Protocol ----> Dubbo、injvm等
     	 ↓
      Invoker -----> DubboInvoker等
      	 ↓
    ProxyFactoy -----> Javassist、JDK动态代理
         ↓            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-12 13:45:14
                            
                                72阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            ES6 函数 默认参数值 (命名参数)
    ES6之前函数形参的默认值设置当前一个操作数值为false时,总会返回后一个值。对于函数的命名参数,前一个操作数的值为false时,总会返回后一个值,对于函数的命名参数,如果不显示传值,则其值默认为undefined,但是这个方法有缺陷当我们为timeout传入0时,即使这个值为合法的,boolean判断仍为fal            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-01 17:54:28
                            
                                128阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            在需要将配置文件的数据直接生成bean时,可以使用@ConfigurationProperties注解。例如配置文件中有变量数据如下spring.datasource.druid.maxActive=50
spring.datasource.druid.initialSize=1
spring.datasource.druid.minIdle=5
spring.datasource.druid.m            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-17 04:46:02
                            
                                307阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在上一章使uboot支持网卡传输文件后,但是每次启机时,环境变量都要变为默认值,需要重新设置ip,MAC地址才行,由于没有配置mtdparts命令,启动内核也不成功所以本章主要学习:1)修改环境变量默认值2)裁剪uboot  3)分区,设置mtdparts命令1.修改之前,先来理解下uboot的环境参数首先,uboot会去校验(CRC)存放环境变量的一段空间 ,若CRC有效则使用该空间里            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-01-10 16:26:49
                            
                                195阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一.Dubbo的常用属性配置1. check -启动时检查Dubbo 缺省会在启动时检查依赖的服务是否可用,不可用时会抛出异常,阻止 Spring 初始化完成,以便上线时,能及早发现问题,默认 check="true"。
可以通过 check="false" 关闭检查,比如,测试时,有些服务不关心,或者出现了循环依赖,必须有一方先启动。开启配置:
	消费者:
		1.	<dubbo:ref            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-01 06:33:16
                            
                                126阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、介绍 本文重点讲一讲propagation参数,propagation配置的就是一个事务的传播性问题。所谓事务传播性,就是被调用者的事务与调用者的事务之间的关系。举例说明。 
 //in A.java
Class A {
	@Transactional(propagation=propagation.REQUIRED)
	public void aMethod {
		B b = new B(            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-16 17:36:06
                            
                                136阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Java语言中有8种基本数据类型,基本情况汇总如下:Java中8种基本数据类型总结序号数据类型存储需求大小/位封装类默认值可表示数据范围1byte(位)1字节8位Byte0-128~1272short(短整数)2字节16位Short0-32768~327673int(整数)4字节32位Integer0-2147483648~21474836474long(长整数)8字节64位Long0-92233            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-09-19 08:58:53
                            
                                123阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            使用形式概览:unsafe_expr!default_expr或unsafe_expr!或(unsafe_expr)!default_expr或(unsa            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-04-15 08:17:02
                            
                                308阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            alert() 弹出个提示框 (确定)  
 confirm() 弹出个确认框 (确定,取消)  
 prompt() 弹出个输入框 让你输入东西 
 使用消息框  
 使用警告、提示和确认  
 可以使用警告、确认和提示消息框来获得用户的输入。这些消息框是 window 对象的接口方法。由于 window 对象位于对象层次的顶层,因此实际应用中不必使用这些消息框的全名(例如 "wind            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-05-16 10:31:43
                            
                                99阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            带默认值的参数函数中的参数可以传入默认值,当有实参传入的时候就赋值实参,当没有传递实参的时候或者指定传递的参数为undefined时,形参就会使用默认值。如:function getNum(num1, num2 = 5) {
    return num1 + num2;
}
console.log(getNum(1)); // 6
console.log(getNum(1, 1)); // 2            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-11 14:02:54
                            
                                213阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1 默认值的作用域python中一切皆对象,python会把函数的默认值放在属性中,这个属性就伴随着这个函数对象的整个生命周期也就是说,函数定义完之后,其默认值也就只生成一次,只要函数存在,其缺省值就不变。函数的缺省值和函数是否被调用没有关系,只和函数的定义有关系,函数的缺省值是在定义函数的时候一并定义的,同一个函数对象在内存中(堆中)只有一份,缺省值也伴随着只有一份,其实就是函数对象的一个属性。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-24 20:36:12
                            
                                91阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Java默认值问题基本数据类型的默认值:作为类成员的基本数据类型有默认值;boolean 默认值是false ; char 默认值是'\u0000'; 其他类型默认值都是0局部变量的基本类型可能是任意值。创建一个数字数组时,所有元素都初始化为0;boolean数组的元素会初始化为false;对象数组的元素则初始化为一个特殊值null,表示这些元素(还)未存放任何对象。            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-06-26 18:48:00
                            
                                442阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            目录包装类包装类的产生JDK中的包装类——以下8种包装类的使用包装类与基本类型的不同点泛型引入泛型——编译阶段检查类型是否一致的手段。 若泛型类中存在多个类型参数,成员变量的类型不一定一致。 泛型方法泛型声明在接口中通配符 ?泛型上限泛型下限类型擦除包装类包装类:就是把8大基本类型封装到类之中。 包装类的产生a. Object类可以接收所有引用数据类型(数组,类,接口            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-08-22 21:02:36
                            
                                167阅读
                            
                                                                             
                 
                
                                
                    