缓存可能带来的问题(缓存也称为)

lxf2023-12-29 01:00:02

当时我就在想,MySQL迟早会兼容一套key:value接口。果然,我很快就看到MySQL支持Memcached接口。这个东西一个地方,多少中间方案消亡了。

MySQL,一个诞生于互联网的数据库,被无数的网站和游戏所使用。据说谷歌,腾讯,淘宝都在用。在互联网高速发展的过程中,由于缓存的需要和传统数据库难以应对海量的写入,各种NoSQL方案纷纷问世,其中最经典的就是Memcached。然后就来了redis,因为Memcached本身不支持持久化,但是实际需求可能需要持久化。面对数据持久化和缓存,各种组合方案也出来了,redis支持持久化。新浪的朋友通过Memcached+berkeleydb做了一个Memcachedb。其中也有通过MySQL+Memcached的。毕竟,手动更新太麻烦了。后来MySQL+udf更新了Memcached,然后神器MySQL+handler socket出现了。据说可以达到80QPS,震惊业界。当时我就在想,MySQL迟早会兼容一套key:value接口。果然,我很快就看到MySQL支持Memcached接口。这个东西就是一个地方,很多中间方案都消亡了。以前需要高手才能玩的MySQL+Memcached,在集成了Memcached的MySQL面前已经没有存在的必要,暂时还在实验版。我试过了,效率真的很低。期待它尽快正式发布。

MongoDB也是各种NoSQL下的怪胎。我被迫使用以前的项目。从使用的感觉来说,不喜欢。有一些优点,就是读写速度还可以,但是比MySQL稍微快一点。个人觉得肯定比MySQL好,MySQL提供了Memcached接口,但是缺点很多。那东西消耗太多空伤不起。我一开始用的是1.8,后来换成2.0,用的时间更长空,差不多是MySQL存储的10倍。其实如果我用索引的话,会花很多时间。另外,json的查询语法非常怪异,真的需要一点时间才能习惯。另外,那个_id也很不舒服,24字节,作为字符串,作为OID。虽然这个东西看起来很受欢迎,也有一些早期采用者在使用,但是至今仍然没有一个强大的应用。我认为在传统数据库的各种变革下,MongoDB的一些优势已经失去了优势甚至变成了劣势。MongoDB很有可能是一个昙花一现的产品,也有可能存活很久,但摆脱不了小众的命运,所以选择者要谨慎。

互联网时代,各种新技术、新方案层出不穷,选择需要极大的智慧。选的好的话,2-3年的滋养。选的不好,就是自找麻烦,自讨苦吃。

adminjs.cn是一个以CSS、JavaScript、Vue、HTML为核心的前端开发技术网站。我们致力于为广大前端开发者提供专业、全面、实用的前端开发知识和技术支持。 在本网站中,您可以学习到最新的前端开发技术,了解前端开发的最新趋势和最佳实践。我们提供丰富的教程和案例,让您可以快速掌握前端开发的核心技术和流程。 Adminjs.cn还提供一系列实用的工具和插件,帮助您更加高效地进行前端开发工作。我们提供的工具和插件都经过精心设计和优化,可以帮助您节省时间和精力,提升开发效率。 在Adminjs.cn中,您可以找到您需要的一切前端开发资源,让您成为一名更加优秀的前端开发者。欢迎您加入我们的大家庭,一起探索前端开发的无限可能!