水木社区手机版
首页
|版面-PHP程序设计语言(PHP)|
新版wap站已上线
返回
下页
|
尾页
|
1/2
|
转到
主题:[求助]新手请教一个缓存的问题
楼主
|
baddif
|
2021-01-24 22:44:25
|
只看此ID
新接触PHP不到一周,问个小白问题:
比如用户登录的时候,需要验证用户身份。
数据库里存储着用户身份。
出于性能考虑,我希望在网站启动时,把所有用户身份读到缓存中,这样当有用户登录时,不需要去读数据库。
在Java里,这是比较容易实现的。
在PHP中,这个要如何实现?似乎用static变量也做不到这一点。
或者说,PHP脚本总是执行完就结束了,没有长期在内存中运行的情况。
请问这种机制要如何实现呢?或者相关的文章,搜索关键字也可以,我现在查都不知道怎么查。
找了本Head First PHP也没看到相关内容,求指教。
谢谢先~
--
FROM 117.143.153.*
1楼
|
lupa1999
|
2021-01-25 12:25:47
|
只看此ID
这个不都是存在 session或者cookies里面的么?
如果不行,你自己弄一个redis服务器?
【 在 baddif 的大作中提到: 】
: 新接触PHP不到一周,问个小白问题:
: 比如用户登录的时候,需要验证用户身份。
: 数据库里存储着用户身份。
: ...................
--
FROM 210.13.117.*
2楼
|
baddif
|
2021-01-25 14:31:59
|
只看此ID
在网上查,多半也是类似的方法,或者用文件存储。
我想象中应该不是session或者cookie适合的内容,
比如访问人数显示,只能每次有人连上来去查一次更新一下吗?
php没有所谓 放在内存里 的概念,只能是放在一个性能较高的数据库里?
【 在 lupa1999 的大作中提到: 】
: 这个不都是存在 session或者cookies里面的么?
: 如果不行,你自己弄一个redis服务器?
:
--
FROM 106.11.194.*
3楼
|
superlq
|
2021-01-25 15:47:06
|
只看此ID
不是人生攻击哈
java程序员这么设计程序不会被干死吗?
【 在 baddif 的大作中提到: 】
: 新接触PHP不到一周,问个小白问题:
: 比如用户登录的时候,需要验证用户身份。
: 数据库里存储着用户身份。
: ...................
--
FROM 117.139.13.*
4楼
|
baddif
|
2021-01-25 16:59:06
|
只看此ID
大概会,我只是拿用户表举例。
换个例子,比如这个bbs页面,应该是有缓存一份最新的文章列表,
有请求就返回,不会是每次有人请求就去查库生成的吧?
我在php和网站这方面经验都几乎为0,所以很多方面都可能有问题……
【 在 superlq 的大作中提到: 】
: 不是人生攻击哈
: java程序员这么设计程序不会被干死吗?
--
FROM 106.11.194.*
5楼
|
baddif
|
2021-01-26 00:50:38
|
只看此ID
话说这种情况应该怎么设计?
假如就是需要用户登录时快速验证的话,不放在内存里吗?
我做的都是本地的应用,服务端设计不熟悉,求指点
【 在 superlq 的大作中提到: 】
: 不是人生攻击哈
: java程序员这么设计程序不会被干死吗?
--
FROM 117.143.153.*
6楼
|
superlq
|
2021-01-26 15:31:31
|
只看此ID
php一次执行完成 所有开销就全部回收了,普通情况就是每次都进行数据库查询 ,所以基本上都是通过redis memecache进行缓存 。
【 在 baddif (Fire of my loins) 的大作中提到: 】
: 大概会,我只是拿用户表举例。
: 换个例子,比如这个bbs页面,应该是有缓存一份最新的文章列表,
: 有请求就返回,不会是每次有人请求就去查库生成的吧?
: ...................
--
FROM 117.139.13.*
7楼
|
baddif
|
2021-01-26 16:49:26
|
只看此ID
这么说来,我是对查询数据库之类的性能估计得太弱了
【 在 superlq 的大作中提到: 】
: php一次执行完成 所有开销就全部回收了,普通情况就是每次都进行数据库查询 ,所以基本上都是通过redis memecache进行缓存 。
:
:
--
FROM 117.143.153.*
8楼
|
world
|
2021-01-26 17:08:09
|
只看此ID
你非要放内存,其实也是可以的,使用Shared Memory即可,不过不建议这么做。
https://www.php.net/manual/en/book.shmop.php
【 在 baddif (Fire of my loins) 的大作中提到: 】
: 这么说来,我是对查询数据库之类的性能估计得太弱了
--
修改:world FROM 123.116.65.*
FROM 123.116.65.*
9楼
|
baddif
|
2021-01-26 22:19:59
|
只看此ID
多谢,我去看看,还是先用最简单的办法实现吧
【 在 world 的大作中提到: 】
: 你非要放内存,其实也是可以的,使用Shared Memory即可,不过不建议这么做。
:
https://www.php.net/manual/en/book.shmop.php
:
--
FROM 117.143.153.*
下页
|
尾页
|
1/2
|
转到
选择讨论区
首页
|
分区
|
热推
BYR-Team
©
2010.
KBS Dev-Team
©
2011
登录完整版