- 2022-08-22
阳光不锈陋室茶事
【文章标题】暑期校本培训感悟【文章链接】https://www.jianshu.com/p/0aa290116e77?utm_campaign=hugo&utm_medium=reader_share&utm_content=note&utm_source=weixin-friends战友你好,非常荣幸能点评你的文章,首先为你点赞。【见】读战友的文章,我看到了中国教育的希望,给到我们最正的力量。这
- MySQL NOT EXISTS 真的不走索引么,如何优化 NOT EXISTS?
码农小光
作者:夜风_BLOG来源:https://blog.csdn.net/guanfengliang1988/article/details/92814376在一些业务场景中,会使用NOTEXISTS语句确保返回数据不存在于特定集合,部分同事会发现NOTEXISTS有些场景性能较差,甚至有些网上谣言说”NOTEXISTS不走索引”,哪对于NOTEXISTS语句,我们如何优化呢?以今天优化的SQL为例,
- Kevin‘s notes about Qt---Episode 4 多次点击按钮反复执行机械臂动作
Kevin__47
linux网络c++qt
原先版本SDK1.2.1-2020-04-02HMI界面4.0.6.135135控制器1.7.5升级程序0.6.4伺服版本不详(似乎也并不重要)前言在之前的工作中,这个问题并没有得到有效解决,情况如下:在之前版本的程序中,每次动作执行完后需要关闭Qt界面,下一次想要运行机械臂程序时,就算没有改动程序,也需要再次点击编译运行,可以正常运行。直接在Qt界面再次点击一开始放置的“StartMove”按钮
- matplotlib和seaborn绘图
Oliveee
https://www.jianshu.com/p/7a0eafdd1340《利用Python进行数据分析·第2版》第9章绘图和可视化matplotlib引入%matplotlibnotebookimportmatplotlib.pyplotasplt简单示例fig=plt.figure()ax1=fig.add_subplot(2,2,1)ax2=fig.add_subplot(2,2,2)ax
- 经典算法:双指针问题--数组合并
Franda914
数据结构与算法指针算法数据结构列表python
算法—程序的灵魂,没错就是灵魂!今天我们来聊聊关于双指针问题中的数组合并问题内容参考:《你也能看得懂的Python算法书》转载请标注:https://blog.csdn.net/qq_43582207python版本:Python3.7IDE:Jupyternotebook作者:Myapologize文章目录双指针问题数组合并1.合并有序数组双指针问题首先介绍一个概念:“指针”,他是编程语言中的一
- 时序预测相关论文阅读笔记
能力越小责任越小YA
论文阅读笔记时序预测Transformer
笔记链接:【有道云笔记】读论文(记录)https://note.youdao.com/s/52ugLbot用于个人学习记录。
- Visual Studio 快速跳转至特定程序行的快捷键
踏过山河,踏过海
c/c++知识二次稳固QtLinuxvisualstudioide
VisualStudio快速跳转至特定程序行的快捷键linuxWindows在VisualStudio中在VisualCode中在Notepad++中Win11中的普通记事本总结linux:numWindowsCtrl+G在VisualStudio中在VisualCode中Ctrl+G也是可以的在Notepad++中Ctrl+G也是可以的Win11中的普通记事本总结Ctrl+G在Windows中的
- ansible判定文件或者文件夹是否存在
yushi6310
ansibleansible
ansible的常用模块中没有判定当文件存在或者不存在时,执行某个执行使用下面方法能简单判定某个文件是否存在----name:judgeafileordirisexitsshell:ls/home/sfyignore_errors:Trueregister:result-shell:echo"fileexit"when:result|succeeded-shell:echo"filenotexit
- Jupyter切换Anaconda多个虚拟环境教程
无穷小乘以有界量
人生苦短我有Pythonpython人工智能大数据
项目场景:Anaconda安装之后,我们针对不同的项目,通常会建立不同的虚拟环境,以便实现不同的需求,安装不同的库。个人偏爱使用Jupyternotebook作为脚本窗口,它是一个Python数据图形化GUI展示工具,既能够编写代码,充当IDE,也能够将结果在代码下方进行展示,省略了console的作用,总之就是很方便,我很习惯,当然喜欢。问题描述:很尴尬,学了Anacondaprompt常用语句
- anaconda创建虚拟环境并配置到JupyterNotebook
wp_tao
机器学习Python全栈python开发语言
anaconda创建虚拟环境并配置到JupyterNotebook一、查看当前环境二、创建虚拟环境三、配置JupyterNotebook内核一、查看当前环境如上图所示,在开始菜单中扎到AnacondaPrompt(Anaconda)并打开。在命令行窗口中输入命令condainfo-e或者condaenvlist查看已安装的虚拟环境,如下图所示:其中,base环境即是当前的环境,也是anaconda
- Numpy Note
b1ue1ue1ue
numpy
创建numpy数组"""从python的list中创建数组"""np.array([1,2,3,4])"""创建(3,2)全为0float64的数组"""np.zeros((3,2))"""创建(2,4)全为1float64的数组"""np.ones((2,4))"""创建[3,7)的int一维数组"""np.arange(3,7)"""创建介于[0,1],5等隔分割的一维数组,即[0.0,0.2
- rust 生命周期标注
CAir2
rustrust开发语言生命周期生命周期标注标注
参考博客:https://blog.csdn.net/qq_46878411/article/details/123045316Note:Rust生命周期标注,仅仅是告诉编译器变量的生命周期是什么样的,并不会真正改变变量的生命周期生命周期标注方法:一个单引号+一个或者几个小写字母表示,生命周期符号放在&之后变量类型之前&i32//一个引用&a'i32//生命周期标准&a'muti32//生命周期标
- Python大数据之Hadoop学习——day06_hive学习02
笨小孩124
大数据hadoop学习
一.hive内外表操作1.建表语法create[external]table[ifnotexists]表名(字段名字段类型,字段名字段类型,...)[partitionedby(分区字段名分区字段类型)]#分区表固定格式[clusteredby(分桶字段名)into桶个数buckets]#分桶表固定格式[sortedby(排序字段名asc|desc)][rowformatdelimitedfiel
- 力扣刷题学习SQL篇——1-12 树节点(使用行转列union/条件判断case when)
萌新贤的日常
力扣题目sql数据库语句leetcode学习sql
力扣刷题学习SQL篇——1-12树节点(使用行转列union/条件判断casewhen)1、题目2、解法知识补充1、题目题目链接:https://leetcode.cn/problems/tree-node/submissions/SQL架构CreatetableIfNotExistsTree(idint,p_idint)TruncatetableTreeinsertintoTree(id,p_i
- 关于.csv文件
Caihua_X
wkmatlab
.csv文件是逗号分隔值(Comma-SeparatedValues)文件的扩展名。这种文件格式通常用于存储表格数据(如电子表格或数据库)并且具有以下特点:特点文本格式:CSV文件是纯文本文件,可以使用任何文本编辑器(如Notepad、SublimeText或VisualStudioCode)打开和编辑。结构简单:每一行表示一条记录,记录中的字段由逗号分隔。通用性强:CSV文件可以被许多应用程序读
- Vue 实现分页效果 下拉加载页面
喜欢硬编码
WEB开发vuejavascript
2020年10月27日17:57:58MR黎原文链接:文档:Vue.note链接:http://note.youdao.com/noteshare?id=7e281484b7c61482547950f5e93be591应用于PC端的网站项目使用Vue+axios+Element等组件进行开发,项目需求首页的提供需求展示列表页面需要下拉无刷新加载页面。页面数据初始化,Data数据中添加三个初始化的变
- js
Dontcare_f4ad
http://houdunren.gitee.io/note/js/1%20%E5%9F%BA%E7%A1%80%E7%9F%A5%E8%AF%86.html#tdz1.:一般放在最下边(因为防止逻辑错误而导致下面的html代码运行不了)2.console.log("。。")【打印在控制台,多用于调试】3.注释//和/**/4.变量声明:var(不推荐,会进行变量提升,没有块作用域,可能会造成全局
- es 时间字段聚合_Elasticsearch多字段聚合查询
大福 mkq
es时间字段聚合
最近用到es做人群画像,原始数据是带标签的pin包,为了方便查询,对数据做了预处理,按标签做聚合,由于标签的数量不固定,所以想起来用递归实现多字段聚合(三个及三个以上字段),源码在此,方便大家参阅。类似groupbyfield1,field2,field3...Note:groupFields存放聚合的字段ListgroupFields=newArrayList<>();groupFields.a
- C++ | Leetcode C++题解之第383题赎金信
Ddddddd_158
经验分享C++Leetcode题解
题目:题解:classSolution{public:boolcanConstruct(stringransomNote,stringmagazine){if(ransomNote.size()>magazine.size()){returnfalse;}vectorcnt(26);for(auto&c:magazine){cnt[c-'a']++;}for(auto&c:ransomNote){
- Xcode 15(iOS17)编译适配报错
孟宪磊mxl
xcodemacoside
报错:Notemplatenamed'unary_function'innamespace'std';didyoumean'__unary_function'?解决:Xcode点击Pods点击BuildSettings点击Basic找到AppleClang-Preprocessing下的PreprocessorMacros添加:_LIBCPP_ENABLE_CXX17_REMOVED_UNARY_
- 笔记本CPU天梯图(2024年8月),含AMD/骁龙等新CPU
Name_NaN_None
原创转载电脑游戏机人工智能计算机外设科技
原文地址(高清无水印原图/持续更新/含榜单出处链接):2024年8月笔记本CPU天梯图2024年8月笔记本CPU天梯图2024年8月5日更新日志:常规更新CinebenchR23、PassMark笔记本CPU天梯图,新增Geekbench6.2单核多核天梯图(Notebookcheck);移除鲁大师天梯图。----------手动分割线----------2024年7月17日更新日志:常见的快科技
- Keynote:苹果出品的演示软件,做动画分分钟吊打 PPT
彭宏豪
Keynote文/彭宏豪,笔名/安哥拉本文首发于「效率工具指南」Hello大家好,我是安哥。买了iMac将近一年,我还几乎没有在Mac上用过苹果推出的演示软件——Keynote。如果你也和我一样,对这款软件还不是很熟悉的话,可以看一下来自维基百科的介绍:Keynote是苹果推出的一款对标微软的PowerPoint的演示软件,上线于2003年,相比微软推出的PowerPoint晚了不少时间。图片如果
- 《CSS 揭秘》每章详细读书笔记
lawler61
原创csscss揭秘读书笔记
《CSS揭秘》每章详细读书笔记[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eS4SupjZ-1589817256003)(https://raw.githubusercontent.com/lawler61/blog/master/css/css-jiemi-notes/images/logo.jpg)]一、个人站点www.freeze61.me可直接复制html
- 6-正则表达式详细+数组note
娶个村姑当大妾
javascriptJS数组JS正则表达式正则表达式
1.正则表达式是一个描述字符模式的对象.1.创建方式1)正则表达式直接量varpattern=/s$/;2)RegExp()构造函数varpattern=newRegExp("s$");2.直接量字符正则表达式中所有字母和数字都是按照字面含义进行匹配的。字符匹配-----------------------字母和数字自身\t制表符\n换行符\v垂直制表符\f换页符\r回车符\xnn由十六进制数nn
- mysql-day02
luoyiang
mysql数据库
SQL-DDL--一个标准的数据库脚本写法,注意,数据库脚本的扩展名.sql--创建数据库mydb,设置编码集UTF8createdatabaseifnotexistsmydbcharactersetutf8;--切换到mydb数据库usemydb;--删除emp表结构droptableifexistsemp;--创建emp表结构createtableifnotexists`EMP`(`EMPNO
- vb6.0版本钢琴简谱播放程序代码QZQ-2024-8-30
EYYLTV
uiwindows前端vb6.0开发语言
OptionExplicitConstINVALID_NOTE=-1’Codeforkeyboardkeysthatwedon’thandleDimnumDevicesAsLong’numberofmidioutputdevicesDimcurDeviceAsLong’currentmidideviceDimhmidiAsLong’midioutputhandleDimrcAsLong’retur
- jupyter notebook修改默认浏览器(改chrome)
TravelLight92
jupyteridepython
可能是装了夸克网盘,注册表被动了,又或者是卸载S.B夸克的时候,注册表删多了,导致jupyter打开的默认浏览器变成了edge;由于我们基本得打开多个浏览器,所以还是要用chrome的。网上找了一些教程,都是一知半解,步骤都不详细,此处转载一个详细的,可行的办法,给他点个赞;将Chrome设置为Jupyter_notebook的默认浏览器-腾讯云开发者社区-腾讯云(tencent.com)
- HIS客户端无法登录系统,提示TNS-12518错误
wenzhongyan
ORACLE-问题处理TNS-12518HeapsizexxxxKexcee
基本要素接渠道反映,有个用户的部分客户端无法登录HIS系统,渠道无法排查问题原因,希望能远程协助排查问题分析步骤一:查看alert日志alert日志中出现HeapsizexxxxKexceedsnotificationthreshold(2048K)是10.2.0.1的一个典型问题,metalink上有如下解释:NOTE:Thedefaultthresholdin10.2.0.1is2M.Soth
- 设置jupyter notebook 默认打开chrome 浏览器
Cecilia__-__
jupyterchromeide
1、打开cmd2、输入jupyternotebook--generate-config3、显示出jupyter_notebook_config.py文件所在目录。4、找到这个文件,用NotePad++打开。5、在最后输入:importwebbrowserwebbrowser.register(‘chrome’,None,webbrowser.GenericBrowser(u’C:\\Users\l
- 关于jupyter notebook 的输出 (outputs )
码龄3年 审核中
jupyteridepython
jupyternotebook的输出(outputs)在元素达到一定的个数后,就会按一行一个元素进行展示,百来个还好,一旦过千,那滚轮势必撸冒烟,所以能不能解决呢?先看个例子,一个找质数、合数的函数cal3(125),返回的百多个结果被jupyternotebook按一行一个元素的方式展示,右侧有个已经很短的滑条了。截图如下:一个简单的解决办法是:使用print()函数,打印的结果就不会被jupy
- 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层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数