- 23丨MySQL:数据库级监控及常用计数器解析(下)
ths512
jemter压力测试
上一篇文章中,我们讲了有关数据库的全局分析,那么在今天的文章中,我们继续看看在数据库中,如何做定向分析。还记得我在上篇文章中提到的工具吗?mysqlreport、pt-query-digest和mysql_exportor+Prometheus+Grafana。我们在上一篇中已经讲完了mysqlreport,今天我们来看看剩下的这几个。定向抓取SQL:pt-query-digestpt-query
- MySQL status查看工具mysqlreport
iteye_5617
mysql数据库
[quote]mysqlreportmakesafriendlyreportofimportantMySQLstatusvalues.mysqlreporttransformsthevaluesfromSHOWSTATUSintoaneasy-to-readreportthatprovidesanin-depthunderstandingofhowwellMySQLisrunning.mysqlr
- mysqlreport 中文文档
yishouwangnian
数据库
mysqlreport以很友好的方式显示MySQL状态变。事实上,它几乎报告了所有的状态。不像SHOWSTATUS只是在显示了100多个状态值,mysqlreport则以人性化的方式阐释和格式化了这些状态值,大大增加了其可读性。可以点击这里查看mysqlreport的例子。mysqlreport的好处是可以快速的查看各种状态参数组,从而了解服务器的运行状态情况,而无需从SHOWSTATUS的结果中
- mysql的监控工具mysqlreport安装和说明
幸福丶如此
mysql数据库mysql监控工具mysqlrepor
mysqlreport以很友好的方式显示mysql状态变。事实上,它几乎报告了所有的状态。不像showstatus只是在显示了100多个状态值,mysqlreport则以人性化的方式阐释和格式化了这些状态值,大大增加了其可读性。mysqlreport的好处是可以快速的查看各种状态参数组,从而了解服务器的运行状态情况,而无需从showstatus的结果中人工计算。例如索引读取比率是个重要的参数,但是
- 25、mysqlreport(my.cnf)调优工具
何以.解忧
25.1、mysqlreport介绍:mysqlreport以很友好的方式显示MySQL状态变。事实上,它几乎报告了所有的状态。不像SHOWSTATUS只是在显示了100多个状态值,mysqlreport则以人性化的方式阐释和格式化了这些状态值,大大增加了其可读性。25.2、安装mysqlreport:MySQLReport是用perl语言编写,所以想要运行它首先需要安装perl环境;它还要与My
- 性能分析之MySQL Report分析
软件测试学习提升
MySQLreport分析基本信息mysql当前的版本,运行的时间,以及当前系统时间。MySQL服务器版本信息表明MySQL服务器包含和不包含哪些特点。MySQL服务器运行时间表明报告价值的代表性。服务器运行时间对于评估报告是很重要的,因为如果服务器不运行几个小时的话,输出报告有可能存在曲解和误导性。有时甚至运行几个小时时间都是不够的,比如,MySQL服务器运行了午夜的6个小时几乎没有业务访问过。
- mysqlreport 安装&使用
kaibisky
安装包:mysqlreport-3.5.tgz下载地址:http://hackmysql.com/scripts/mysqlreport-3.5.tgz安装办法:[root@nagios~]#tar-xvfmysqlreport-3.5.tgz使用办法:[root@nagios~]#cdmysqlreport-3.5[
[email protected]]#perlmysqlrep
- mysql innodb的监控(系统层,数据库层)
mysqlinnodb的监控(系统层,数据库层)关于MySQL的监控,mysql提供了数据采集的命令,比如showstatus命令或者读取数据库informat_schema的GLOBAL_STATUS对象;也可以用一些现成的监控工具进行查询,目前用的比较多的innotop、mysqlreport、mtop、mytop,还有淘宝perl语言研发的orzdba。就监控的指标而言,有系统层面的,数据库
- MySQL 线程池
王之子
阅读更多MySQL采用多线程来处理并发的连接,通过mysqlreport中的Threads部分,我们可以看到线程创建的统计结果:每秒创建43.6个线程,虽然创建线程的开销不值一提,但是当系统比较繁忙的时候,我们当然不希望再给它添麻烦。一个比较好的办法是在应用中尽量使用持久连接,这将在一定程度上减少线程的重复创建。另一方面,从上面的Cache=0可以看出,这些线程并没有被复用,我们可以在my.cnf
- MySQL 线程池
王之子
阅读更多MySQL采用多线程来处理并发的连接,通过mysqlreport中的Threads部分,我们可以看到线程创建的统计结果:每秒创建43.6个线程,虽然创建线程的开销不值一提,但是当系统比较繁忙的时候,我们当然不希望再给它添麻烦。一个比较好的办法是在应用中尽量使用持久连接,这将在一定程度上减少线程的重复创建。另一方面,从上面的Cache=0可以看出,这些线程并没有被复用,我们可以在my.cnf
- MySQL 临时表
王之子
阅读更多我们会在一些SQL查询中分析出现Usingtemporary的状态,这意味着查询过程中需要创建临时表来储存中间数据,我们需要通过合理的索引来避免它。另一方面,当临时表在所难免时,我们也要尽量减少临时表本身的开销,通过mysqlreport报告中的CreatedTemp部分,我们可以看到:MySQL可以将临时表创建在磁盘(Disktable),内存(Table)以及临时文件(File)中,显
- MySQL 临时表
王之子
阅读更多我们会在一些SQL查询中分析出现Usingtemporary的状态,这意味着查询过程中需要创建临时表来储存中间数据,我们需要通过合理的索引来避免它。另一方面,当临时表在所难免时,我们也要尽量减少临时表本身的开销,通过mysqlreport报告中的CreatedTemp部分,我们可以看到:MySQL可以将临时表创建在磁盘(Disktable),内存(Table)以及临时文件(File)中,显
- Mysql 之 性能分析(mysqlreport工具)
wx592bc92b285c7
Mysql性能分析关系型数据库
一、mysqlreport作用进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在;而SHOWSTATUS输出的报告正是用来计算性能瓶颈的参考数据。mysqlreport不像SHOWSTATUS那样简单的罗列数据,而是对这些参考数据加以融合计算,整理成一个个优化参考点,然后就可以根据这个优化参考点的值以及该点的衡量标准,进行对应调整。一、mysqlreport安装[root@localh
- 运维知识体系之web应用
lnredone
软件web服务器知识应用服务
web服务器软件序号名称版本号备注1apachehttpd-2.4.3.tar.gzlamp2aprapr-1.4.6.tar.bz23apr-utilapr-util-1.5.1.tar.bz24mysqlmysql-5.5.29.tar.gz5cmakecmake-2.6.4-7.el5.i386.rpm6mysqlreportmysqlreport-3.5.gz7phpphp-5.4.11.
- windows下配置mysql数据库监视工具Mysqlreport
reblue520
该工具除了可以监控本机Mysql数据库外,也可以监控远程服务器mysql数据库需要的工具:1:perl脚本解析工具安装:http://www.activestate.com/activeperl/ 2:mysqlreport的perl脚本代码:http://hackmysql.com/mysqlreport3:单独安装apache太麻烦,直接用wamp包步骤:1、windows安装activepe
- The Guide To Understanding mysqlreport
mysqlreport
The Guide To Understanding mysqlreport This guide to understanding
mysqlreport explains everything that mysqlreport can report. It also teaches how to interpret and understand all the values in cont
- MySQL的性能调优工具:比mysqlreport更方便的tuning-primer.sh
mysqlreport
年初的时候收藏过一篇关于mysqlreport的报表解读,和内置的show status,和show variables相比mysqlreport输出一个可读性更好的报表;但Sundry MySQL提供的脚本相比mysqlreport更进一步:除了报表还进一步提供了修改建议。安装和使用非常简单:
wget
http://www.day32.com/MySQL/tuning-primer
- mysqlreport
mysqlreport
原文:http://raocl.wordpress.com/2011/01/10/test/ ,官方也有相关文档http://hackmysql.com/mysqlreportguide。不过我还是习惯看中文的。如果对某些中文翻译有疑惑可以对照着看中英文。
mysqlreport是mysql性能监测时最常用的工具,对了解mysql运行状态和配置调整都有很大的帮助。找了一些mysql的资料,发现大
- MySQL效能监控工具mysqlreport安装和中文说明
mysqlreport
管理 mysql 最让人困扰的就是如何有效的掌握 MySQL 的健康状况,因为 MySQL 虽然有提供许多系统变量值供您参考,但这些零散的数据若要手动搜集与过滤将会是一件十分没有效率的事情(除非您写 Scripts 去分析)。而接下来要介绍的这套 “工具” 其实是由 hackmysql.com 的站长所撰写的 perl Scritps,旨在协助 MySQL
- mysql性能优化工具mysqlreport
mysqlreport
进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在;而SHOW STATUS输出的报告正是用来计算性能瓶颈的参考数据。mysqlreport不像SHOW STATUS那样简单的罗列数据,而是对这些参考数据加以融合计算,整理成一个个优化参考点,然后DBA就可以根据这个优化参考点的值以及该点的衡量标准,进行对应调整。这篇文章既不分析mysqlreport的报告含义,也不说明优化参考点的计算
- MySQL的性能调优工具
mysql
转载:MySQL的性能调优工具:比mysqlreport更方便的tuning-primer.sh
年初的时候收藏过一篇关于 mysqlreport 的报表解读,和内置的 show status,和 show variables 相比 mysqlreport 输出一个可读性更好的报表;但 Sundry MySQL 提供的脚本相比 mysqlreport 更进一
- mysql report 使用 转帖
mysql
mysqlreport 详解 2010-05-16 23:16
进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在;而SHOW STATUS输出的报告正是用来计算性能瓶颈的参考数据。mysqlreport不像SHOW STATUS那样简单的罗列数据,而是对这些参考数据加以融合计算,整理成一个个优化参考点,然后DBA就可以根据这个优化参考点的值以及该点的衡量标准,进行对
- mysqlreport的使用
guogang83
mysql参数怎么调是个问题,如果是Oracle,数据库报告上有很多建议,非常直观。mysql也有一个小工具mysqlreport,来统计一些信息指导调参数,最好是写一个任务,一个小时执行一次,这样可以看到高峰、低峰时期的统计信息,更有利于参数调优。1.先下载dbi、dbd-mysql、mysqlreport-3.5。2.安装dbi和dbd-mysql,安装之前确认安装过perl。perlM
- 数据库性能优化(MySQL)
liuhao_sh
序: 即使有较长的缓存有效期和较理想的缓存命中率,但是缓存的创建和缓存过期后的重建都是需要访问数据库的。对数据库写操作不是很容易引入缓存策略。11.1查看数据库状态 可以通过showstatus、showinnodbstatus来查看MySQL数据库的状态,使用mysqlreport这个第三方工具可使数据库状态报告更好看(mysqlreport本质是通过MySQL内部命令和工具来统计状
- Mysql查询优化
username2
mysqlreport查看数据库的执行情况 1下载mysqlreport2安装的时候报错,因为没有安装DBD 解决方式:shell>perl-MCPAN-eshell cpan>installDBI cpan>installDBD::mysql安装成功。 3使用http://blog.chinaunix.net/uid-24426415-id-77301.html 4连接数据库 perlmysq
- MySQL优化步骤和my.cnf优化配置
五大三粗
1、查看机器配置,指三大件:cpu、内存、硬盘2、查看mysql配置参数3、查看mysql运行状态,可以用mysqlreport工具来查看4、查看mysql的慢查询依次解决了以上问题之后,再来查找程序方面的问题。my.cnf缓存优化在my.cnf中添加/修改以下选项:#取消文件系统的外部锁skip-locking#不进行域名反解析,注意由此带来的权限/授权问题skip-name-resolve#索
- mysqlreport指南
hongtoushizi
mysqlreport
mysqlreport是mysql性能监测时最常用的工具,对了解mysql运行状态和配置调整都有很大的帮助。找了一些mysql的资料,发现大多数是关于php+mysql开发的,服务配置基本就是固定的几条。干脆找上mysqlreport的官网,啃下来这篇指南。翻译都是随着我个人的语言习惯,对直接能用mysql命令上看到结果的英文则保留下来。方便以后查找:原文地址:http://hackmysql.c
- mysqlreport指南
hongtoushizi
mysqlmysqlreport
mysqlreport是mysql性能监测时最常用的工具,对了解mysql运行状态和配置调整都有很大的帮助。找了一些mysql的资料,发现 大多数是关于php+mysql开发的,服务配置基本就是固定的几条。干脆找上mysqlreport的官网,啃下来这篇指南。翻译都是随着我个人的语言 习惯,对直接能用mysql命令上看到结果的英文则保留下来。方便以后查找:
原文地址:http://hackmys
- mysqlreport使用详解
yan_ruo_gu
mysql调优mysql优化mysqlreport
进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在;而SHOWSTATUS输出的报告正是用来计算性能瓶颈的参考数据。mysqlreport不像SHOWSTATUS那样简单的罗列数据,而是对这些参考数据加以融合计算,整理成一个个优化参考点,然后就可以根据这个优化参考点的值以及该点的衡量标准,进行对应调整。一、安装:下载mysqlreport工具,直接解压即可,下载地址: http:/
- mysqlreport使用详解
yan_ruo_gu
mysql优化mysql调优mysqlreport数据库
进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在;而SHOWSTATUS输出的报告正是用来计算性能瓶颈的参考数据。mysqlreport不像SHOWSTATUS那样简单的罗列数据,而是对这些参考数据加以融合计算,整理成一个个优化参考点,然后就可以根据这个优化参考点的值以及该点的衡量标准,进行对应调整。一、安装:下载mysqlreport工具,直接解压即可,下载地址:http://ha
- mondb入手
木zi_鸣
mongodb
windows 启动mongodb 编写bat文件,
mongod --dbpath D:\software\MongoDBDATA
mongod --help 查询各种配置
配置在mongob
打开批处理,即可启动,27017原生端口,shell操作监控端口 扩展28017,web端操作端口
启动配置文件配置,
数据更灵活 
- 大型高并发高负载网站的系统架构
bijian1013
高并发负载均衡
扩展Web应用程序
一.概念
简单的来说,如果一个系统可扩展,那么你可以通过扩展来提供系统的性能。这代表着系统能够容纳更高的负载、更大的数据集,并且系统是可维护的。扩展和语言、某项具体的技术都是无关的。扩展可以分为两种:
1.
- DISPLAY变量和xhost(原创)
czmmiao
display
DISPLAY
在Linux/Unix类操作系统上, DISPLAY用来设置将图形显示到何处. 直接登陆图形界面或者登陆命令行界面后使用startx启动图形, DISPLAY环境变量将自动设置为:0:0, 此时可以打开终端, 输出图形程序的名称(比如xclock)来启动程序, 图形将显示在本地窗口上, 在终端上输入printenv查看当前环境变量, 输出结果中有如下内容:DISPLAY=:0.0
- 获取B/S客户端IP
周凡杨
java编程jspWeb浏览器
最近想写个B/S架构的聊天系统,因为以前做过C/S架构的QQ聊天系统,所以对于Socket通信编程只是一个巩固。对于C/S架构的聊天系统,由于存在客户端Java应用,所以直接在代码中获取客户端的IP,应用的方法为:
String ip = InetAddress.getLocalHost().getHostAddress();
然而对于WEB
- 浅谈类和对象
朱辉辉33
编程
类是对一类事物的总称,对象是描述一个物体的特征,类是对象的抽象。简单来说,类是抽象的,不占用内存,对象是具体的,
占用存储空间。
类是由属性和方法构成的,基本格式是public class 类名{
//定义属性
private/public 数据类型 属性名;
//定义方法
publ
- android activity与viewpager+fragment的生命周期问题
肆无忌惮_
viewpager
有一个Activity里面是ViewPager,ViewPager里面放了两个Fragment。
第一次进入这个Activity。开启了服务,并在onResume方法中绑定服务后,对Service进行了一定的初始化,其中调用了Fragment中的一个属性。
super.onResume();
bindService(intent, conn, BIND_AUTO_CREATE);
- base64Encode对图片进行编码
843977358
base64图片encoder
/**
* 对图片进行base64encoder编码
*
* @author mrZhang
* @param path
* @return
*/
public static String encodeImage(String path) {
BASE64Encoder encoder = null;
byte[] b = null;
I
- Request Header简介
aigo
servlet
当一个客户端(通常是浏览器)向Web服务器发送一个请求是,它要发送一个请求的命令行,一般是GET或POST命令,当发送POST命令时,它还必须向服务器发送一个叫“Content-Length”的请求头(Request Header) 用以指明请求数据的长度,除了Content-Length之外,它还可以向服务器发送其它一些Headers,如:
- HttpClient4.3 创建SSL协议的HttpClient对象
alleni123
httpclient爬虫ssl
public class HttpClientUtils
{
public static CloseableHttpClient createSSLClientDefault(CookieStore cookies){
SSLContext sslContext=null;
try
{
sslContext=new SSLContextBuilder().l
- java取反 -右移-左移-无符号右移的探讨
百合不是茶
位运算符 位移
取反:
在二进制中第一位,1表示符数,0表示正数
byte a = -1;
原码:10000001
反码:11111110
补码:11111111
//异或: 00000000
byte b = -2;
原码:10000010
反码:11111101
补码:11111110
//异或: 00000001
- java多线程join的作用与用法
bijian1013
java多线程
对于JAVA的join,JDK 是这样说的:join public final void join (long millis )throws InterruptedException Waits at most millis milliseconds for this thread to die. A timeout of 0 means t
- Java发送http请求(get 与post方法请求)
bijian1013
javaspring
PostRequest.java
package com.bijian.study;
import java.io.BufferedReader;
import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.HttpURL
- 【Struts2二】struts.xml中package下的action配置项默认值
bit1129
struts.xml
在第一部份,定义了struts.xml文件,如下所示:
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts
- 【Kafka十三】Kafka Simple Consumer
bit1129
simple
代码中关于Host和Port是割裂开的,这会导致单机环境下的伪分布式Kafka集群环境下,这个例子没法运行。
实际情况是需要将host和port绑定到一起,
package kafka.examples.lowlevel;
import kafka.api.FetchRequest;
import kafka.api.FetchRequestBuilder;
impo
- nodejs学习api
ronin47
nodejs api
NodeJS基础 什么是NodeJS
JS是脚本语言,脚本语言都需要一个解析器才能运行。对于写在HTML页面里的JS,浏览器充当了解析器的角色。而对于需要独立运行的JS,NodeJS就是一个解析器。
每一种解析器都是一个运行环境,不但允许JS定义各种数据结构,进行各种计算,还允许JS使用运行环境提供的内置对象和方法做一些事情。例如运行在浏览器中的JS的用途是操作DOM,浏览器就提供了docum
- java-64.寻找第N个丑数
bylijinnan
java
public class UglyNumber {
/**
* 64.查找第N个丑数
具体思路可参考 [url] http://zhedahht.blog.163.com/blog/static/2541117420094245366965/[/url]
*
题目:我们把只包含因子
2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14
- 二维数组(矩阵)对角线输出
bylijinnan
二维数组
/**
二维数组 对角线输出 两个方向
例如对于数组:
{ 1, 2, 3, 4 },
{ 5, 6, 7, 8 },
{ 9, 10, 11, 12 },
{ 13, 14, 15, 16 },
slash方向输出:
1
5 2
9 6 3
13 10 7 4
14 11 8
15 12
16
backslash输出:
4
3
- [JWFD开源工作流设计]工作流跳跃模式开发关键点(今日更新)
comsci
工作流
既然是做开源软件的,我们的宗旨就是给大家分享设计和代码,那么现在我就用很简单扼要的语言来透露这个跳跃模式的设计原理
大家如果用过JWFD的ARC-自动运行控制器,或者看过代码,应该知道在ARC算法模块中有一个函数叫做SAN(),这个函数就是ARC的核心控制器,要实现跳跃模式,在SAN函数中一定要对LN链表数据结构进行操作,首先写一段代码,把
- redis常见使用
cuityang
redis常见使用
redis 通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets
引入jar包 jedis-2.1.0.jar (本文下方提供下载)
package redistest;
import redis.clients.jedis.Jedis;
public class Listtest
- 配置多个redis
dalan_123
redis
配置多个redis客户端
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=&quo
- attrib命令
dcj3sjt126com
attr
attrib指令用于修改文件的属性.文件的常见属性有:只读.存档.隐藏和系统.
只读属性是指文件只可以做读的操作.不能对文件进行写的操作.就是文件的写保护.
存档属性是用来标记文件改动的.即在上一次备份后文件有所改动.一些备份软件在备份的时候会只去备份带有存档属性的文件.
- Yii使用公共函数
dcj3sjt126com
yii
在网站项目中,没必要把公用的函数写成一个工具类,有时候面向过程其实更方便。 在入口文件index.php里添加 require_once('protected/function.php'); 即可对其引用,成为公用的函数集合。 function.php如下:
<?php /** * This is the shortcut to D
- linux 系统资源的查看(free、uname、uptime、netstat)
eksliang
netstatlinux unamelinux uptimelinux free
linux 系统资源的查看
转载请出自出处:http://eksliang.iteye.com/blog/2167081
http://eksliang.iteye.com 一、free查看内存的使用情况
语法如下:
free [-b][-k][-m][-g] [-t]
参数含义
-b:直接输入free时,显示的单位是kb我们可以使用b(bytes),m
- JAVA的位操作符
greemranqq
位运算JAVA位移<<>>>
最近几种进制,加上各种位操作符,发现都比较模糊,不能完全掌握,这里就再熟悉熟悉。
1.按位操作符 :
按位操作符是用来操作基本数据类型中的单个bit,即二进制位,会对两个参数执行布尔代数运算,获得结果。
与(&)运算:
1&1 = 1, 1&0 = 0, 0&0 &
- Web前段学习网站
ihuning
Web
Web前段学习网站
菜鸟学习:http://www.w3cschool.cc/
JQuery中文网:http://www.jquerycn.cn/
内存溢出:http://outofmemory.cn/#csdn.blog
http://www.icoolxue.com/
http://www.jikexue
- 强强联合:FluxBB 作者加盟 Flarum
justjavac
r
原文:FluxBB Joins Forces With Flarum作者:Toby Zerner译文:强强联合:FluxBB 作者加盟 Flarum译者:justjavac
FluxBB 是一个快速、轻量级论坛软件,它的开发者是一名德国的 PHP 天才 Franz Liedke。FluxBB 的下一个版本(2.0)将被完全重写,并已经开发了一段时间。FluxBB 看起来非常有前途的,
- java统计在线人数(session存储信息的)
macroli
javaWeb
这篇日志是我写的第三次了 前两次都发布失败!郁闷极了!
由于在web开发中常常用到这一部分所以在此记录一下,呵呵,就到备忘录了!
我对于登录信息时使用session存储的,所以我这里是通过实现HttpSessionAttributeListener这个接口完成的。
1、实现接口类,在web.xml文件中配置监听类,从而可以使该类完成其工作。
public class Ses
- bootstrp carousel初体验 快速构建图片播放
qiaolevip
每天进步一点点学习永无止境bootstrap纵观千象
img{
border: 1px solid white;
box-shadow: 2px 2px 12px #333;
_width: expression(this.width > 600 ? "600px" : this.width + "px");
_height: expression(this.width &
- SparkSQL读取HBase数据,通过自定义外部数据源
superlxw1234
sparksparksqlsparksql读取hbasesparksql外部数据源
关键字:SparkSQL读取HBase、SparkSQL自定义外部数据源
前面文章介绍了SparSQL通过Hive操作HBase表。
SparkSQL从1.2开始支持自定义外部数据源(External DataSource),这样就可以通过API接口来实现自己的外部数据源。这里基于Spark1.4.0,简单介绍SparkSQL自定义外部数据源,访
- Spring Boot 1.3.0.M1发布
wiselyman
spring boot
Spring Boot 1.3.0.M1于6.12日发布,现在可以从Spring milestone repository下载。这个版本是基于Spring Framework 4.2.0.RC1,并在Spring Boot 1.2之上提供了大量的新特性improvements and new features。主要包含以下:
1.提供一个新的sprin