1、相同商品ID的属性不同,怎么办??
商品表中的属性存成一个集合,属性表
2、购物车的实现原理
分两种情况:
1、用户没有登录,将数据存储在cookie中,若用户登录,再将cookie中的数据转存到数据库。
2、用户登录后,将数据直接存储到数据库。
3、RBAC权限管理
基于角色的权限访问控制(Role-Based Access Control)
五张表:两个中间表 admin、role、rule、admin_role、role_rule
三张表:一个中间表
通过代码控制不同的管理员是否能够访问某个方法的过程就是权限控制。
RBAC(Role-Based AccessControl,基于角色的访问控制),就是用户通过角色与权限进行关联。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。
4、短信验证码如何防止短信轰炸??
JS客户端验证验证
手机号限制短信条数(计数器)
5、数据库优化从哪几个方面做??
1、设计数据库方面
2、建立索引
3、读写分离
4、缓存
6、优化MySQL的查询
1、避免全表查询,给相应字段建立索引
2、避免查询语句过长,分批查询。
3、where后面不能有函数运算
4、左原则like第一个字段要有索引
5、在where和group by后面建立索引
7、Redis实用案例--抢购秒杀、计数器、推荐、收藏案例
秒杀:
使用Redis的list链表,pop操作,即使是很多用户同时到达也是依次执行
1、现将商品表的库存存入队列
2、抢购开始,设置库存的缓存周期
3、客户端执行下单操作,下单前判断redis队列库存量