多数据源的内容
来源:互联网 发布:淘宝晟尚数码 假货 编辑:程序博客网 时间:2024/06/02 01:27
在我之前接触的公司内部的oa管理系统中因为要和微信做数据交互,且公司oa系统和微信系统是两个项目时,用到了多数据源。
当然,我对于多数据源只是有一个浅薄的认识,直到今天中午公司内部就多数据源展开讨论后,我才知道知识的多面性。
首先整理一下我之前所使用的多数据源知识:
因为之前并没有接触过多数据的知识,在我们公司组长的指令下,通过applicationContext配置不同的DataSource(这里可以支持不同数据库类型,也支持同一类型数据库中不同数据源)。然后sessionFactory根据客户的每次请求,将dataSource属性设置成不同的数据源,以到达切换数据源的目的。
首先写一个Decorator类,通过它来动态切换数据源。同时在配置文件中将sessionFactory的dataSource属性由原来的某个具体的dataSource改为 MultiDataSource。MultiDataSource封装了具体的 dataSource,并实现了数据源动态切换
附:代码整理通过以上的分析,解决多数据源访问问题的关键,就集中在sessionFactory在执行数据持久化的时候,能够通过某段代码去根据客户的需要动态切换数据源,并解决资源争用的问题虽然此法存在很多局限性,但在改善后能解决我当时的燃眉之急。
现在我们假设通过三个相同的数据库保存高考考生的信息(数据库结构都相同,只是因为数据量大使用三个库,此处不涉及插入,只涉及统计数据读取数据)
此处重点整理在讨论过程中提到的解决方法。
1.weblogic 多数据源
2.大神贡献资源
http://blog.csdn.net/rj042/article/details/21654627
3.应用和数据库之间加缓存层能解决吗(数据库缓存)
3.应用和数据库之间加缓存层能解决吗(数据库缓存)
4.redis应该可以(键值对型的数据)
5.同时读三个,你怎么解决从哪个数据库查找某条数据,不是缓存全部的数据,可以配置策略,比如最长未使用
5.同时读三个,你怎么解决从哪个数据库查找某条数据,不是缓存全部的数据,可以配置策略,比如最长未使用
可以用Nginx 负载均衡
6.存储过程可以吗?我们集采系统那样
7.分页呀。
7.分页呀。
8.如果允许的话,查询条件写在存储过程中。(做统计用存储过程最快)
9.三个管理段,做集群
10.查询统计,调用接口,然后再把结果加起来
( 每一套程序,写一次查询,然后再写一套程序,把三个查询的结果,做统计
分别部署在 三个服务器上你最后的 那个统计 调用 这三个服务器上的 统计)
11.搞个大数据存在hbase上,百万级的数据库秒查询
分别部署在 三个服务器上你最后的 那个统计 调用 这三个服务器上的 统计)
11.搞个大数据存在hbase上,百万级的数据库秒查询
1 0
- 多数据源的内容
- 多数据源的用途
- 多数据源的配置
- 多数据源的配置
- 多数据源的事务管理
- 多数据源的实现
- 多数据源的配置
- 多数据源的配置
- spring hibernate 多数据源的配置
- Spring多数据源的配置(荐)
- Spring多数据源的配置
- spring+hibernate多数据源的应用
- SSH项目多数据源的配置
- Spring多数据源的动态切换
- corbarclient 多数据源的路由配置
- Spring多数据源的配置
- Spring多数据源的动态切换
- C3P0多数据源的死锁问题
- springcloud eurake (服务注册与发现)
- Java第二次记录
- Skynet基础入门例子详解(6)
- 闭包
- BAT面试之操作系统内存详解
- 多数据源的内容
- dnspod快速获取lets-encrypt 证书脚本
- Skynet基础入门例子详解(7)
- laravel5.4文件存储实战利用ajax上传图片
- android 点击布局隐藏软键盘 记录
- for循环的优化
- 手机APP界面设计规范:如何定义视觉规范
- 六.Scala 访问修饰符
- jzoj 5085. 【GDOI2017第四轮模拟day1】游戏 sg函数+线性基+bitset