- Camera2 CameraService 启动
yaoming168
CameraFramewrokandroid
文章目录frameworks/av/media/mediaserver/main_mediaserver.cppframeworks/av/media/mediaserver/Android.bpframeworks/native/include/binder/BinderService.hframeworks/av/services/camera/libcameraservice/CameraS
- DLNA(明基的返校讲座)
米丽
DLNA
数位家庭技术的两大标准DLNA是目前产业界最大的标准,DLNA建议采用UPnP这个业界标准。UPnP世界有七、八百家公司加入,在DLNA这一块有将近快三百家厂商加入,几乎市面上看的到的品牌都有加入这两大协会。这两个是非常显眼的工业标准,所以我今天会针对这两个做介绍,至于一些比较区域性的,如亚洲或北美的区域性标准就只会简单带过。在介绍这两个之后,会在介绍BenQ的ATC。ATC是前瞻技术中心,会介绍
- UPnP服务器(upnpserver)快速入门指南
郦祺嫒Amiable
UPnP服务器(upnpserver)快速入门指南upnpserverFastandlightupnpserverfornode项目地址:https://gitcode.com/gh_mirrors/up/upnpserver1.项目目录结构及介绍本项目upnpserver是一个基于Node.js实现的UPnP服务器。下面是其基本的目录结构概览:upnpserver│├──package.json
- Linux/Openwrt路由安装配置UPNP服务提高迅雷下载速度
榕树子
网络linuxupnp
Linux/Openwrt路由安装配置UPNP服务提高迅雷下载速度发布时间:September7,2012//分类:OpenWrt//1Comment路由器下电脑为实现互联网端到端的连接需要配置DNAT(端口映射),UPNP就相当于自动化DNAT的实现,路由和客户端软件都需支持UPNP。Openwrt路由下安装UPNP服务:123#http://www.haiyun.meopkgupdateopk
- 不同网络之间投屏原理
是毛毛吧
网络
不同网络之间投屏主要依靠以下原理:1.DLNA(数字生活联盟):DLNA是一种允许设备在家庭网络中共享多媒体内容的标准。投屏时,源设备和目标设备都要支持DLNA协议。源设备将多媒体内容通过DLNA协议传输到目标设备上,目标设备通过DLNA协议接收并播放内容。2.Miracast:Miracast是Wi-Fi联盟推出的一种用于无线投屏的标准。它使用Wi-FiDirect技术在源设备和目标设备之间建立
- Android多媒体开发【4】-- 上层mediaPlayer 是如何调到Stagefright的【2】【图解】
tx3344
【架构与思想】【Android】【多媒体技术】Android多媒体开发音视频开发
基于android4.1.1源码【1】mediaserver启动后会把media相关一些服务添加到servicemanager中,其中就有mediaPlayerService.这样应用启动前,系统就有了mediaPlayerService这个服务程序。intmain(intargc,char**argv){spproc(ProcessState::self());spsm=defaultServi
- Android——Mediaplay 框架调用
南丶烟
【Android—框架】androidmediaplaybinderserver
基于android4.1.1源码【1】mediaserver启动后会把media相关一些服务添加到servicemanager中,其中就有mediaPlayerService.这样应用启动前,系统就有了mediaPlayerService这个服务程序。[java]viewplaincopyintmain(intargc,char**argv){spproc(ProcessState::self()
- ARM Linux下UPnP使用
无人知晓万事万物
我的linux学习历程linux文档网络xmlvbscript浏览器
一、UPnP简介UPnP(UniversalPlugandPlay)技术是一种屏蔽各种数字设备的硬件和操作系统的通信协议。它是一种数字网络中间件技术,建立在TCP/IP、HTTP协议之上,采用XML来描述设备和控制信息。这种技术最开始是被微软,因特尔等公司使用在数字家庭中的,用来在家庭网络中完成多媒体资源共享,家电一体化等功能,例如在各种家电上实现IP数字化,加入网络传输和控制部分,从而让家电能组
- 部署webrtc开源工程owt
草根大哥
流媒体webrtc
Owt是intel领导下的一个开源项目,GitHub-open-webrtc-toolkit/owt-server:Generalserver(streaming/conference/transcoding/anayltics)forOWT.(A.k.a.MediaServer)它是支持MCU方式的一个webrtc解决方案。Keyfeatures:Distributed,scalable,and
- 系统网络发现打不开
Liuyc丶
···打开以下服务FunctionDiscoveryResourcePublicationSSDPDiscoveryUPnPDeviceHost
- Binder初探
holdfishpalm
提到Binder不得不说进程间通信(IPC,Interprocesscommunication)了,Linux现有管道、消息队列、共享内存、套接字、信号量、信号这些IPC机制,Android额外还有BinderIPC机制,AndroidOS中的Zygote进程的IPC采用的是Socket机制,在上层systemserver、mediaserver以及上层App之间更多的是采用BinderIPC方式
- 智能路由器 端口映射 (UPnP) Padavan内网端口映射配置方法
tekin
智能路由器智能路由器UPNP端口映射UPnPPadavan
新版本Padavan4.4内核的端口映射配置和老版本的不太一样,因为新版本默认是启用的UPnP端口映射,同时默认使用的是IGDUPnP自动端口映射,UPnP名词解释:UPnP通用即插即用,是一组协议的统称,是一种基于TCP/IP、UDP和HTTP的分布式、开放体系,不能简单理解为UPnP=“自动端口映射”。由操作系统和应用与路由器协商开放哪个端口,必须同时满足支持UPnP,缺一不可,否则不能实现。
- Android 13(T) - Media框架(3)- mediaserver
青山渺渺
android
上一节我们了解到android_media_MediaPlayer.cpp中封装的是MediaPlayernative实现,这一节我们就来了解它的内部实现。1、MediaPlayerMediaPlayernative代码位于frameworks/av/media/libmedia/mediaplayer.cpp先来看MediaPlayer的声明,它继承于BnMediaPlayerClient,包含
- metartc5_jz源码阅读-yang_sdp_genLocalSdp2
王方帅
metartc5_jz源码阅读c语言音视频实时音视频p2p
int32_tyang_sdp_genLocalSdp2(YangRtcSession*session,int32_tlocalport,char*dst,YangStreamOptTyperole){int32_tmediaServer=session->context.avinfo->sys.mediaServer;int32_tredPayloadtype=1;char*src=(char*
- iOS UPNP之DMS具体操作,让手机成为DMS服务器
帅聪哥
前沿上次在Upnp实现DLNA投屏文章中,有位哥们提醒我了,提出如何将手机本地的图片和音乐推到设备上进行操作。正文鉴于之前的项目经验,将原项目关键代码整理了一下,可以说给大家提供一个真实案例的参考吧。首先我们要明白如何实现这个功能,1、注册相关服务,让手机成为DMS端,常见的是itunes音乐服务和图片服务两种,这里我用的是Platinum第三方框架/**启动itunes音乐服务*/-(void)
- 智能家居设想
smallbee12345
网络
网络发展到现在,我们已经实现的有很多,但还有许多目标没有达到。例如在网络上,像平时用遥控器那样,操作家用电器或网络远端的电器设备等等。实现诸如此类的效果,将是有巨大需求的应用技术。如果实现通过网络用UPnP控制家用设备,将给我们的生活带来很大的方便和很多新的体验。所以windows系统也加入了UPnP协议,因为UPnP是一个协议,UPnP的使用可跨越各种操作系统平台,开发应用程序也没有开发语言的局
- 家庭 PCDN 选择(京东云、甜糖、网心云、超点云、猕猴桃)
shellblock
京东云推荐程度:⭐️⭐️⭐️⭐️⭐️AX1800【适合200m以上宽带】:https://u.jd.com/ZwfmMIp鲁班【1年包回本,适合200m以下宽带】:https://u.jd.com/ZtfhP2q优点:无需公网IP,大厂靠谱,可以当路由器用?缺点:需要购买专用设备,部署周期长达7天猕猴桃推荐程度:⭐️⭐️⭐️⭐️⭐️账号注册优点:支持多线汇聚,网络只需要设置好upnp即可(多线用户
- 解决npm,pnpm,yarn等安装electron超时等问题
1024小神
HTML前端npmelectron前端
我在安装electron的时候,出现了超时等等各种问题:(RequestError:connectETIMEDOUT20.205.243.166:443)npmyarn:RequestError:connectETIMEDOUT20.205.243.166:443RequestError:sockethangupnpmERR!Cannotreadpropertiesofnull(reading'm
- DLNA投屏失败时添加标签
MccReeee
在使用DLNA_UPnP进行iOS投屏时发现失败失败信息是501Currentstateofservicepreventsinvokingthataction.Actionmethodinvocationfailed:java.lang.reflect.UndeclaredThrowableException解决办法是要加一个DIDL-Lite标签#defineVideoDIDL@"VideoAn
- 华为路由器分析
萍水间人
华为路由器HuaweiHG532漏洞复现过程漏洞分析这次出问题的点是upnp程序home/oit/Downloads/_routerHG532e.rar-0.extracted/_HG532eV100R001C01B020_upgrade_packet.bin.extracted/squashfs-root/bin[oit@ubuntu][18:36]>fileupnpupnp:ELF32-bit
- Serviio Pro for Mac(DLNA投屏软件)中文破解版
希希的莫斯呱
ServiioProforMac破解版是一款强大的DLNA媒体服务器,基于Java技术,能将您电脑中的音乐、视频、图像等媒体文件瞬间分享到您的网络电视机、蓝光播放器和游戏控制台中,操作便捷简单,欢迎下载!原文及下载地址:https://www.mac69.com/mac/4324.htmlServiioProforMac破解版安装教程ServiioProforMac破解版镜像包下载完成后打开,双击
- 记一次 甜糖 网络类型1
几簟生凉
总之,你的lan口到wan口的IP动态伪装是不是打开了,如果是,关上就得了。想知道我怎么知道的,再听我细细道来。目前状态路由器OpenWRT网心云现实NAT类型为映射公网型,工作良好路由器Upnp可以看到甜糖开启的端口转发甜糖星愿APP网络类型检测结果是“检测未通过,反连IP为路由LAN口IP,无法识别来源。该问题可能由路由器UPnP/DMZ功能异常导致”查看详细日志显示“Acceptconnec
- Android 7.0 Camera架构源码分析
longroey
andriod系统
Android7.0之前CameraService是在mediaserver进程中注册的,看下Android6.0的代码://path:frameworks\av\media\mediaserver\main_mediaserver.cppintmain(){spproc(ProcessState::self());spsm=defaultServiceManager();ALOGI("Servi
- docker创建媒体库
Henry_Wu001
MakeLifeEasyEnlightenmentdockerdocker容器运维
1)尝试了minidlna,已经过期的协议;2)尝试了plex和plexpass,限制太大,本地库不好直接添加;3)embyserver,开源可用。(DockerHub)其他10中介绍如下(10BestFree&OpensourceHomeMediaServerOSSoftware2021-H2SMediahttps://www.how2shout.com/tools/best-free-open
- linux npm start 保持后台运行
WXL_JIANSHU
cover:https://blog.csdn.net/qq_27384769/article/details/78849930后台进程运行nohupwhichnohup.bash_profile中并source加载如果没有就安装吧yumprovides*/nohupnohupnpmstart&原程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用。停止程序ps-ef
- Redmi路由器AC2100之Padavan设置优化
maoerduoduo
继红米AC2100路由器刷机教程(附避坑秘籍)之后,开始对Redmi路由器AC2100的Padavan系统进行设置优化。1、拨号联网。2、设置IPV6协议3、设置DHCP和DNS4、设置5G和2.4G无线功能,启用160Mhz信道带宽5、启用UPNP自动端口映射6、修改路由器管理员账号密码7、查看wan口流量情况,确认配置正常。至此,设置完毕,可以开始愉快的玩耍了!著作权归作者所有。商业转载请联系
- java实现局域网内视频投屏播放(三)投屏原理
@summer@
服务器运维
常见投屏方案常见的投屏方案主要有以下几种:DLNADLNA的全称是DIGITALLIVINGNETWORKALLIANCE(数字生活网络联盟)。DLNA委员会已经于2017年1月5日正式解散,原因是旧的标准已经无法满足新设备的发展趋势,DLNA标准将来也不会再更新。但是DLNA协议的使用依然比较广泛,短时间内不会退出历史舞台,在某些情况下依然是最好的解决方案之一。DLNA不是技术,而是一种方案,一
- 面向物联网终端的安全防护机制
萍水相逢_d272
针对漏洞的恶意行为分析我们共捕获到4种针对UPnP漏洞的利用行为1,如表4.7所示。从中可以看出,这些漏洞均为远程命令执行类漏洞。另外我们也发现,当漏洞出现在特定端口时,攻击者一般不会经过UPnP的发现阶段,image1需要说明的是,由于UPnP的SOAP服务端口众多,而SSDP服务中只能标识一个SOAP端口,因此,我们主要是对SOAP相关端口进行了监听。如果攻击者首先进行SSDP服务发现,再根据
- 【计算机网络】15、NAT、NAPT 网络地址转换、打洞
呆呆的猫
计算机网络计算机网络NATfrp
文章目录一、概念二、分类(主要是传统NAT)2.1基本NAT2.2NAPT三、访问NAT下的内网设备的方式3.1多拨3.2端口转发、DMZ3.3UPnPIGD、NAT-PMP3.4服务器中转:frp内网穿透3.4.1NAT打洞3.4.2NAT类型与打洞成功率3.4.2.1完全圆锥形NAT(FullconeNAT)3.4.2.2受限圆锥形NAT(RestrictedconeNAT)3.4.2.3端口
- nginx nohup后台运行程序和关闭程序
温暖柏林的伤
后台运行node服务在xshell中运行如下nohupnpmrunstart&然后在XShell中提示了nohup成功后:nohup:ignoringinputandappendingoutputto‘nohup.out’然后按键盘任意键,回到xshell输入命令窗口,然后再XShell中输入:exit退出终端,这时候你的node就作为后台服务挂在linux上了。ps-A查看后台运行程序进程les
- 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层,要保证针对主库进行写操作,对多个从库进行读操作。当然在一些请求中,为了避免主从复制的延迟导致的数据不一致性,部分的读操作也要到主库上。(这种需求一般通过业务垂直分开,比如下单业务的代码所部署的机器,读去应该也要从主库读取数