免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123456
最近访问板块 发新帖
楼主: send_linux
打印 上一主题 下一主题

[数据库] 高并发Oracle数据库系统的架构与设计经验谈,欢迎参与! [复制链接]

论坛徽章:
0
51 [报告]
发表于 2015-04-20 12:31 |只看该作者
H-Store分布式内存数据库学习(一):从12306说起
•        前言
        记得12306网站刚刚上线的那年,春节时的高峰购票让网站瘫痪,当时很多人愤愤于花了国家那么多钱,弄出的系统那么烂。作为程序人员的一员的我,却觉得很坦然。因为当时虽然淘宝能够经受住双12的冲击,但是购票业务的业务特征和购物差异很大,不是简单的更新库存这么简单,并且购票系统还有那么多窗口系统和各地代理系统的压力。作为首次接受大考,出现问题,很正常。不出现问题,那几乎只能说是做梦。何况当时的基于互联网架构的事务处理系统的技术,除了几个巨头之外,运用到炉火纯青地步的,没有几个。而业务特征的不适应,也让一些基于互联网的高性能技术无用武之地。所以,在当时有些人轻易抛出“要是给我XXXX,我一定XXXX”的豪言壮语一笑了之。
         时至今日,12306网站经过大规模的技术升级,其在购票高峰的的表现不得不让人刮目相看。我也从心底里佩服其采用的技术方案的优秀。作为技术人员,虽然多年碌碌无为,但是还是有一颗追求进步的心灵,所以,在这里记录下基于此而对于分布式内存数据库的学习,也算是一种自我激励吧。

论坛徽章:
0
52 [报告]
发表于 2015-04-20 12:31 |只看该作者
•             12306的核心支点
            古代一位先哲说,他可以用一根棍子翘起地球,只要给他一个支点。而对于12306而言,这个支点是什么???答案是:GEM-FIRE。简单了说,它是一个分布式内存库。分布式内存的东东,可以说一点儿都不新鲜。因为MEMCACHE这个词让很多人耳朵都起茧子了估计,还有REDIS,对吧。 GEM-FIRE这个东东有些人听说过,不过有些人没有。但是很多人可能要喷说都是内存,分布式,而且REDIS很优秀了,LZ就不要再显摆了。但是,我真的要说,事情不是你想的那个样子的。为何我要提12306,只因为一个:OLTP. 我之所以要从12306说起,是因为其巨大的峰值事务处理需求,并且这种事务是复杂事务。一张车票含有很多个分段,每一段都可能发售,由于预售时间的安排导致的峰值冲击远远超过平常。做过电信或者金融类的兄弟可能对复杂事务有所体会。12306的峰值压力有人估算过,LZ记不太清楚了,但是请记住,比淘宝的面临的问题要复杂多。
           在12306首次考试没有及格之后,在广大群众的一片口水中,12306考察了不少商业的方案(12306自身的技术储备几乎不可能先考虑开源的方案),最后,以x86通用服务器为硬件平台(成本低),以分布式内存为特征的GEM-FIRE方案成功胜出,12306的主题支撑逐步过渡到以GEM-FIRE为核心的平台上。这也激发了lz的好奇心,圣人有言,身虽不至,而心向往之,咱自己虽然没那么厉害搞一个出来,总可以学习下吧。于是搜索带一个叫voltDB的东东,进而搜索到H-Store这个东东。好了,开源就是好,这意味着智力成果的传播成本迅速降低,落后地区的文明水平可以更快的提高。好了,让我们开始吧。

论坛徽章:
0
53 [报告]
发表于 2015-04-20 12:32 |只看该作者
•           GEMFIRE---来自Pivotal的礼物
           GEMFIRE是一个来自于Pivotal 公司的产品,Pivotal公司的一大股东是EMC,另一个是大名鼎鼎的VMware.同学们,尤其是对于hadoop,gfs,hdfs等词很熟悉的同学们,虽然我承认这些东西都很牛叉,但是,Pivotal 这个公司也同样牛叉,虽然他的东西没开源,虽然这个公司的名字没有gfs那么高的曝光率,但是,他们在云计算领域,尤其是商用领域的实力是很厉害的。GEMFIRE相对于我们常见的分布式存储方案,比如REDIS这个目前为止开源的分布式内存解决方案中最优秀的产品,杀手的特点就是没有放弃或者弱化事务特征。虽然有人会拿CAP来说事,我不想说CAP,但是GEMFIRE就是针对性的高性能OLTP方案,而其他的内存解决方案是不会这么提的。亲们,OLTP这词都懂得是啥意思,但是你把握住本质了吗?至少我觉得Pivotal和他们的GEMFIRE把握住了---那就是T。下面简单的介绍下GEMFIRE.它的曝光率不高,但是这不妨碍我们看看。当然,我这里的介绍也是引用,请勿鄙视,我也是学习。

论坛徽章:
0
54 [报告]
发表于 2015-04-29 11:55 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
55 [报告]
发表于 2015-09-04 16:35 |只看该作者
本帖最后由 yulihua49 于 2015-09-04 16:41 编辑
aluocp 发表于 2015-02-05 09:26
回复 17# ylky_2000

分布式数据库是解决高并发的一个思路,高并发是一个总称,但是不是什么应用都能实现分布式的。

分布要看什么策略。一种是划分,就是数据没有重复拷贝,没有冗余,只是不同数据划分在不同节点。有点像分区。一致性容易保证,容错还是不行。并发性呢?不同节点的业务可以完全的并发,同节点还是要锁一锁啦。
还一种是有重复的,一个数据可能在多个节点存在。这个好处是读并发和容错,坏处是一致性难以保证。

论坛徽章:
15
射手座
日期:2014-11-29 19:22:4915-16赛季CBA联赛之青岛
日期:2017-11-17 13:20:09黑曼巴
日期:2017-07-13 19:13:4715-16赛季CBA联赛之四川
日期:2017-02-07 21:08:572015年亚冠纪念徽章
日期:2015-11-06 12:31:58每日论坛发贴之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-08-04 06:20:00程序设计版块每日发帖之星
日期:2015-07-12 22:20:002015亚冠之浦和红钻
日期:2015-07-08 10:10:132015亚冠之大阪钢巴
日期:2015-06-29 11:21:122015亚冠之广州恒大
日期:2015-05-22 21:55:412015年亚洲杯之伊朗
日期:2015-04-10 16:28:25
56 [报告]
发表于 2015-09-04 16:48 |只看该作者
本帖最后由 yulihua49 于 2015-09-04 17:10 编辑
lanyuflying 发表于 2015-04-20 12:32
•           GEMFIRE---来自Pivotal的礼物
           GEMFIRE是一个来自于Pivotal 公司的产品,Pivotal公司 ...

你确定12306是使用DEMFIRE?
12306的问题与本帖的宗旨高度契合。
它的问题并不发生在某一个处理环节,而是整个架构问题。
你说的对,他的业务有独有的复杂问题(典型的OLTP问题,淘宝不是典型的OLTP,银行的ATM也不是。就像铁不是典型的金属,不过是常见的金属而已,锂钠钾铷铯才是。极端的典型),绝不是淘宝和银行或电信可比的。他的特点是高冲突高并发。最基本的,可能会一大波人抢同一批票,不允许重票,也不允许丢票。这是别的系统没有的情况。还有其他众多问题。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP