java-ee - java EE 用的是MySQL数据库,缓存问题
大家讲道理
大家讲道理 2017-04-17 13:07:16
[MySQL讨论组]

一直没考虑缓存问题,网页上展示的数据全部直接是读取数据库,这样肯定是不行

现在想的方案是吧数据库文件直接缓存为文件,然后直接读取文件

这样比读数据库感觉快了很多,我现在是用 jackson 吧数据存为 XXX.json 文件,然后用 jackson 读取 XXX.json 文件转为 JavaBean 使用,如果是 添加 更新 操作时,就更新下 XXX.json 文件,但是并发非常大时是不是不行,应该可能2个更新同时在操作这个文件?

不知道这方案对不对

一般缓存是怎么做

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全部回复(2)
ringa_lee

提一句,mysql本身就是有查询缓存机制的,也就是并非你的每句sql它都会费力的去解析查询。
用文件做缓存对io的占也是比较大的,性能方面的提升不会太大(当然,如果之前数据库查询的逻辑的确是太复杂、太慢了的话,你还是有机会感到提升很多)。
你先把产品上线看看效果再决定是否真的有必要上缓存,真要上的话试试Memcached吧,自己去折腾无异于自己挖坑埋自己。

PHP中文网

系统有文件读写锁,所以两个线程(进程)不能同时获得写锁进行写操作.
直接访问MySQL读写数据的性能也没你想象中那么差,MySQL有自己的缓存机制.
i5-3230M笔记本的CPU,在Ubuntu14.04上,5个PHP-FPM工作进程跟MySQL建立5个持久连接,ab压测每秒连接能达到5900多个,在服务器CPU上,数据库并发连接超过C10K估计也没有问题.
关键还是SQL执行快慢的问题,如果SQL查询没能利用索引导致速度慢,那这是SQL优化的问题,不是MySQL的问题.

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号