Ticket #1 (closed enhancement: fixed)
数据库优化
| Reported by: | chenchongqi | Owned by: | chenyinle |
|---|---|---|---|
| Priority: | major | Milestone: | 2011年第一阶段提交 |
| Component: | 商家后台 | Version: | 5.0 |
| Keywords: | 数据库优化,表拆分 | Cc: | |
| Due Date: |
Description (last modified by chenchongqi) (diff)
对商品表访问频繁的业务操作,如批量更新、报价、上下架,针对性在数据库中把表分拆,提高性能,减少锁冲突。
此优化与即将开始的批量报价功能关系密切,如果没有数据库方面的优化,预计数据库服务器负担进一步加重,锁冲突将更加密集。
如果时间允许,把商家和商品的状态也抽出来,例如允许在首页出现,允许在产品库出现等等,各个使用的地方就直接根据这些状态来判断,各种规则的影响也只是影响这些状态,这样避免某种规则变化的时候,全部的sql都要改,这部分有时间才优化。
Attachments
Change History
comment:1 Changed 15 years ago by chenchongqi
- Owner set to chenyinle
- Status changed from new to assigned
comment:7 Changed 15 years ago by chenchongqi
经讨论,JPA不支持悲观锁,另外经实验乐观锁更可能是因为JPA缓存同步导致,即JPA实例和数据库的version不一致,因此细粒度的事务对乐观锁错误改善不大,乐观锁的问题留待缓存机制改进时处理。
这一步要优化的点是:
针对无脑批量提交的数据,应用在处理的时候先判断是否有数据变更再提交。
商品表分为基本信息表和更新密集的业务表。
comment:8 Changed 15 years ago by chenchongqi
本需求和商品发布需求(#5)合并测试并上线。
上线计划:
http://192.168.11.3/trac/itm/attachment/ticket/1/IT%E5%95%86%E5%9F%8E%E5%95%86%E5%93%81%E5%8F%91%E5%B8%83%E5%8F%8A%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BC%98%E5%8C%96%E4%B8%8A%E7%BA%BF%E8%AE%A1%E5%88%92(2).xls
拆表脚本:
http://192.168.11.3/trac/itm/attachment/ticket/1/itmsplit.sql
视图更新脚本:
http://192.168.11.3/trac/itm/attachment/ticket/1/enterprise_20110428.txt
定时任务:
http://192.168.11.3/trac/itm/attachment/ticket/1/refresh_cyp_table_11.v3.sh
http://192.168.11.3/trac/itm/attachment/ticket/1/cyp_update_product_11.sh
接口检查列表:
http://192.168.11.3/trac/itm/attachment/ticket/1/%E6%8E%A5%E5%8F%A3.txt
![(please configure the [header_logo] section in trac.ini)](http://www1.pconline.com.cn/global/2008/images/jss/m_logo091125.jpg)
