本人是初学者,仅代表自己的观点,主要以下几点:
1、优化表设计防止并发导致数据错乱和奔溃;
2、通过事务+通过更新锁,防止并发导致数据错乱和奔溃;
3、通过程序代码防止包并发下的数据错乱和奔溃问题;
如果高并发是最主要的特点,并且并发量巨大的情况下,可以考虑NOSQL。关系型数据库毕竟要保证数据的强一致性,这个与高并发本质上是矛盾的。虽然可以通过缓存一致性等类似技术来解决,但是也是缓解并发冲突。只有放弃强一致性求其次弱一致性才可能实现真正的高并发。
收起我绝对这个是没有套路的,你要是按照套路来最后坑的是自己。具体的要结合你的场景,也不要想一下子就去模仿Bat的数据库设计,比如说,你可以结合业务抽象出不同的实体,实体之间的关系如何存储就得从你平时数据如何进来如何被使用来决定,对于历史数据是否是绝对冷数据等,然后考虑通过横向或者纵向扩展去支持高并发,还是应用端就去考虑负载均衡来减轻数据库的压力等。
收起如果高并发是最主要的特点,并且并发量巨大的情况下,可以考虑NOSQL。关系型数据库毕竟要保证数据的强一致性,这个与高并发本质上是矛盾的。虽然可以通过缓存一致性等类似技术来解决,但是也是缓解并发冲突。只有放弃强一致性求其次弱一致性才可能实现真正的高并发。
收起