- flink自定义函数
逆风飞翔的小叔
flink入门到精通flink大数据bigdata
前言在很多情况下,尽管flink提供了丰富的转换算子API可供开发者对数据进行各自处理,比如map(),filter()等,但在实际使用的时候仍然不能满足所有的场景,这时候,就需要开发人员基于常用的转换算子的基础上,做一些自定义函数的处理1、来看一个常用的操作原始待读取的文件核心代码importorg.apache.flink.api.common.functions.FilterFunction
- 每日MySQL之005:SUSE linux下卸载MySQL
卸载这里的卸载,对应于之前的安装停止MySQL服务:db2a:~#servicemysqlstop找到所有的MySQL包:db2a:~#rpm-qa|grep-imysqlmysql-community-server-5.7.19-1.sles11mysql-community-common-5.7.19-1.sles11libqt4-sql-mysql-4.6.3-5.34.2mysql-com
- vue动态挂载组件
寒墨茗殇
vueelementvue.jsjavascript前端
vue动态挂载组件,比如弹窗组件main.js:首先创建公共js,并引入importcommonfrom'@/utils/common'Vue.use(common)confirmDialog.vue:然后写组件的样式和方法{{cancelText}}{{confirmText}}exportdefault{data(){return{dialogFn:null,content:'',title:
- Java实现项目1——弹射球游戏
lemon_sjdk
Java实战项目java游戏windows
项目:弹射球游戏项目描述:类似于乒乓球的游戏,游戏可以播放背景音乐,可以更换背景图,当小球碰到下面的挡板后会反弹,当小球碰到方块后会增加分数,当小球掉落会导致游戏失败,按下esc键游戏会暂停,音乐会停止播放,运行时会新建一个music文件夹,文件夹内放入任何音频文件都将作为背景音乐播放项目代码packageorg.example;importcom.google.common.base.Throw
- android adb连接_Android安全仔细检查您的adb连接
weixin_26727575
pythonmysqljava数据库https
androidadb连接We’vegotasayinginPortuguesethatitcanroughlybetranslatedto:我们有葡萄牙语谚语,它可以大致翻译为:Theonewhowarnsyou,isyourfriend!警告您的人是您的朋友!ThatiscommonlytranslatedtoEnglish:通常将其翻译成英文:Forewarnedisforearmed.有备则
- java 同步redis到mysql_Yii2 redis同步数据到mysql
兰艳知己
java同步redis到mysql
将redis数据写入mysql中:本次案例讲解将如何将商城中商品浏览次数通过缓存记录并写入mysql中具体的redis安装过程暂且就省略了.....一、安装redis插件|配置rediscomposerrequireyiisoft/yii2-redis找到common的config文件,在components下加入redis配置参数'redis'=>['class'=>'yii\redis\Con
- 华为OD机试专栏--1.3 算法基础:1.3.3 动态规划入门
xiaoheshang_123
华为OD机试真题题库解析华为od面试职场和发展算法
目录1.3算法基础1.3.3动态规划入门一、动态规划的核心思想1.1什么是动态规划?1.2动态规划的特点二、动态规划的基本步骤三、经典动态规划问题3.1斐波那契数列(FibonacciSequence)问题描述动态规划解法代码实现(Python)3.2背包问题(KnapsackProblem)问题描述动态规划解法代码实现(Python)3.3最长公共子序列(LongestCommonSubsequ
- 实体对象辨析(POCO、Entity、Model、DTO、BO、DO、PO)
weixin_33981932
runtime数据库java
为什么80%的码农都做不了架构师?>>>POCO(PlainOldCLRObject)源自JavaEE编程领域的POJO概念(2000年由MartinFowler提出)和POTS(PlainOldTelephoneService)概念。POCO被应用于面向.NET框架的CLR(CommonLanguageRuntime,公共语言运行时)。但是POCO本身不依赖于外部框架,它是PLAIN的。POCO
- 329. 矩阵中的最长递增路径C语言
给定一个mxn整数矩阵matrix,找出其中最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。你不能在对角线方向上移动或移动到边界外(即不允许环绕)。来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/longest-increasing-path-in-a-matrix著作权归领扣网络所有。商业转载请联系官方授权,非商业转载
- 力扣 329. 矩阵中的最长递增路径
乔碧萝·乔斯达
leetcode矩阵算法
跳转至矩阵中的最长递增路径https://leetcode-cn.com/problems/longest-increasing-path-in-a-matrix/题目给定一个mxn整数矩阵matrix,找出其中最长递增路径的长度。对于每个单元格,你可以往上,下,左,右四个方向移动。你不能在对角线方向上移动或移动到边界外(即不允许环绕)。示例1:输入:matrix=[[9,9,4],[6,6,8]
- dp力扣 329. 矩阵中的最长递增路径
329.矩阵中的最长递增路径题目:链接https://leetcode.cn/problems/longest-increasing-path-in-a-matrix/代码:classSolution{public:structnode{inti;intj;intv;};staticboolcmp(nodex,nodey){returnx.vver;intlongestIncreasingPath
- 基于FCGI的web后端服务程序设计
aiprtem
web嵌入式Linux前端
基于FCGI的web后端服务程序设计1.概述FastCGI(FCGI)是一种让交互程序与Web服务器通信的协议,是CGI(CommonGatewayInterface)的增强版本。FCGI进程可以常驻内存,处理多个请求,避免了CGI每次请求都需要创建新进程的开销。本文将详细介绍一个FCGI常驻服务程序的设计与实现,包括FCGI初始化、守护进程模式、服务启动和停止等关键环节。项目源码:https:/
- ESM 中的符号绑定 (Symbol Bindings)
liangshanbo1215
Javascriptjavascript前端vue.js
在ECMAScript模块(ESM)系统中,符号绑定是指模块导出和导入的变量、函数或类在模块间的连接方式。ESM使用静态绑定机制,与CommonJS的动态绑定有显著区别。基本符号绑定概念1.导出绑定(ExportBindings)//module.jsexportletcount=0;//导出变量绑定exportfunctionincrement(){count++;}//导出函数绑定export
- Turndown 项目教程
卓桔洋
Turndown项目教程turndownAnHTMLtoMarkdownconverterwritteninJavaScript项目地址:https://gitcode.com/gh_mirrors/tu/turndown项目介绍Turndown是一个用JavaScript编写的HTML到Markdown转换器。它旨在与CommonMark规范兼容,并提供了多种选项来定制输出样式。Turndown
- 微服务项目网关集成swagger
bbober
后端-微服务-框架微服务架构云原生
微服务项目网关中集成swagger并使用knife4j进行增强前言本文场景为:使用SpringCloud框架,MyBatisPlus持久层框架;注册中心:nacos,配置中心:nacos;主要模块有:业务模块、网关模块、common模块(共享);网关路由从配置中心动态拉取;其他情况动态调整。spring-boot-start版本:2.7.12(3版本以上只支持OpenApi3规范,差距较大)使用O
- Java手动打印执行过的sql
GoodStudyAndDayDayUp
javasql开发语言
1.拦截器packagecom.xxx.platform.common.interceptor;importcom.baomidou.dynamic.datasource.toolkit.DynamicDataSourceContextHolder;importcom.xxx.platform.common.aop.OLAPQuery;importcom.xxx.platform.constant
- CSS模块化开发
7Maggie_C
Web前端CSS
CSS模块化一、文件结构常见文件结构一个项目的CSS最基本结构通常是下面这样的:-base.css-common.css-pages.css复杂一点的项目可能是这样分:-base.css-header.css-footer.css-sidebar.css-forms.css-icons.css-buttons.css-dropdown.css-modals.css-layout.css-index
- Github 2024-07-07 开源项目日报 Top10
老孙正经胡说
github开源Github趋势分析开源项目PythonGolang
根据GithubTrendings的统计,今日(2024-07-07统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下:开发语言项目数量Python项目4Rust项目2C项目2C++项目1JavaScript项目1HTML项目1JupyterNotebook项目1非开发语言项目1免费编程书籍和学习资源清单创建周期:3762天协议类型:CreativeCommonsAttributio
- Web前端工程化
Web前端工程化前端工程化是指将软件工程的方法和原则应用到前端开发中,以提高开发效率、保证代码质量、便于团队协作和项目维护的一套体系化实践。以下是前端工程化的主要内容和实践:核心组成部分1.模块化开发JavaScript模块化:CommonJS、AMD、ESModuleCSS模块化:CSSModules、CSS-in-JS组件化:Vue/React/Angular组件体系微前端:将大型应用拆分为多
- Netty架构解析:从高性能到协议支持
lifallen
Nettyjava开发语言设计模式数据结构nio
Netty是一个异步事件驱动的网络应用程序框架,用于快速开发可维护的高性能协议服务器和客户端。主要应用场景高性能网络服务器(HTTP、WebSocket、TCP服务器)分布式系统通信(RPC框架、消息队列)协议实现(自定义协议、标准协议适配)网络代理和网关(负载均衡、API网关)核心基础(CoreFoundation)io.netty.common:提供通用的工具类、常量和基本抽象,例如Attri
- android源码中添加GPIO服务供上层调用
mmoyula
androidandroidframework
android源码中添加GPIO服务供上层调用指定make时需要编译进system中的服务添加源码编译添加api更新类与字段(此步骤可以通过makeupdate-api命令更新)注册服务Context中添加字段添加源码文件启动服务编写Service源代码指定make时需要编译进system中的服务以rk源码为例,在deveice/rockchip/common/device.mk中添加服务PROD
- 【前后端联调】MethodArgumentNotValidException
宣布无人罪
前后端联调javatomcatspringbootspring
【前后端联调】MethodArgumentNotValidException01问题描述前后端联调,前端传了一个参数是null,但是这个参数设置了校验不能为null,所以报了这个错误handleMethodArgumentNotValidException,132]-Validationfailedforargument[0]inpubliccom.ruoyi.common.core.domain
- STM32(X)精简库解读CMSIS
概述CMSIS全称为CommonMicrocontrollerSoftwareInterfaceStandard(通用微控制器软件接口标准),点此参考官方解读精简库CMSIS文件夹结构core:CMSISCortex-M3核心外设访问层源文件startup:启动文件stm32f10x.h:CMSISCortex-M3设备外设访问层头文件。这个文件包含了所有外设寄存器的定义,位定义和内存映射的STM
- docker-compose 启动MongoDB后 导入json数据
观梦
docker-composemongodbpythondockershell
docker-compose启动MongoDB后导入json数据compose目录具体方法Dockerfilesetup.shdocker-compose.ymlcompose目录├──app│├──blueprints││├──common…│├──config.py│├──Dockerfile│├──main.py│├──requirements.txt│├──templates││├──…│
- LeetCode-最长回文子串
踏实写代码,认真搞学术的小研
leetcode
classSolution:deflongestPalindrome(self,s:str)->str:n=len(s)#创建一个二维数组dp,用于记录回文子串的信息dp=[[False]*nfor_inrange(n)]start=0#记录最长回文子串的起始位置max_len=1#记录最长回文子串的长度#初始化单个字符和相邻两个字符是回文子串的情况foriinrange(n):dp[i][i]=
- 最长回文子串-leetCode-005
针对这个问题,共有四种解法,分别是暴力法,中心拓展法,动态规划,Manacher算法解法一:暴力法思路:枚举所有可能的子串,然后判断每个子串是否是回文串,最后找出最长的回文子串。classSolution{publicStringlongestPalindrome(Strings){intn=s.length();if(n==0){return"";}StringmaxPalindrome=s.s
- LeetCode-5.最长回文子串 C++实现
一.问题描述给你一个字符串s,找到s中最长的回文子串(如果字符串向前和向后读都相同,则它满足回文性。)。示例1:输入:s="babad"输出:"bab"解释:"aba"同样是符合题意的答案。示例2:输入:s="cbbd"输出:"bb"提示:1usingnamespacestd;classSolution{public:stringlongestPalindrome(strings){intn=s.
- hive中2种常用的join方式
潘达斯奈基~
大数据hivehadoop数据仓库
在最近的项目代码review中,发现之前代码小表关联大表的业务,小表经过过滤后,数据只有400多条,而大表有1600万条,之前的逻辑是使用的是小表join大表,运行时间1小时12分钟;经过优化后,使用了mapjoin的方式,将小表放到内存中,运行时间7分钟。借此机会回顾下hive中2种常用的join方式:MapJoin、ReduceJoin(也叫CommonJoin)应对场景:MapJoin:适用
- 四、idea环境配置,项目jar包上传nexus
鹏哥哥啊Aaaa
我的轮子intellij-ideajarjava
目录一、基础环境配置1.设置maven的setting.xml2.设置字符编码3.注解生效激活4.编译版本5.FileType过滤6.安装插件lombok二、common的项目结构和pom.xml三、common项目的代码四、上传jar包到nexus一、基础环境配置1.设置maven的setting.xmlE:\mavenSou
- java实现Email发送
Java实现Email发送首先导入依赖‘’org.apache.commonscommons-email1.4密码=授权码QQ邮箱授权码官网教程普通邮件发送:publicstaticvoidmain(String[]args)throwsException{//创建简单文本对象Emailemail=newSimpleEmail();//QQ邮箱的SMTP服务器地址为:smtp.qq.comemai
- redis学习笔记——不仅仅是存取数据
Everyday都不同
returnSourceexpire/delincr/lpush数据库分区redis
最近项目中用到比较多redis,感觉之前对它一直局限于get/set数据的层面。其实作为一个强大的NoSql数据库产品,如果好好利用它,会带来很多意想不到的效果。(因为我搞java,所以就从jedis的角度来补充一点东西吧。PS:不一定全,只是个人理解,不喜勿喷)
1、关于JedisPool.returnSource(Jedis jeids)
这个方法是从red
- SQL性能优化-持续更新中。。。。。。
atongyeye
oraclesql
1 通过ROWID访问表--索引
你可以采用基于ROWID的访问方式情况,提高访问表的效率, , ROWID包含了表中记录的物理位置信息..ORACLE采用索引(INDEX)实现了数据和存放数据的物理位置(ROWID)之间的联系. 通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.
2 共享SQL语句--相同的sql放入缓存
3 选择最有效率的表
- [JAVA语言]JAVA虚拟机对底层硬件的操控还不完善
comsci
JAVA虚拟机
如果我们用汇编语言编写一个直接读写CPU寄存器的代码段,然后利用这个代码段去控制被操作系统屏蔽的硬件资源,这对于JVM虚拟机显然是不合法的,对操作系统来讲,这样也是不合法的,但是如果是一个工程项目的确需要这样做,合同已经签了,我们又不能够这样做,怎么办呢? 那么一个精通汇编语言的那种X客,是否在这个时候就会发生某种至关重要的作用呢?
&n
- lvs- real
男人50
LVS
#!/bin/bash
#
# Script to start LVS DR real server.
# description: LVS DR real server
#
#. /etc/rc.d/init.d/functions
VIP=10.10.6.252
host='/bin/hostname'
case "$1" in
sta
- 生成公钥和私钥
oloz
DSA安全加密
package com.msserver.core.util;
import java.security.KeyPair;
import java.security.PrivateKey;
import java.security.PublicKey;
import java.security.SecureRandom;
public class SecurityUtil {
- UIView 中加入的cocos2d,背景透明
374016526
cocos2dglClearColor
要点是首先pixelFormat:kEAGLColorFormatRGBA8,必须有alpha层才能透明。然后view设置为透明glView.opaque = NO;[director setOpenGLView:glView];[self.viewController.view setBackgroundColor:[UIColor clearColor]];[self.viewControll
- mysql常用命令
香水浓
mysql
连接数据库
mysql -u troy -ptroy
备份表
mysqldump -u troy -ptroy mm_database mm_user_tbl > user.sql
恢复表(与恢复数据库命令相同)
mysql -u troy -ptroy mm_database < user.sql
备份数据库
mysqldump -u troy -ptroy
- 我的架构经验系列文章 - 后端架构 - 系统层面
agevs
JavaScriptjquerycsshtml5
系统层面:
高可用性
所谓高可用性也就是通过避免单独故障加上快速故障转移实现一旦某台物理服务器出现故障能实现故障快速恢复。一般来说,可以采用两种方式,如果可以做业务可以做负载均衡则通过负载均衡实现集群,然后针对每一台服务器进行监控,一旦发生故障则从集群中移除;如果业务只能有单点入口那么可以通过实现Standby机加上虚拟IP机制,实现Active机在出现故障之后虚拟IP转移到Standby的快速
- 利用ant进行远程tomcat部署
aijuans
tomcat
在javaEE项目中,需要将工程部署到远程服务器上,如果部署的频率比较高,手动部署的方式就比较麻烦,可以利用Ant工具实现快捷的部署。这篇博文详细介绍了ant配置的步骤(http://www.cnblogs.com/GloriousOnion/archive/2012/12/18/2822817.html),但是在tomcat7以上不适用,需要修改配置,具体如下:
1.配置tomcat的用户角色
- 获取复利总收入
baalwolf
获取
public static void main(String args[]){
int money=200;
int year=1;
double rate=0.1;
&
- eclipse.ini解释
BigBird2012
eclipse
大多数java开发者使用的都是eclipse,今天感兴趣去eclipse官网搜了一下eclipse.ini的配置,供大家参考,我会把关键的部分给大家用中文解释一下。还是推荐有问题不会直接搜谷歌,看官方文档,这样我们会知道问题的真面目是什么,对问题也有一个全面清晰的认识。
Overview
1、Eclipse.ini的作用
Eclipse startup is controlled by th
- AngularJS实现分页功能
bijian1013
JavaScriptAngularJS分页
对于大多数web应用来说显示项目列表是一种很常见的任务。通常情况下,我们的数据会比较多,无法很好地显示在单个页面中。在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能。既然在整个应用中这是一种很常见的需求,那么把这一功能抽象成一个通用的、可复用的分页(Paginator)服务是很有意义的。
&nbs
- [Maven学习笔记三]Maven archetype
bit1129
ArcheType
archetype的英文意思是原型,Maven archetype表示创建Maven模块的模版,比如创建web项目,创建Spring项目等等.
mvn archetype提供了一种命令行交互式创建Maven项目或者模块的方式,
mvn archetype
1.在LearnMaven-ch03目录下,执行命令mvn archetype:gener
- 【Java命令三】jps
bit1129
Java命令
jps很简单,用于显示当前运行的Java进程,也可以连接到远程服务器去查看
[hadoop@hadoop bin]$ jps -help
usage: jps [-help]
jps [-q] [-mlvV] [<hostid>]
Definitions:
<hostid>: <hostname>[:
- ZABBIX2.2 2.4 等各版本之间的兼容性
ronin47
zabbix更新很快,从2009年到现在已经更新多个版本,为了使用更多zabbix的新特性,随之而来的便是升级版本,zabbix版本兼容性是必须优先考虑的一点 客户端AGENT兼容
zabbix1.x到zabbix2.x的所有agent都兼容zabbix server2.4:如果你升级zabbix server,客户端是可以不做任何改变,除非你想使用agent的一些新特性。 Zabbix代理(p
- unity 3d还是cocos2dx哪个适合游戏?
brotherlamp
unity自学unity教程unity视频unity资料unity
unity 3d还是cocos2dx哪个适合游戏?
问:unity 3d还是cocos2dx哪个适合游戏?
答:首先目前来看unity视频教程因为是3d引擎,目前对2d支持并不完善,unity 3d 目前做2d普遍两种思路,一种是正交相机,3d画面2d视角,另一种是通过一些插件,动态创建mesh来绘制图形单元目前用的较多的是2d toolkit,ex2d,smooth moves,sm2,
- 百度笔试题:一个已经排序好的很大的数组,现在给它划分成m段,每段长度不定,段长最长为k,然后段内打乱顺序,请设计一个算法对其进行重新排序
bylijinnan
java算法面试百度招聘
import java.util.Arrays;
/**
* 最早是在陈利人老师的微博看到这道题:
* #面试题#An array with n elements which is K most sorted,就是每个element的初始位置和它最终的排序后的位置的距离不超过常数K
* 设计一个排序算法。It should be faster than O(n*lgn)。
- 获取checkbox复选框的值
chiangfai
checkbox
<title>CheckBox</title>
<script type = "text/javascript">
doGetVal: function doGetVal()
{
//var fruitName = document.getElementById("apple").value;//根据
- MySQLdb用户指南
chenchao051
mysqldb
原网页被墙,放这里备用。 MySQLdb User's Guide
Contents
Introduction
Installation
_mysql
MySQL C API translation
MySQL C API function mapping
Some _mysql examples
MySQLdb
- HIVE 窗口及分析函数
daizj
hive窗口函数分析函数
窗口函数应用场景:
(1)用于分区排序
(2)动态Group By
(3)Top N
(4)累计计算
(5)层次查询
一、分析函数
用于等级、百分点、n分片等。
函数 说明
RANK() &nbs
- PHP ZipArchive 实现压缩解压Zip文件
dcj3sjt126com
PHPzip
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启,具体开启方法就不说了,不同的平台开启PHP扩增的方法网上都有,如有疑问欢迎交流。这里整理一下常用的示例供参考。
一、解压缩zip文件 01 02 03 04 05 06 07 08 09 10 11
- 精彩英语贺词
dcj3sjt126com
英语
I'm always here
我会一直在这里支持你
&nb
- 基于Java注解的Spring的IoC功能
e200702084
javaspringbeanIOCOffice
- java模拟post请求
geeksun
java
一般API接收客户端(比如网页、APP或其他应用服务)的请求,但在测试时需要模拟来自外界的请求,经探索,使用HttpComponentshttpClient可模拟Post提交请求。 此处用HttpComponents的httpclient来完成使命。
import org.apache.http.HttpEntity ;
import org.apache.http.HttpRespon
- Swift语法之 ---- ?和!区别
hongtoushizi
?swift!
转载自: http://blog.sina.com.cn/s/blog_71715bf80102ux3v.html
Swift语言使用var定义变量,但和别的语言不同,Swift里不会自动给变量赋初始值,也就是说变量不会有默认值,所以要求使用变量之前必须要对其初始化。如果在使用变量之前不进行初始化就会报错:
var stringValue : String
//
- centos7安装jdk1.7
jisonami
jdkcentos
安装JDK1.7
步骤1、解压tar包在当前目录
[root@localhost usr]#tar -xzvf jdk-7u75-linux-x64.tar.gz
步骤2:配置环境变量
在etc/profile文件下添加
export JAVA_HOME=/usr/java/jdk1.7.0_75
export CLASSPATH=/usr/java/jdk1.7.0_75/lib
- 数据源架构模式之数据映射器
home198979
PHP架构数据映射器datamapper
前面分别介绍了数据源架构模式之表数据入口、数据源架构模式之行和数据入口数据源架构模式之活动记录,相较于这三种数据源架构模式,数据映射器显得更加“高大上”。
一、概念
数据映射器(Data Mapper):在保持对象和数据库(以及映射器本身)彼此独立的情况下,在二者之间移动数据的一个映射器层。概念永远都是抽象的,简单的说,数据映射器就是一个负责将数据映射到对象的类数据。
&nb
- 在Python中使用MYSQL
pda158
mysqlpython
缘由 近期在折腾一个小东西须要抓取网上的页面。然后进行解析。将结果放到
数据库中。 了解到
Python在这方面有优势,便选用之。 由于我有台
server上面安装有
mysql,自然使用之。在进行数据库的这个操作过程中遇到了不少问题,这里
记录一下,大家共勉。
python中mysql的调用
百度之后能够通过MySQLdb进行数据库操作。
- 单例模式
hxl1988_0311
java单例设计模式单件
package com.sosop.designpattern.singleton;
/*
* 单件模式:保证一个类必须只有一个实例,并提供全局的访问点
*
* 所以单例模式必须有私有的构造器,没有私有构造器根本不用谈单件
*
* 必须考虑到并发情况下创建了多个实例对象
* */
/**
* 虽然有锁,但是只在第一次创建对象的时候加锁,并发时不会存在效率
- 27种迹象显示你应该辞掉程序员的工作
vipshichg
工作
1、你仍然在等待老板在2010年答应的要提拔你的暗示。 2、你的上级近10年没有开发过任何代码。 3、老板假装懂你说的这些技术,但实际上他完全不知道你在说什么。 4、你干完的项目6个月后才部署到现场服务器上。 5、时不时的,老板在检查你刚刚完成的工作时,要求按新想法重新开发。 6、而最终这个软件只有12个用户。 7、时间全浪费在办公室政治中,而不是用在开发好的软件上。 8、部署前5分钟才开始测试。