作者|林阳、朱超、识瀚,均来自美团平台/搜索与NLP部/搜索技术部。不同的开发语言适合不同的领域,例如Python适合做数据分析,C++适合做系统的底层开发,假如它们需要用到相同功能的基础组件,组件使用多种语言分别开发的话,不仅增加了开发和维护成本,而且不能确保多种语言间在处理效果上是一致的。本文以
概览本文会通过对弱引用的定义讲起,然后通过案例的使用一步一步的深入源码进行分析其原理,从而让读者深刻的理解什么是弱引用,如何使用弱引用,什么场景下会使用弱引用,弱引用可以解决什么样的问题,以及它的源码实现是怎样的,其中会涉及的内存溢出,垃圾回收原理作用:jdk官网解释:弱引用主要应用在不阻止它的ke
概念篇RPC是什么?RPC称远程过程调用(RemoteProcedureCall),用于解决分布式系统中服务之间的调用问题。通俗地讲,就是开发者能够像调用本地方法一样调用远程的服务。所以,RPC的作用主要体现在这两个方面:屏蔽远程调用跟本地调用的区别,让我们感觉就是调用项目内的方法;隐藏底层网络通信
背景大家好,这篇文章给大家介绍一个非常经典的去大厂面试经常被问的一个问题,就是瞬时高并发抢购问题。通常来说,大厂开发的系统经常会遇到一些类似电商秒杀抢购、景点门票高并发抢购、特殊商品(比如口罩)高并发抢购、类似12306的高并发抢票类的系统。所以经常会问这一类高并发抢购类的问题,这个时候,小伙伴们如
Python可变数据类型和不可变数据类型是一个基础而且重要的考点。简单地说:这里的可变和不可变是指当变量改变的时候,数据的地址是否会改变!可变数据类型:如果改变了变量的值,相当于是新建了一个对象(即地址会被改变)。可变数据类型:变量的值发生变化,但是对象的地址不会改变。不可变数据类型:元组,字符串,
测试需求介绍通常,在我们的项目中,我们的接口测试需求一般都是构造不同的请求数据,然后发送请求到接口,拿到接口返回后,对返回的字段进行提取和校验,最后将结果存放在excel表格中方便查阅。接口一般是http或https请求,发送的结构一般是jsonbody或json结合一些文件附件,请求的返回结果都
微服务应用程序可以以多种方式运行,每种方式都有不同的权衡和成本结构。适用于跨越几个服务的小型应用程序可能不足以用于大型系统。从简单到复杂,以下是运行微服务的五种方式:单机多进程:购买或租用服务器并将微服务作为进程运行。多台机器,多进程:显而易见的下一步是添加更多服务器并分配负载,提供更高的可扩展性和