- 9. 马科维茨资产组合模型+FF5+GARCH风险模型优化方案(理论+Python实战)
AI量金术师
金融资产组合模型进化论python开发语言金融人工智能机器学习算法
目录0.承前1.核心风险函数代码讲解1.1数据准备和初始化1.2单资产GARCH建模1.3模型拟合和波动率预测1.4异常处理机制1.5相关系数矩阵计算1.6构建波动率矩阵1.7计算协方差矩阵1.8确保矩阵对称性1.9确保矩阵半正定性1.10格式转换和返回1.11calculate_covariance_matrix函数汇总2.代码汇总3.反思3.1不足之处3.2提升思路4.启后0.承前本篇博文是对
- matlab学习路线
kyle~
matlabmatlab学习信息可视化
阶段1:基础入门(1-2周)目标:熟悉MATLAB界面、基础语法和简单操作。学习内容:环境与界面:了解MATLAB的桌面布局(命令窗口、工作区、编辑器、当前文件夹)。学习如何创建脚本(.m文件)和实时脚本(.mlx文件)。掌握常用快捷键(如Ctrl+R注释、F5运行脚本)。基础语法:变量定义与数据类型(数值、字符、逻辑、矩阵、cell数组、结构体)。矩阵操作(创建、索引、切片、拼接),例如:A=[
- python——生成器和迭代器的概念
光纤光栅
python学习python开发语言
一、生成器(generator)1.1概念理解作用:生成器主要用于提高代码效率、节约内存空间,在python中,没有被调用的对象会被销毁。#之前学过列表生成式s=[iforiinrange(10)]print(s)#[0,1,2,3,4,5,6,7,8,9]#创建一个生成器s=(iforiinrange(10))print(s)#at0x000001BF5E2107B0>与列表相比,列表创建的10
- et中计算机的快捷键,ET软件快捷键
Gyrolt
et中计算机的快捷键
ET软件快捷键1.点模式:F4:要素点模式F5:任意点模式F5:智能点模式2.显示:F6、V:全屏显示F7、B:单屏全屏显示F8:关闭所有皮尺显示F9:显示分类对话框F10:前画面F11:显示隐藏后的裁片F12:关闭英寸白圈表示X:缩小Z:放大C:视图查询Shift+滚轮:按鼠标指定位置放缩,向上放大向下缩小工具面板切换:Alt+Q:打版工具与放码工具切换Alt+W或Alt+E:专业工具与测量工具
- et中计算机的快捷键,ET制版快捷键
weixin_39654465
et中计算机的快捷键
《ET制版快捷键》由会员分享,可在线阅读,更多相关《ET制版快捷键(3页珍藏版)》请在人人文库网上搜索。1、ET制版快捷键单键:智能工具P平行线VK_RETURN点偏移A任意文字Q对称修改VK_SPACE清空系统对话框B波浪线R要素镜像VK_F2保存-0C屏幕移动S形状对接VK_F3打开-0D刀口T水平垂直镜像VK_F4要素点捕捉模式E删除U贴边VK_F5任意点捕捉模式F旋转V全屏VK_F6全屏-
- 浅谈nRF52840这款芯片
一只慵懒的小橘猫
芯片选型嵌入式硬件智能硬件
nRF52840是NordicSemiconductor推出的一款高性能、低功耗无线微控制器,专为物联网和复杂应用设计。以下是其关键特性:1.**核心处理器**基于ARMCortex-M4F内核,主频64MHz,集成浮点单元(FPU),提供高效计算能力。2.**无线功能**-支持蓝牙5.2/5.3(含长距离LECodedPHY和2Mbps高速模式)、蓝牙Mesh、Thread、Zigbee、ANT
- ks8 本地化部署 F5-TTS
CHEN_RUI_2200
机器学习TTS
huggingface上有一个demo可以打开就能玩https://huggingface.co/spaces/mrfakename/E2-F5-TTS上传了一段懂王的演讲片段,然后在generatetext框内填了点古诗词,生成后这语气这效果,离真懂王就差一个手风琴了。F5-TTS项目地址:【GitHub】SWividF5-TTSDiffusionTransformerwithConvNeXtV
- Git 2.45.0-64官方安装包(24.4.29新发布)百度网盘
mangoac
资源分享安装包网盘资源git分布式微信小程序
官网下载也太慢了还很容易中断找了找网上的网盘资源版本都比较旧了所以分享给大家希望能方便一点~链接:https://pan.baidu.com/s/1utDID9Kdnf5aRvrqHZXzBA?pwd=dmyy提取码:dmyy
- 【Yarn】Yarn 架构体系、通讯协议、yarn交互流程
九师兄
大数据-hadoop架构java运维
文章目录1.概述2.ResourceManager3.NodeManager4.ApplicationMaster5.Container容器6.通讯协议7.yarn交互流程7.1YARN上应用类型7.2整体流程大年初二,凑够3400篇文章,神秘代码:5Lmd5biI5YWE5ZSv5LiA5Y6f5Yib5paH56ug77yM56aB5q2i6L2s6L291.概述yarn有3大组件,想明白组件
- 84,【8】BUUCTF WEB [羊城杯 2020]Blackcat
rzydal
前端
进入靶场音乐硬控我3分钟回去看源码开始解题运行得到afd556602cf62addfe4132a81b2d62b9db1b6719f83e16cce13f51960f56791b最终组成payload:White-cat-monitor[]=1&Black-Cat-Sheriff=afd556602cf62addfe4132a81b2d62b9db1b6719f83e16cce13f51960f5
- 搭建python本地源
weixin_34234829
python开发工具
1.安装pip工具[root@tongc-yum162~]#wgethttps://files.pythonhosted.org/packages/d3/3e/1d74cdcb393b68ab9ee18d78c11ae6df8447099f55fe86ee842f9c5b166c/setuptools-40.0.0.zip[root@tongc-yum162~]#cdsetuptools-40.0
- 【win11】amd全大核CPU调度异常,或inter大小核自定义调度配置
东哥他爸
windows
前言台式机一般使用高性能,笔记本一般是平衡或oem提供的电源选项不建议修改选项,但在内部很多设置被隐藏了,需要手动打开隐藏的设置惠普战99为例驱动装完了以后默认设置都大小核,但CPU是AMD锐龙7系列所以是全大核,需要进行调整,命令如下:CPU核心调度配置管理员运行CMD命令行输入如下命令:生效的异类策略powercfg-attributesSUB_PROCESSOR7f2f5cfa-f10c-4
- 龙珠训练营机器学习task04
a_little_pig_
python
学习笔记为阿里云天池龙珠计划机器学习训练营的学习内容,学习链接为:https://tianchi.aliyun.com/competition/entrance/231702/introduction?spm=5176.20222472.J_3678908510.8.8f5e67c2RKrT98总体思路:分别使用LightGBM,xgboost,gbdt,catboost建立多个个体学习器(加入b
- Vue项目中使用Sass实现动态换肤
2401_84447065
vue.jssassrust
color-warning:#f2a626,color-danger:#ee2e6b,background:#fff,background-content:#f4f7fc,background-color:#eaedf7,),//darkthemedark:(color-primary:#3961f5,color-primary-second:#5e81f7,color-text-primary:
- c++ 与 Matlab 程序的数据比对
一路冰雨
c++matlab开发语言
文章目录背景环境数据保存数据加载背景***避免数据精度误差,快速对比变量***环境c++下载https://github.com/BlueBrain/HighFive以及hdf5库在vs中配置库数据保存#includeusingnamespaceHighFive;std::stringfilename1="test.h5";Filefile1(filename1,File::Truncate);/
- HAProxy集群与常见的Web集群软件调度器对比
EsDeath_99
java服务器linux
一、Web集群调度器1.常见的Web集群调度器常用的Web集群调度器分为软件和硬件,负载均衡性能(硬件负载均衡器F5>LVS>Haproxy>Nginx)软件调度器(开源)1.LVS:性能最好,搭建复杂2.Nginx:性能较好,但集群节点健康检查功能不强,高并发性能较弱3.Haproxy:高并发性能好硬件调度器1.F52.梭子鱼、绿盟、F5、Array等2.常见集群调度器的优缺点(LVS、Ngin
- Sublime Text 4 4126 可用
୧⍢⃝୨ LonelyCoder
SublimeTextsublimetext编辑器
网上找的,做个记录,最新的4126可用!!妥妥的—–BEGINLICENSE—–MifengUserSingleUserLicenseEA7E-1184812C0DAA9CD6BE825B5FF9356921750523AEDF59D3FA3BD6C96F8D338663F1CCCEA1C25BE4D25B1C4CC5110C20E5246CC42D232C83BC99CCC420E32890CB
- 一篇文章掌握WebService服务、工作原理、核心组件、主流框架
java15655057970
服务器前端linux
目录1、WebService定义解决问题:2、WebService的工作原理2.1实现一个完整的Web服务包括以下步骤2.2调用方式3、WebService的核心组件3.1XML3.2SOAP3.3WSDL3.4UDDI4、主流框架4.1AXIS(已淘汰)4.2XFire4.3CXF5、Soap协议详解1.Soap协议是什么2.认识Soap3.结论4.SOAP小总结6、WSDL详解1.types2
- 深度学习模型推理速度/吞吐量计算(附代码)
Scabbards_
1500深度学习笔记深度学习人工智能
参考博文:https://mp.weixin.qq.com/s?__biz=MzI4MDYzNzg4Mw==&mid=2247546551&idx=2&sn=f198b6365e11f0a18832ff1203302632&chksm=ebb70e63dcc0877569d1838b2391744be628bf6cbb6e203a49f855e0769ecbbbf5a9929fe2db&scene
- uniapp 微信小程序 金额展示套餐
竣子好逑
uniappv2组件uni-app微信小程序小程序
html喜欢作者其他金额-->¥{{item}}js//打赏asyncfun_reward(price){//里面写逻辑},css.gradelist{padding:30rpx;background:#f5f5f5;border-radius:8rpx;box-sizing:border-box;border-radius:12rpx;margin-top:30rpx;.gradelisTitl
- 【如何利用Python抢演唱会门票】python利用selenium实现大麦网抢票
Python小炮车
pythonselenium数据库
一、selenium原理介绍Selenium是一个用于Web[应用程序](https://link.juejin.cn/?target=https%3A%2F%2Fbaike.baidu.com%2Fitem%2F%25E5%25BA%2594%25E7%2594%25A8%25E7%25A8%258B%25E5%25BA%258F%2F5985445%3FfromModule%3Dlemma_i
- WRF模式与Python融合技术及精美绘图
岁月如歌,青春不败
气象学python开发语言wrf气象科学大气科学气象学
一:WRF基础与Linux基础1WRF基础与Linux基础1.1WRF模式的理论知识与应用前景WRF动力理论WRF模式代码框架WRF模式应用前景1.2Linux知识与基本操作Linux基本命令设置定时任务超算提交任务1.3WRF模式安装基础库安装(GNU编译器、zlib、libpng、jasper、hdf5、netcdf4、mpich2)WRF/WPS安装二:WRF模式运行2WRF模式运行2.1W
- 清晰度相关参数:MTF,SFR,MTF50,MTF50P 以及TVL的概念以及换算说明
无敌 喵星人
图像测试visualstudiocode
1)MTF概念说明MTF是ModulationTransferFunction的英文简称,中文为调制传递函数。是指调制度随空间频率变化的函数称为调制度传递函数。调制传递函数最初是为了说明镜头的能力。在各个摄像头镜头中经常采用MTF描述镜头的MTF曲线,表明镜头的能力。这些曲线是通过理想的测试环境下尽量减少其它系统对镜头的清晰度的衰减的情况下测试得出的。但是其实MTF也可以涵盖对整个成像系统的清晰度
- Go 并发控制:errgroup 详解
后端go面试并发编程并发模型
本文公众号地址:https://mp.weixin.qq.com/s/kqfIPS77B_LWLf5h4dLDGwerrgroup是Go官方库x中提供的一个非常实用的工具,用于并发执行多个goroutine,并且方便的处理错误。我们知道,Go标准库中有个sync.WaitGroup可以用来并发执行多个goroutine,errgroup就是在其基础上实现了errgroup.Group。不过,err
- python怎么将png转为tif_png转tif
weixin_39977276
发国外的文章要求图片是tif,cmyk色彩空间的。大小尺寸还有要求。比如网上大神多,找到了一段代码,感谢!https://www.jianshu.com/p/ec2af4311f56https://github.com/KevinZc007/image2Tifimportjava.awt.image.BufferedImage;importjava.io.File;importjava.io.Fi
- uniapp使用内置地图选择插件,实现地址选择并在地图上标点
神夜大侠
Uniappvue.jsuniapp
uniapp使用内置地图选择插件,实现地址选择并在地图上标点代码如下:page{background:#F4F5F6;}::-webkit-scrollbar{width:0;height:0;color:transparent;}page{height:100%;width:100%;font-size:24rpx;}image,view,input,textarea,label,text,na
- Linux下使用U盘
WittXie
Linuxlinux运维服务器
第一步:插入U盘,如果能够识别出U盘,则会打印出一些信息;第二步:查看U盘系统分配给U盘的设备名;输入如下命令进行查看:fdisk-l/dev/sda如果打印出如下信息:Disk/dev/sda:4233MB,4233101312bytes165heads,34sectors/track,1473cylindersUnits=cylindersof5610*512=2872320bytesDevi
- python语言爬虫爬取歌曲代码X
EYYLTV
python爬虫java
importrequestssong_urls=[“https://m804.music.126.net/20240915142147/4e01caa69abda60b165e185607805ee1/jdyyaac/obj/w5rDlsOJwrLDjj7CmsOj/30379084686/b56a/dbd5/39fc/792d87f5d7014bb78547ec3804eeaac5.m4a?au
- 信号与线性系统分析第4版吴大正课后习题答案
zgw100xuexi
考试信号与线性系统分析课后答案
完整版:http://zgw.100xuexi.com/SubItem/IndexInfoDetail.aspx?id=1d9ef631-a09d-4893-bb2f-597c745f5803第1章信号与系统1.1复习笔记本章是信号分析与系统分析的基础,详细介绍了信号与系统的概念与分类方法以及常用的连续信号与离散信号,讨论了冲激函数和冲激偶函数的重要性质,介绍了线性时不变(LTI)系统的特性,简要
- python读二进制数据,Python二进制数据读取
上山下海何小妞
python读二进制数据
Aurllib2requestreceivesbinaryresponseasbelow:000000010004414D544400000000024197333341995C2941903D714191D70A470FC614000001166AE068804193B40541971EB841907AE141968F5746E62E80000001167A537C80FFFFItsstruct
- SQL的各种连接查询
xieke90
UNION ALLUNION外连接内连接JOIN
一、内连接
概念:内连接就是使用比较运算符根据每个表共有的列的值匹配两个表中的行。
内连接(join 或者inner join )
SQL语法:
select * fron
- java编程思想--复用类
百合不是茶
java继承代理组合final类
复用类看着标题都不知道是什么,再加上java编程思想翻译的比价难懂,所以知道现在才看这本软件界的奇书
一:组合语法:就是将对象的引用放到新类中即可
代码:
package com.wj.reuse;
/**
*
* @author Administrator 组
- [开源与生态系统]国产CPU的生态系统
comsci
cpu
计算机要从娃娃抓起...而孩子最喜欢玩游戏....
要让国产CPU在国内市场形成自己的生态系统和产业链,国家和企业就不能够忘记游戏这个非常关键的环节....
投入一些资金和资源,人力和政策,让游
- JVM内存区域划分Eden Space、Survivor Space、Tenured Gen,Perm Gen解释
商人shang
jvm内存
jvm区域总体分两类,heap区和非heap区。heap区又分:Eden Space(伊甸园)、Survivor Space(幸存者区)、Tenured Gen(老年代-养老区)。 非heap区又分:Code Cache(代码缓存区)、Perm Gen(永久代)、Jvm Stack(java虚拟机栈)、Local Method Statck(本地方法栈)。
HotSpot虚拟机GC算法采用分代收
- 页面上调用 QQ
oloz
qq
<A href="tencent://message/?uin=707321921&Site=有事Q我&Menu=yes">
<img style="border:0px;" src=http://wpa.qq.com/pa?p=1:707321921:1></a>
- 一些问题
文强chu
问题
1.eclipse 导出 doc 出现“The Javadoc command does not exist.” javadoc command 选择 jdk/bin/javadoc.exe 2.tomcate 配置 web 项目 .....
SQL:3.mysql * 必须得放前面 否则 select&nbs
- 生活没有安全感
小桔子
生活孤独安全感
圈子好小,身边朋友没几个,交心的更是少之又少。在深圳,除了男朋友,没几个亲密的人。不知不觉男朋友成了唯一的依靠,毫不夸张的说,业余生活的全部。现在感情好,也很幸福的。但是说不准难免人心会变嘛,不发生什么大家都乐融融,发生什么很难处理。我想说如果不幸被分手(无论原因如何),生活难免变化很大,在深圳,我没交心的朋友。明
- php 基础语法
aichenglong
php 基本语法
1 .1 php变量必须以$开头
<?php
$a=” b”;
echo
?>
1 .2 php基本数据库类型 Integer float/double Boolean string
1 .3 复合数据类型 数组array和对象 object
1 .4 特殊数据类型 null 资源类型(resource) $co
- mybatis tools 配置详解
AILIKES
mybatis
MyBatis Generator中文文档
MyBatis Generator中文文档地址:
http://generator.sturgeon.mopaas.com/
该中文文档由于尽可能和原文内容一致,所以有些地方如果不熟悉,看中文版的文档的也会有一定的障碍,所以本章根据该中文文档以及实际应用,使用通俗的语言来讲解详细的配置。
本文使用Markdown进行编辑,但是博客显示效
- 继承与多态的探讨
百合不是茶
JAVA面向对象 继承 对象
继承 extends 多态
继承是面向对象最经常使用的特征之一:继承语法是通过继承发、基类的域和方法 //继承就是从现有的类中生成一个新的类,这个新类拥有现有类的所有extends是使用继承的关键字:
在A类中定义属性和方法;
class A{
//定义属性
int age;
//定义方法
public void go
- JS的undefined与null的实例
bijian1013
JavaScriptJavaScript
<form name="theform" id="theform">
</form>
<script language="javascript">
var a
alert(typeof(b)); //这里提示undefined
if(theform.datas
- TDD实践(一)
bijian1013
java敏捷TDD
一.TDD概述
TDD:测试驱动开发,它的基本思想就是在开发功能代码之前,先编写测试代码。也就是说在明确要开发某个功能后,首先思考如何对这个功能进行测试,并完成测试代码的编写,然后编写相关的代码满足这些测试用例。然后循环进行添加其他功能,直到完全部功能的开发。
- [Maven学习笔记十]Maven Profile与资源文件过滤器
bit1129
maven
什么是Maven Profile
Maven Profile的含义是针对编译打包环境和编译打包目的配置定制,可以在不同的环境上选择相应的配置,例如DB信息,可以根据是为开发环境编译打包,还是为生产环境编译打包,动态的选择正确的DB配置信息
Profile的激活机制
1.Profile可以手工激活,比如在Intellij Idea的Maven Project视图中可以选择一个P
- 【Hive八】Hive用户自定义生成表函数(UDTF)
bit1129
hive
1. 什么是UDTF
UDTF,是User Defined Table-Generating Functions,一眼看上去,貌似是用户自定义生成表函数,这个生成表不应该理解为生成了一个HQL Table, 貌似更应该理解为生成了类似关系表的二维行数据集
2. 如何实现UDTF
继承org.apache.hadoop.hive.ql.udf.generic
- tfs restful api 加auth 2.0认计
ronin47
目前思考如何给tfs的ngx-tfs api增加安全性。有如下两点:
一是基于客户端的ip设置。这个比较容易实现。
二是基于OAuth2.0认证,这个需要lua,实现起来相对于一来说,有些难度。
现在重点介绍第二种方法实现思路。
前言:我们使用Nginx的Lua中间件建立了OAuth2认证和授权层。如果你也有此打算,阅读下面的文档,实现自动化并获得收益。SeatGe
- jdk环境变量配置
byalias
javajdk
进行java开发,首先要安装jdk,安装了jdk后还要进行环境变量配置:
1、下载jdk(http://java.sun.com/javase/downloads/index.jsp),我下载的版本是:jdk-7u79-windows-x64.exe
2、安装jdk-7u79-windows-x64.exe
3、配置环境变量:右击"计算机"-->&quo
- 《代码大全》表驱动法-Table Driven Approach-2
bylijinnan
java
package com.ljn.base;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Collections;
import java.uti
- SQL 数值四舍五入 小数点后保留2位
chicony
四舍五入
1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位。
2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
例如:
select cast(round(12.5,2) as numeric(5,2))  
- c++运算符重载
CrazyMizzz
C++
一、加+,减-,乘*,除/ 的运算符重载
Rational operator*(const Rational &x) const{
return Rational(x.a * this->a);
}
在这里只写乘法的,加减除的写法类似
二、<<输出,>>输入的运算符重载
&nb
- hive DDL语法汇总
daizj
hive修改列DDL修改表
hive DDL语法汇总
1、对表重命名
hive> ALTER TABLE table_name RENAME TO new_table_name;
2、修改表备注
hive> ALTER TABLE table_name SET TBLPROPERTIES ('comment' = new_comm
- jbox使用说明
dcj3sjt126com
Web
参考网址:http://www.kudystudio.com/jbox/jbox-demo.html jBox v2.3 beta [
点击下载]
技术交流QQGroup:172543951 100521167
[2011-11-11] jBox v2.3 正式版
- [调整&修复] IE6下有iframe或页面有active、applet控件
- UISegmentedControl 开发笔记
dcj3sjt126com
// typedef NS_ENUM(NSInteger, UISegmentedControlStyle) {
// UISegmentedControlStylePlain, // large plain
&
- Slick生成表映射文件
ekian
scala
Scala添加SLICK进行数据库操作,需在sbt文件上添加slick-codegen包
"com.typesafe.slick" %% "slick-codegen" % slickVersion
因为我是连接SQL Server数据库,还需添加slick-extensions,jtds包
"com.typesa
- ES-TEST
gengzg
test
package com.MarkNum;
import java.io.IOException;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.annotation
- 为何外键不再推荐使用
hugh.wang
mysqlDB
表的关联,是一种逻辑关系,并不需要进行物理上的“硬关联”,而且你所期望的关联,其实只是其数据上存在一定的联系而已,而这种联系实际上是在设计之初就定义好的固有逻辑。
在业务代码中实现的时候,只要按照设计之初的这种固有关联逻辑来处理数据即可,并不需要在数据库层面进行“硬关联”,因为在数据库层面通过使用外键的方式进行“硬关联”,会带来很多额外的资源消耗来进行一致性和完整性校验,即使很多时候我们并不
- 领域驱动设计
julyflame
VODAO设计模式DTOpo
概念:
VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。
DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提高分布式调用的性能和降低网络负载,但在这里,我泛指用于展示层与服务层之间的数据传输对
- 单例设计模式
hm4123660
javaSingleton单例设计模式懒汉式饿汉式
单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。
&nb
- logback
zhb8015
loglogback
一、logback的介绍
Logback是由log4j创始人设计的又一个开源日志组件。logback当前分成三个模块:logback-core,logback- classic和logback-access。logback-core是其它两个模块的基础模块。logback-classic是log4j的一个 改良版本。此外logback-class
- 整合Kafka到Spark Streaming——代码示例和挑战
Stark_Summer
sparkstormzookeeperPARALLELISMprocessing
作者Michael G. Noll是瑞士的一位工程师和研究员,效力于Verisign,是Verisign实验室的大规模数据分析基础设施(基础Hadoop)的技术主管。本文,Michael详细的演示了如何将Kafka整合到Spark Streaming中。 期间, Michael还提到了将Kafka整合到 Spark Streaming中的一些现状,非常值得阅读,虽然有一些信息在Spark 1.2版
- spring-master-slave-commondao
王新春
DAOspringdataSourceslavemaster
互联网的web项目,都有个特点:请求的并发量高,其中请求最耗时的db操作,又是系统优化的重中之重。
为此,往往搭建 db的 一主多从库的 数据库架构。作为web的DAO层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数