论坛首页 综合技术论坛

淘宝下单高并发解决方案

浏览 91738 次
该帖已经被评为精华帖
作者 正文
   发表时间:2012-05-08   最后修改:2012-05-08
huangtian549 写道
非常不错的方案,有点小问题请教一下
1. 怎么解决单点问题,比如16台mysql服务器中有一台挂掉了, 怎么处理呢?
2. 如果需要做统计,比如最近的N条记录或者交易额最大的记录?把每个表中去记录拼接?


第一个问题,我的方案是马上启用备机,把这台服务器上的数据尽快恢复到备机上,这样做会影响到1/16的用户
第二个问题
大的统计不要在交易服务器上做,做统计要放在数据仓库中,而非线上交易服务器中。如果真的有实时统计的必要,使用消息把下单的信息发给另外一个应用,让另外的应用来做统计。

以上是我的想法,非淘宝方案,我会把你的问题转给@淘宝技术嘉年华,希望能得到他们的答复。
0 请登录后投票
   发表时间:2012-05-08  
其实lz只说了一样东西 分库分表 tddl
0 请登录后投票
   发表时间:2012-05-08  
分库分表查询,那个叫纠结
0 请登录后投票
   发表时间:2012-05-08  
luzhecheng 写道
其实lz只说了一样东西 分库分表 tddl


如何把业务抽象出来,如何分,如何正确的处理分之后出现的问题。
0 请登录后投票
   发表时间:2012-05-08  
听了个大概,很多细节还不怎么明白,比如对mysql表如何进行拆分。。。
0 请登录后投票
   发表时间:2012-05-09   最后修改:2012-05-09
业务并发应该是有上限的,除了事务的控制要注意外,我觉得性能应该不是问题,特别是硬件日新月异的今天。淘宝核心业务不是用hbase吗?mysql是个历史问题。。我朋友在是那oracle的dba
0 请登录后投票
   发表时间:2012-05-09  
yukaizhao 写道
huangtian549 写道
非常不错的方案,有点小问题请教一下
1. 怎么解决单点问题,比如16台mysql服务器中有一台挂掉了, 怎么处理呢?
2. 如果需要做统计,比如最近的N条记录或者交易额最大的记录?把每个表中去记录拼接?


第一个问题,我的方案是马上启用备机,把这台服务器上的数据尽快恢复到备机上,这样做会影响到1/16的用户
第二个问题
大的统计不要在交易服务器上做,做统计要放在数据仓库中,而非线上交易服务器中。如果真的有实时统计的必要,使用消息把下单的信息发给另外一个应用,让另外的应用来做统计。

以上是我的想法,非淘宝方案,我会把你的问题转给@淘宝技术嘉年华,希望能得到他们的答复。

对于1。 mysql肯定有master-master或者master-slave机制来保证的
2。 没有人会允许你在这种表上做类似的动作的,不要用一般系统的思维来考虑大数据的问题。
0 请登录后投票
   发表时间:2012-05-09  
icanfly 写道
lofei117 写道
通过买家id最后两位来定位, 那要是遇到相同的怎么办?

只是通过这个来定位数据库,没有说通过这个来确定订单。

定位了数据库后,再通过订单查询

对.只是定位了库.然后再定位具体表单
0 请登录后投票
   发表时间:2012-05-09  
感觉很原始,程序员编码时要不要考虑分库分表呢?最理想的情况是,开发时完全不用考虑背后的架构,对程序员来说就是一台数据库服务器,这个才是真正的云计算。
0 请登录后投票
   发表时间:2012-05-10  
对于超大数据量的系统可以考虑不用关系数据库,而用像Hadoop框架,构建一个分布式文件系统,再采用高性能搜索引擎来对数据进行检索。Google就是采用类似的技术
0 请登录后投票
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics