小哲博客
当前位置:小哲博客 > 技术教程 > 正文

编程中的读写文件和数据库

经常见到有人把配置写到文件中,这个做法用于保存配置,确实比较简单,小哲我也经常这么干过,但久而久之,会养成习惯,不管是啥信息,只要想保存的信息就写到文件里面,有一些编程语言还专门给配置文件开放了函数,使用起来很容易,但如果当自己的代码足够多,甚至别人使用的时候,就会出现一些问题

最容易遇到的问题就是多线程,多个线程想往同一个配置文件中写内容,比如小哲最近在做的工程,多个线程都要写日志,可能线程少写的很快,基本不会遇到错误,但是当运气不好的时候,总会有两个线程在同一时间写,这时候就会导致程序出现一些问题

可能加上锁就可以解决问题,但说实话,有这个时间去改代码加锁,其实我觉得不如直接改成数据库是比较好的,如果是特别多的数据,那Mysql的成熟稳定就不多说了,如果是没有太多的数据,sqlite也是一个不错的选择,不用配置系统环境,直接就可以写,遇到抢占的情况,还会比较高效率的等待(反正小哲我自己写的文件锁,CPU感觉占用比sqlite的等待高,不知道为啥)

现在养成习惯了,简单的配置文件我也写到数据库里面,总觉得自己写的代码bug是比较多的,不如人家这些成熟的公司的代码,用数据库还是比用文件心理更踏实一些,事实证明,软件也确实稳定了不少

小哲博客所有内容已通过【鲸版权】登记,未经授权禁止转载!谢谢合作

推荐相关阅读

编程是一门语言,但和英语又分不开

之前经常有人过来问我关于编程的一些事情,一般都是关于入门学习哪个语言的,所以今天就想聊天我的一些理解,不管是编译型语言还是解释型语言,我的总结是,编程是一门语言,但和英语分不开...

招代理:用C#写了一个优化工具

花了近5个月的时间,总算是写完了这个工具,说实话,以前上学的时候没学过C#,再加上写Python和java多了之后,会养成好多小习惯,感觉自己离了IDE已经不会写程序了(VS是...

pyinstaller打包成功,但win32api包不存在

最近使用Python开发了一个工程,记录一个pyinstaller的问题,打包EXE成功,但是在运行的时候提示win32api包不存在。如果你也定位到是win32api包不存在...

免费用超级计算机AI生成文章(鼠标点2下超简单)

看到有人付费使用AI生成文章的软件,其实这种开源的程序几年前就被玩烂了,之所以一直不温不火,主要是百度虽然收录不错,但排名并不好(2019年我测试的时候是这样的结果,现在不确定...

Liunx系统开启和关闭Firewall防火墙命令

服务器一般使用Liunx系统,有时候我们需要用到Firewall防火墙,但是阿里云和腾讯云的镜像是没安装Firewall防火墙的,还有时候我们服务器套了CDN,只是用来放数据就...

Win10 LTSC系统硬件占用高BUG修复

笔记本的Windows系统更新到Win11以后,用了将近一年了,感觉很稳定,本来我以为新版的系统会更稳定,但是家里台式机是老电脑,就装了Win10 LTSC 2021的系统,装...

解除网页限制的方法

很多网页为了版权或者其他的目的,限制使用鼠标右键,或者禁止审查元素,为了版权的就不多说了,但很多小网站也会限制网页的一些功能,其实蛮影响用户体验的。说实话能威胁到网站的人,也就...

百度网盘下载慢怎么解决?官方免费加速

很多朋友因为不常用百度网盘,所以觉得开会员挺亏的,但偶尔用一次,下载速度实在是太慢了,就像小哲我一样,家里的宽带是500M的,百度网盘的下载速度有时候都不到100KB每秒,实在...

蓝奏云怎么用?蓝奏云为啥不能下载了

蓝奏云怎么用?蓝奏云为啥不能下载了?好几个朋友最近来问我为啥之前分享的一些工具都不能下载了,小哲我去查看了一下都是蓝奏云的链接,点开之后确实不能下载了,但是我蓝奏云帐号正常,有...

如何开会员便宜?二手会员了解一下

如何开会员便宜?二手会员了解一下。最近小哲我在逛闲鱼的时候,发现了很多虚拟产品,应该是各种活动得到的虚拟产品,自己用不到,所以就放到闲鱼上面出售,远低于市场价,比如一年超会才7...