- Java SE高频面试题
_fengling
java面试题java
JavaSE面试题编程题:写一个Singleton(单例模式)示例要点几种常见的形式如下代码的运行结果运行步骤小结类初始化和实例初始化等1.类初始化过程2.实例初始化过程3.方法的重写此代码的执行结果方法的参数传递机制考点图解结果递归与迭代成员变量和局部变量考点局部变量与成员变量的区别当局部变量与xx变量重名时,如何区分结果编程题:写一个Singleton(单例模式)示例Singleton:在Ja
- Sublime Text 4 4126 可用
୧⍢⃝୨ LonelyCoder
SublimeTextsublimetext编辑器
网上找的,做个记录,最新的4126可用!!妥妥的—–BEGINLICENSE—–MifengUserSingleUserLicenseEA7E-1184812C0DAA9CD6BE825B5FF9356921750523AEDF59D3FA3BD6C96F8D338663F1CCCEA1C25BE4D25B1C4CC5110C20E5246CC42D232C83BC99CCC420E32890CB
- Java:函数式(Functional)接口
我是小水水啊
Javajava开发语言
文章目录1什么是函数式接口2如何理解函数式接口3举例Java内置函数式接口1之前的函数式接口2四大核心函数式接口3.4.3其它接口内置接口代码演示5练习1什么是函数式接口只包含一个抽象方法(SingleAbstractMethod,简称SAM)的接口,称为函数式接口。当然该接口可以包含其他非抽象方法。你可以通过Lambda表达式来创建该接口的对象。(若Lambda表达式抛出一个受检异常(即:非运行
- @Scope(“prototype“)
HYUJKI
java原型模式java开发语言单例模式
@Scope("prototype")是Spring框架中用于定义Bean作用域的注解之一,它的主要作用是将一个Bean定义成原型作用域(PrototypeScope)。在原型作用域下,每次从Spring容器中请求这个Bean时,都会创建一个新的实例。@Scope("prototype")的作用默认作用域:单例(SingletonScope)在Spring中,Bean的默认作用域是单例(@Scop
- 21天学通C++——9.6.4使用构造函数进行类型转换
不想睡觉_
QT客户端学习路线c++开发语言
类中存在重载构造函数,即编译器可能默认调用构造函数,进行隐式转换伪代码:classMyClass{intage;public:MyClass(inthumanAge):age(humanAge){}};voidDoSomething(MyClassperson){return;}intmain(){MyClassman(10);DoSomething(10);}解释:即在DoSomething中编
- SpringCloud微服务-OpenFeign服务接口调用
TwitchR
springcloud微服务java
一、OpenFeign简介官网:https://cloud.spring.io/spring-cloud-static/Hoxton.SR1/reference/htmlsingle/#spring-cloud-openfeignGitHub:https://github.com/spring-cloud/spring-cloud-openfeignFeign是一个声明式WebService客户端
- C++简单实现一个日志类
第六帅
编程语言C++面向对象日志
C++没有貌似自带的日志类,如果仅仅使用cout输出调试信息的话比较凌乱,所以我尝试自己实现了一个Logger类,主要考虑实现以下功能:日志等级:参考python的logger类,我设置了四个日志等级,从低到高依次为debug,info,warning,error,这样的话我想输出一条debug信息就可以这样写logger.debug("something..."),(关于日志等级是什么意思可以参
- Android 后台线程
氤氲息
安卓原生学习android
ExecutorServiceexecutor=Executors.newSingleThreadExecutor();executor.execute(newRunnable(){@Overridepublicvoidrun(){Bitmapbitmap=getBitmapFromUrl(url);//网络请求runOnUiThread(newRunnable(){@Overridepublic
- Spring 开发必备:深入解析 Spring Bean 的六大作用域
码农技术栈
spring后端微服务springcloudspringboot
SpringBean一共有六种作用域,我们可以将它们比作是不同场景下的“服务助手”。1.单例作用域(Singleton):•就像餐厅里只有一个“领班助手”,无论顾客多少次呼唤,来的都是同一位助手。•在Spring容器中,单例作用域的Bean也只会有一个实例,无论在哪里获取,都是同一个对象。•适用于无状态的Bean,如数据库连接池等。2.原型作用域(Prototype):•就像餐厅里每次顾客呼唤都会
- 【设计模式】6大设计原则和23种设计模式
藓类少女
设计模式python
设计原则是更高层次的思想指导,强调代码的可维护性、稳定性和灵活性。设计模式是实现设计原则的具体方法和工具,解决特定场景的问题。I、6大设计原则单一职责原则(SRP,SingleResponsibilityPrinciple)每个类应该只有一个引起变化的原因,职责应该保持单一。目标:高内聚,低耦合。开闭原则(OCP,Open/ClosedPrinciple)软件实体(类、模块、函数等)应该对扩展开放
- unity支持python吗_在C#或Unity中执行Python脚本
weixin_39776817
unity支持python吗
IusedKerasinPythontodesignaneuralnetworkcalculatingsomethinglikeanoise-reducing-function.Itworksprettygoodsofar,andnowIwanttousethisnetworktocleanthedatainsideaUnity-Projectofmine.Iwouldnothavethought
- 设计模式01:创建型设计模式之单例、简单工厂的使用情景及其基础Demo
我是苏苏
设计模式java开发语言
一、单例模式1.情景连接字符串管理2.好处代码简洁:可全局访问连接字符串。性能优化:一个程序一个连接实例,避免反复创建对象(连接)和销毁对象(连接)。线程安全:连接对象不会被重复创建,从而避免并发冲突。3.DemousingSystem;usingSqlSugar;publicclassSqlSugarSingleton{//使用Lazy来保证延迟初始化和线程安全//Lazy通过内部的机制确保在多
- JavaScript系列(29)--设计模式详解
陳沉辰陈
JavaScriptjavascript设计模式开发语言
JavaScript设计模式详解️今天,让我们深入探讨JavaScript中的设计模式。设计模式是软件开发中的最佳实践,它们可以帮助我们写出更加可维护和可扩展的代码。设计模式基础小知识:设计模式是软件开发中常见问题的典型解决方案。它们不是具体的代码片段,而是解决特定问题的通用模板。创建型模式//1.单例模式classSingleton{privatestaticinstance:Singleton
- 传统数据湖和数据仓库的“中心化瓶颈”
PersistDZ
数据架构数据仓库数据湖中心化
传统数据湖和数据仓库的**“中心化瓶颈”**,主要是由于其架构设计和治理模式的局限性,无法有效应对现代企业中数据规模的快速增长和组织复杂性。以下是具体表现:1.单点瓶颈(SinglePointBottleneck)传统数据湖/仓库通常由中心化的数据平台团队负责,所有的数据集成、清洗、建模和治理工作都集中在这一个团队中,导致:工作负载过重:数据平台团队需要处理所有领域的数据需求,响应速度慢。扩展性差
- Java中private和static同时使用会出现什么情况?
乐悠小码
java开发语言jvm
引言这几天在学习单例设计模式(后面会出一期包含23种设计模式介绍的博客)的时候发现了一段代码privatestaticSinglesingle;当时我就在想,这个private和static一起用的话外界想要访问这个成员变量到底是能不能访问到呢?当时在学习Java基础的时候也没有仔细研究过这里,下面就详细的来解释一下,把这块空缺的知识点补上!private的作用private作为权限修饰符,用来声
- Android面试题
学海无涯乐作舟
客户端面试android
简单android基础对于面向对象的六大基本原则了解多少单一职责(SingleResponsibilityPrinciple):一个类只做一件事,可读性提高里式替换原则(LiskovSubstitutionPrinciple):依赖继承和多态,就是能用父类的地方就可以用子类替换,用子类的但不能用父类。依赖倒置原则(DependenceInversionPrinciple):依赖抽象,就是模块之间的
- 工作中的最佳实践记录
避免重复判断badif(currentTheme?.id&¤tTheme?.id==='xxx'){//dosomething}goodif(currentTheme?.id&¤tTheme.id==='xxx'){//dosomething}currentTheme.id在前面已经使用?.进行了判断,后面没必要再次判断一遍tip:使用?.操作符的目的是为了安全地访问cur
- first parameter of redis.call/redis.pcall must be a single literal string
杨过姑父
redis数据库缓存
使用redission分布式锁的时候报错ERRbadluascriptforrediscluster,firstparameterofredis.call/redis.pcallmustbeasingleliteralstringorg.redisson.client.RedisException:ERRbadluascriptforrediscluster,firstparameterofred
- Manjaro /opt/google/chrome error
熊明才
chrome前端
mingcai@Manjaroin/opt/google/chrome[22:34:02]$./google-chrome[62841:62841:0516/223407.119870:ERROR:process_singleton_posix.cc(353)]其他计算机(mingcai-systemproductname)的另一个GoogleChrome进程(2931)好像正在使用此个人资料。C
- C++单例模式实现
huaichekk
c++单例模式开发语言
单例模式(SingletonPattern)是软件设计模式中的一种,用于确保一个类只有一个实例,并提供一个全局访问点来获取这个实例。一、初始版本(手动创建释放)一个类只有一个实例的实现方法:隐藏构造函数,是外界无法创造对象通过类静态成员函数getInstance返回静态局部对象指针(指向堆空间的指针数据成员),确保对象生命周期和程序一致,并且在程序中唯一使用destory释放堆空间#include
- Java设计模式之单例模式
倚-天-照-海
设计模式java设计模式单例模式
单例模式(SingletonPattern):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。单例模式是一种对象创建型模式。单例模式有三个要点:一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。对单例的实现可以分为两大类——懒汉式和饿汉式,他们的区别在于:懒汉式:指全局的单例实例在第一次被使用时构建
- 单例模式的几种实现方式
dlwlrma-IU
LeetCode刷题企业面试真题java开发语言
单例模式单例模式是一种常见的设计模式,而关于单例模式的实现又有以下几种实现方式:饿汉单例,懒汉单例,双重校验锁,静态内部类等实现饿汉单例该懒汉单例是线程安全的,但是存在资源浪费的情况,在程序启动时就会创建该类的实例。/***@author:dlwlrma*@data2025年01月15日16:34*@Description单例模式之懒汉单例*/publicclassSingleton{//私有静态
- JAVA之单例模式
程序研
java单例模式
单例模式(SingletonPattern)是一种设计模式,用于确保一个类只有一个实例,并提供一个全局访问点来获取该实例。在软件设计中,单例模式常用于控制对资源的访问,例如数据库连接、线程池等。以下是单例模式的详细介绍及JAVA代码实现。一、单例模式的优点控制资源的使用,避免资源的多重占用。提供全局访问点,方便资源的管理。系统中只有一个实例,减少内存开销。避免对资源的多重占用,提高系统的性能。二、
- C++单例模式的设计
Alvin's Tech Blog
C/C++学习单例模式c++开发语言
单例模式(SingletonPattern)是一种设计模式,用于确保一个类只有一个实例,并提供一个全局访问点来访问该实例。在C++中,单例模式通常用于管理全局资源或共享状态。以下是C++中实现单例模式的几种常见方式:懒汉式(LazyInitialization)懒汉式单例在第一次使用时才创建实例。非线程安全版本:classSingleton{public:staticSingleton&getIn
- Python单例模式中的问题
后端python
一、装饰器形式的单例模式首先先给出Python中装饰器的单例模式:python代码解读复制代码importthreadingdefsingleton(cls):_instances={}_lock=threading.Lock()defget_instance(*args,**kwargs):ifclsnotin_instances:with_lock:ifclsnotin_instances:_
- maven-assembly-plugin 打包实例
带着二娃去遛弯
1.先在pom.xml文件中添加assembly打包插件org.apache.maven.pluginsmaven-assembly-plugin2.6assembly/assembly.xmlmake-assemblypackagesingle说明:1.需要修改的可能就是descriptors标签下面的打包配置文件目录,指定assembly.xml的路径.2.可以添加多个打包配置文件,进行多种形
- 单线程执行器(`SingleThreadedExecutor`)来处理节点的任务
课堂随想
moveit2机器人
intmain(intargc,char**argv){rclcpp::init(argc,argv);rclcpp::NodeOptionsnode_options;node_options.automatically_declare_parameters_from_overrides(true);automove_group_node=rclcpp::Node::make_shared("mo
- 2019-03-31
梨筱草
图片发自AppIfyouwanttochangesomething,startwithbabysteps.Takeasmallaction-anyaction-andgrowfromthere.如果你想要做出改变,就从第一步开始。做出一点小的行动,任何一种行动都行,然后就从这里开始。Ifyouwanttochangesomething,startwithbabysteps.Takeasmallac
- 互联网大咖分享:三个日常生活细节决定了你能否成为一名产品经理
三不小青年
生活中的细节和习惯决定了你将来适合从事什么类型的职业乔布斯乔布斯说:“生活中的点点滴滴,在将来的某一天会不自觉的串联起来”,这句话对产品经理这个职业来说最适合不过了。互联网大咖在做分享腾讯高级产品经理在馒头商学院分享,行业型产品经理要具备三点项目思维。实际上,这需要我们在日常生活中都要养成这样的习惯。1项目化管理你的工作时间时间观念一定要强,可以按照李开复的时间管理法则,把事情按照“重要,不重要,
- 颜汝老师2.6号直播@命硬私董会
酸梅子616
一层:用番茄钟;一次只做一件事;做到有结果再去做另一件事专注第二层:石墨文档全屏功能;让你完全忘记时间;抖音就是让你经常偷走时间的软件专注第三层:当别人没给你设置倒计时,你要给自己设置倒计时;有意识去给自己倒计时;乔布斯假如今天是我生命中的最后一天我要如何对待这一天)人有两种状态:一种是懒洋洋状态;另一种是灰大狼专注记者思维;随时随地进入专注的状态的那个人生疑问是什么,去训练自己,去给生活做结合;
- Linux的Initrd机制
被触发
linux
Linux 的 initrd 技术是一个非常普遍使用的机制,linux2.6 内核的 initrd 的文件格式由原来的文件系统镜像文件转变成了 cpio 格式,变化不仅反映在文件格式上, linux 内核对这两种格式的 initrd 的处理有着截然的不同。本文首先介绍了什么是 initrd 技术,然后分别介绍了 Linux2.4 内核和 2.6 内核的 initrd 的处理流程。最后通过对 Lin
- maven本地仓库路径修改
bitcarter
maven
默认maven本地仓库路径:C:\Users\Administrator\.m2
修改maven本地仓库路径方法:
1.打开E:\maven\apache-maven-2.2.1\conf\settings.xml
2.找到
 
- XSD和XML中的命名空间
darrenzhu
xmlxsdschemanamespace命名空间
http://www.360doc.com/content/12/0418/10/9437165_204585479.shtml
http://blog.csdn.net/wanghuan203/article/details/9203621
http://blog.csdn.net/wanghuan203/article/details/9204337
http://www.cn
- Java 求素数运算
周凡杨
java算法素数
网络上对求素数之解数不胜数,我在此总结归纳一下,同时对一些编码,加以改进,效率有成倍热提高。
第一种:
原理: 6N(+-)1法 任何一个自然数,总可以表示成为如下的形式之一: 6N,6N+1,6N+2,6N+3,6N+4,6N+5 (N=0,1,2,…)
- java 单例模式
g21121
java
想必单例模式大家都不会陌生,有如下两种方式来实现单例模式:
class Singleton {
private static Singleton instance=new Singleton();
private Singleton(){}
static Singleton getInstance() {
return instance;
}
- Linux下Mysql源码安装
510888780
mysql
1.假设已经有mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz
(1)创建mysql的安装目录及数据库存放目录
解压缩下载的源码包,目录结构,特殊指定的目录除外:
- 32位和64位操作系统
墙头上一根草
32位和64位操作系统
32位和64位操作系统是指:CPU一次处理数据的能力是32位还是64位。现在市场上的CPU一般都是64位的,但是这些CPU并不是真正意义上的64 位CPU,里面依然保留了大部分32位的技术,只是进行了部分64位的改进。32位和64位的区别还涉及了内存的寻址方面,32位系统的最大寻址空间是2 的32次方= 4294967296(bit)= 4(GB)左右,而64位系统的最大寻址空间的寻址空间则达到了
- 我的spring学习笔记10-轻量级_Spring框架
aijuans
Spring 3
一、问题提问:
→ 请简单介绍一下什么是轻量级?
轻量级(Leightweight)是相对于一些重量级的容器来说的,比如Spring的核心是一个轻量级的容器,Spring的核心包在文件容量上只有不到1M大小,使用Spring核心包所需要的资源也是很少的,您甚至可以在小型设备中使用Spring。
 
- mongodb 环境搭建及简单CURD
antlove
WebInstallcurdNoSQLmongo
一 搭建mongodb环境
1. 在mongo官网下载mongodb
2. 在本地创建目录 "D:\Program Files\mongodb-win32-i386-2.6.4\data\db"
3. 运行mongodb服务 [mongod.exe --dbpath "D:\Program Files\mongodb-win32-i386-2.6.4\data\
- 数据字典和动态视图
百合不是茶
oracle数据字典动态视图系统和对象权限
数据字典(data dictionary)是 Oracle 数据库的一个重要组成部分,这是一组用于记录数据库信息的只读(read-only)表。随着数据库的启动而启动,数据库关闭时数据字典也关闭 数据字典中包含
数据库中所有方案对象(schema object)的定义(包括表,视图,索引,簇,同义词,序列,过程,函数,包,触发器等等)
数据库为一
- 多线程编程一般规则
bijian1013
javathread多线程java多线程
如果两个工两个以上的线程都修改一个对象,那么把执行修改的方法定义为被同步的,如果对象更新影响到只读方法,那么只读方法也要定义成同步的。
不要滥用同步。如果在一个对象内的不同的方法访问的不是同一个数据,就不要将方法设置为synchronized的。
- 将文件或目录拷贝到另一个Linux系统的命令scp
bijian1013
linuxunixscp
一.功能说明 scp就是security copy,用于将文件或者目录从一个Linux系统拷贝到另一个Linux系统下。scp传输数据用的是SSH协议,保证了数据传输的安全,其格式如下: scp 远程用户名@IP地址:文件的绝对路径
- 【持久化框架MyBatis3五】MyBatis3一对多关联查询
bit1129
Mybatis3
以教员和课程为例介绍一对多关联关系,在这里认为一个教员可以叫多门课程,而一门课程只有1个教员教,这种关系在实际中不太常见,通过教员和课程是多对多的关系。
示例数据:
地址表:
CREATE TABLE ADDRESSES
(
ADDR_ID INT(11) NOT NULL AUTO_INCREMENT,
STREET VAR
- cookie状态判断引发的查找问题
bitcarter
formcgi
先说一下我们的业务背景:
1.前台将图片和文本通过form表单提交到后台,图片我们都做了base64的编码,并且前台图片进行了压缩
2.form中action是一个cgi服务
3.后台cgi服务同时供PC,H5,APP
4.后台cgi中调用公共的cookie状态判断方法(公共的,大家都用,几年了没有问题)
问题:(折腾两天。。。。)
1.PC端cgi服务正常调用,cookie判断没
- 通过Nginx,Tomcat访问日志(access log)记录请求耗时
ronin47
一、Nginx通过$upstream_response_time $request_time统计请求和后台服务响应时间
nginx.conf使用配置方式:
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$status $body_bytes_sent "$http_r
- java-67- n个骰子的点数。 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
bylijinnan
java
public class ProbabilityOfDice {
/**
* Q67 n个骰子的点数
* 把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。
* 在以下求解过程中,我们把骰子看作是有序的。
* 例如当n=2时,我们认为(1,2)和(2,1)是两种不同的情况
*/
private stati
- 看别人的博客,觉得心情很好
Cb123456
博客心情
以为写博客,就是总结,就和日记一样吧,同时也在督促自己。今天看了好长时间博客:
职业规划:
http://www.iteye.com/blogs/subjects/zhiyeguihua
android学习:
1.http://byandby.i
- [JWFD开源工作流]尝试用原生代码引擎实现循环反馈拓扑分析
comsci
工作流
我们已经不满足于仅仅跳跃一次,通过对引擎的升级,今天我测试了一下循环反馈模式,大概跑了200圈,引擎报一个溢出错误
在一个流程图的结束节点中嵌入一段方程,每次引擎运行到这个节点的时候,通过实时编译器GM模块,计算这个方程,计算结果与预设值进行比较,符合条件则跳跃到开始节点,继续新一轮拓扑分析,直到遇到
- JS常用的事件及方法
cwqcwqmax9
js
事件 描述
onactivate 当对象设置为活动元素时触发。
onafterupdate 当成功更新数据源对象中的关联对象后在数据绑定对象上触发。
onbeforeactivate 对象要被设置为当前元素前立即触发。
onbeforecut 当选中区从文档中删除之前在源对象触发。
onbeforedeactivate 在 activeElement 从当前对象变为父文档其它对象之前立即
- 正则表达式验证日期格式
dashuaifu
正则表达式IT其它java其它
正则表达式验证日期格式
function isDate(d){
var v = d.match(/^(\d{4})-(\d{1,2})-(\d{1,2})$/i);
if(!v) {
this.focus();
return false;
}
}
<input value="2000-8-8" onblu
- Yii CModel.rules() 方法 、validate预定义完整列表、以及说说验证
dcj3sjt126com
yii
public array rules () {return} array 要调用 validate() 时应用的有效性规则。 返回属性的有效性规则。声明验证规则,应重写此方法。 每个规则是数组具有以下结构:array('attribute list', 'validator name', 'on'=>'scenario name', ...validation
- UITextAttributeTextColor = deprecated in iOS 7.0
dcj3sjt126com
ios
In this lesson we used the key "UITextAttributeTextColor" to change the color of the UINavigationBar appearance to white. This prompts a warning "first deprecated in iOS 7.0."
Ins
- 判断一个数是质数的几种方法
EmmaZhao
Mathpython
质数也叫素数,是只能被1和它本身整除的正整数,最小的质数是2,目前发现的最大的质数是p=2^57885161-1【注1】。
判断一个数是质数的最简单的方法如下:
def isPrime1(n):
for i in range(2, n):
if n % i == 0:
return False
return True
但是在上面的方法中有一些冗余的计算,所以
- SpringSecurity工作原理小解读
坏我一锅粥
SpringSecurity
SecurityContextPersistenceFilter
ConcurrentSessionFilter
WebAsyncManagerIntegrationFilter
HeaderWriterFilter
CsrfFilter
LogoutFilter
Use
- JS实现自适应宽度的Tag切换
ini
JavaScripthtmlWebcsshtml5
效果体验:http://hovertree.com/texiao/js/3.htm
该效果使用纯JavaScript代码,实现TAB页切换效果,TAB标签根据内容自适应宽度,点击TAB标签切换内容页。
HTML文件代码:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
- Hbase Rest API : 数据查询
kane_xie
RESThbase
hbase(hadoop)是用java编写的,有些语言(例如python)能够对它提供良好的支持,但也有很多语言使用起来并不是那么方便,比如c#只能通过thrift访问。Rest就能很好的解决这个问题。Hbase的org.apache.hadoop.hbase.rest包提供了rest接口,它内嵌了jetty作为servlet容器。
启动命令:./bin/hbase rest s
- JQuery实现鼠标拖动元素移动位置(源码+注释)
明子健
jqueryjs源码拖动鼠标
欢迎讨论指正!
print.html代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv=Content-Type content="text/html;charset=utf-8">
<title>发票打印</title>
&l
- Postgresql 连表更新字段语法 update
qifeifei
PostgreSQL
下面这段sql本来目的是想更新条件下的数据,可是这段sql却更新了整个表的数据。sql如下:
UPDATE tops_visa.visa_order
SET op_audit_abort_pass_date = now()
FROM
tops_visa.visa_order as t1
INNER JOIN tops_visa.visa_visitor as t2
ON t1.
- 将redis,memcache结合使用的方案?
tcrct
rediscache
公司架构上使用了阿里云的服务,由于阿里的kvstore收费相当高,打算自建,自建后就需要自己维护,所以就有了一个想法,针对kvstore(redis)及ocs(memcache)的特点,想自己开发一个cache层,将需要用到list,set,map等redis方法的继续使用redis来完成,将整条记录放在memcache下,即findbyid,save等时就memcache,其它就对应使用redi
- 开发中遇到的诡异的bug
wudixiaotie
bug
今天我们服务器组遇到个问题:
我们的服务是从Kafka里面取出数据,然后把offset存储到ssdb中,每个topic和partition都对应ssdb中不同的key,服务启动之后,每次kafka数据更新我们这边收到消息,然后存储之后就发现ssdb的值偶尔是-2,这就奇怪了,最开始我们是在代码中打印存储的日志,发现没什么问题,后来去查看ssdb的日志,才发现里面每次set的时候都会对同一个key