编程面试题
-
并发与并行的区别?
并发指的是多个任务交替进行,并行则是指真正意义上的“同时进行”。 实际上,如果系统内只有一个CPU,使用多线程时,在真实系统环境下不能并行,只能通过切换时间片的方式交替进行,从而并...
-
什么是多线程的上下文切换?
即使是单核CPU也支持多线程执行代码,CPU通过给每个线程分配CPU时间片来实现这个机制。时间片是CPU分配给各个线程的时间,因为时间片非常短,所以CPU通过不停地切换线程执行,让...
-
zookeeper负载均衡和nginx负载均衡区别
zookeeper 不存在单点问题,zab机制保证单点故障可重新选举一个leader只负责服务的注册与发现,不负责转发,减少一次数据交换(消费方与服务方直接通信)需要自己实现相应的...
-
Zookeeper 和 Dubbo 的关系?
Zookeeper的作用: zookeeper用来注册服务和进行负载均衡,哪一个服务由哪一个机器来提供必需让调用者知道,简单来说就是ip地址和服务名称的对应关系。当然也可以通过硬编...
-
Zookeeper有哪几种部署模式?
zookeeper 有三种部署模式: 单机部署:一台集群上运行; 集群部署:多台集群运行; 伪集群部署:一台集群启动多个 zookeeper 实例运行 精品推荐 GPT-4 Plu...
-
Zookeeper怎么实现分布式锁?
有了zookeeper的一致性文件系统,锁的问题变得容易。锁服务可以分为两类,一个是保持独占,另一个是控制时序。 对于第一类,我们将zookeeper上的一个znode看作是一把锁...
-
Zookeeper有哪些节点类型?
PERSISTENT-持久节点 除非手动删除,否则节点一直存在于Zookeeper上 EPHEMERAL-临时节点 临时节点的生命周期与客户端会话绑定,一旦客户端会话失效(客户端与...
-
什么是服务熔断?什么是服务降级?
服务熔断: 熔断机制是应对 雪崩效应 的一种微服务 链路保护机制 。 当某个微服务不可用或者响应时间太长时,会进行服务降级,进而熔断该节点微服务的调用,快速返回“错误”的响应信息。...
-
说说Eureka的自我保护机制?
当一个服务未按时进行心跳续约时,在生产环境下,因为网络延迟等原因,此时就把服务剔除列表并不妥当,因为服务可能没有宕机。 Eureka就会把当前实例的注册信息保护起来,不予剔除。生产...
-
生成0-100的随机数
```py import random r1 = 100*random.random() r2 = random.choice(range(0,101)) r3 = random....
-
简述python引用计数机制
python垃圾回收主要以引用计数为主,标记-清除和分代清除为辅的机制,其中标记-清除和分代回收主要是为了处理循环引用的难题。 引用计数算法 当有1个变量保存了对象的引用时,此对象...
-
列举3条以上PEP8编码规范
1、顶级定义之间空两行,比如函数或者类定义。 2、方法定义、类定义与第一个方法之间,都应该空一行 3、三引号进行注释 4、使用Pycharm、Eclipse一般使用4个空格来缩进代...
-
python传参数是传值还是传址?
Python中函数参数是引用传递(注意不是值传递)。对于不可变类型(数值型、字符串、元组),因变量不能修改,所以运算不会影响到变量自身;而对于可变类型(列表字典)来说,函数体运算可...
-
正则匹配不是以4和7结尾的手机号
```py tels = ["13100001234","18912344321","10089","1880...