属性的字符串。
-C对请求附加一个Cookie:行。其典型形式是name=value的一个参数对,此参数可以重复。
-H对请求附加额外的头信息。此参数的典型形式是一个有效的头信息行,其中包含了以冒号分隔的字段和值的对(如,"Accept-Encoding:zip/zop;8bit")。
-A对服务器提供BASIC认证信任。用户名和密码由一个:隔开,并以base64编码形式发送。无论服务器是否需要(即,是否发送了401认证需求代码),此字符串都会被发送。
-h显示使用方法。
-d不显示"percentage served within XX [ms] table"的消息(为以前的版本提供支持)。
-e产生一个以逗号分隔的(CSV)文件,其中包含了处理每个相应百分比的请求所需要(从1%到100%)的相应百分比的(以微妙为单位)时间。由于这种格式已经“二进制化”,所以比'gnuplot'格式更有用。
-g把所有测试结果写入一个'gnuplot'或者TSV(以Tab分隔的)文件。此文件可以方便地导入到Gnuplot,IDL,Mathematica,Igor甚至Excel中。其中的第一行为标题。
-i执行HEAD请求,而不是GET。
-k启用HTTP KeepAlive功能,即在一个HTTP会话中执行多个请求。默认时,不启用KeepAlive功能。
-q如果处理的请求数大于150,ab每处理大约10%或者100个请求时,会在stderr输出一个进度计数。此-q标记可以抑制这些信息。
四、ab性能指标
在进行性能测试过程中有几个指标比较重要:
1、吞吐率(Requests per second)
服务器并发处理能力的量化描述,单位是reqs/s,指的是在某个并发用户数下单位时间内处理的请求数。某个并发用户数下单位时间内能处理的最大请求数,称之为最大吞吐率。
记住:吞吐率是基于并发用户数的。这句话代表了两个含义:
a、吞吐率和并发用户数相关
b、不同的并发用户数下,吞吐率一般是不同的
计算公式:总请求数/处理完成这些请求数所花费的时间,即
Request per second=Complete requests/Time taken for tests
必须要说明的是,这个数值表示当前机器的整体性能,值越大越好。
2、并发连接数(The number of concurrent connections)
并发连接数指的是某个时刻服务器所接受的请求数目,简单的讲,就是一个会话。
3、并发用户数(Concurrency Level)
要注意区分这个概念和并发连接数之间的区别,一个用户可能同时会产生多个会话,也即连接数。在HTTP/1.1下,IE7支持两个并发连接,IE8支持6个并发连接,FireFox3支持4个并发连接,所以相应的,我们的并发用户数就得除以这个基数。
4、用户平均请求等待时间(Time per request)
计算公式:处理完成所有请求数所花费的时间/(总请求数/并发用户数),即:
Time per request=Time taken for tests/(Complete requests/Concurrency Level)
5、服务器平均请求等待时间(Time per request:across all concurrent requests)
计算公式:处理完成所有请求数所花费的时间/总请求数,即:
Time taken for/testsComplete requests
可以看到,它是吞吐率的倒数。
同时,它也等于用户平均请求等待时间/并发用户数,即
Time per request/Concurrency Level
五、ab实际使用
ab的命令参数比较多,我们经常使用的是-c和-n参数。
下面我们就实际进行操作下,首先新建一个虚拟主机a.ilanni.com。如下:
cat /etc/httpd/conf/httpd.conf|grep -v ^#|grep -v ^$
mkdir -p /www/a.ilanni.com
echo ''>/www/a.ilanni.com/index.php
cat /www/a.ilanni.com/index.php
虚拟主机新建完毕后,我们来启动apache,并访问虚拟主机a.ilanni.com。如下:
wget http://a.ilanni.com
虚拟主机a.ilanni.com创建完毕后,我们现在就来测试apache的性能。使用如下命令:
ab -c 10 -n 100 http://a.ilanni.com/index.php
-c10表示并发用户数为10
-n100表示请求总数为100
http://a.ilanni.com/index.php表示请求的目标URL
这行表示同时处理100个请求并运行10次index.php文件。
通过上图,测试结果也一目了然,apache测试出的吞吐率为:Requests per second: 204.89[#/sec](mean)。
除此之外还有其他一些信息,需要说明下,如下:
Server Software表示被测试的Web服务器软件名称。
Server Hostname表示请求的URL主机名。
Server Port表示被测试的Web服务器软件的监听端口。
Document Path表示请求的URL中的根绝对路径,通过该文件的后缀名,我们一般可以了解该请求的类型。
Document Length表示HTTP响应数据的正文长度。
Concurrency Level表示并发用户数,这是我们设置的参数之一。
Time taken for tests表示所有这些请求被处理完成所花费的总时间。
Complete requests表示总请求数量,这是我们设置的参数之一。
Failed requests表示失败的请求数量,这里的失败是指请求在连接服务器、发送数据等环节发生异常,以及无响应后超时的情况。如果接收到的HTTP响应数据的头信息中含有2XX以外的状态码,则会在测试结果中显示另一个名为“Non-2xx responses”的统计项,用于统计这部分请求数,这些请求并不算在失败的请求中。
Total transferred表示所有请求的响应数据长度总和,包括每个HTTP响应数据的头信息和正文数据的长度。注意这里不包括HTTP请求数据的长度,仅仅为web服务器流向用户PC的应用层数据总长度。
HTML transferred表示所有请求的响应数据中正文数据的总和,也就是减去了Total transferred中HTTP响应数据中的头信息的长度。
Requests per second吞吐率,计算公式:Complete requests/Time taken for tests
Time per request用户平均请求等待时间,计算公式:Time token for tests/(Complete requests/Concurrency Level)。
Time per requet(across all concurrent request)服务器平均请求等待时间,计算公式:Time taken for tests/Complete requests,正好是吞吐率的倒数。也可以这么统计:Time per request/Concurrency Level。
Transfer rate表示这些请求在单位时间内从服务器获取的数据长度,计算公式:Total trnasferred/ Time taken for tests,这个统计很好的说明服务器的处理能力达到极限时,其出口宽带的需求量。
Percentage of requests served within a certain time(ms)这部分数据用于描述每个请求处理时间的分布情况,比如以上测试,80%的请求处理时间都不超过6ms,这个处理时间是指前面的Time per request,即对于单个用户而言,平均每个请求的处理时间。
六、测试nginx性能
第五步测试了apache的性能,现在我们来测试nginx的性能。
首先配置nginx的虚拟主机,如下:
cat /usr/local/nginx/conf/nginx.conf|grep -v ^#|grep -v ^$
虚拟主机配置完毕后,我们现在访问虚拟主机。如下:
wget a.ilanni.com
注意该虚拟主机与apache的虚拟主机是同一个,而且请求的是同一个页面。
使用如同apache同样的命令进行测试nginx,如下:
ab -c 10 -n 100 http://a.ilanni.com/index.php
结果如下:
通过上图,测试结果也一目了然,nginx测试出的吞吐率为:Requests per second: 349.14[#/sec](mean)。
对比apache请求该页面的吞吐率,发现nginx吞吐率就是要比apache高。根据前面我们提到的性能指标Requests per second吞吐率越高,服务器性能越好。
这也证明了nginx性能确实比apache性能高。
你可能感兴趣的:(apache性能测试工具ab使用详解)
Apache Doris 实现毫秒级查询响应
随风九天
匠心数据库 服务 java apache Apache Doris
1.引言1.1数据分析的重要性随着大数据时代的到来,企业对实时数据分析的需求日益增长。快速、准确地获取数据洞察成为企业在竞争中脱颖而出的关键。传统的数据库系统在处理大规模数据时往往面临性能瓶颈,难以满足实时分析的需求。例如,一个电商公司需要实时监控销售数据以调整库存和营销策略,而传统的数据库可能需要数分钟甚至数小时才能生成报表,这显然无法满足业务需求。1.2ApacheDoris简介ApacheD
Flink实时流处理入门与实践
随风九天
spring java Flink 实时流
一、引言1.1实时流处理的重要性在当今数据驱动的时代,实时数据处理变得越来越重要。企业需要从不断产生的大量数据中快速提取有价值的信息,以支持决策制定和业务优化。实时流处理技术能够实时处理数据流,提供即时的洞察和响应,从而提高业务效率和竞争力。1.2Flink简介ApacheFlink是一个开源的分布式流处理框架,支持批处理和流处理。Flink提供了高吞吐量、低延迟和精确一次(exactly-onc
Linux 内核移植
River-D
Driver
NXP官方开发板Linux内核编译37.2.1修改顶层Makefile修改顶层Makefile,直接在顶层Makefile文件里面定义ARCH和CROSS_COMPILE这两个的变量值为arm和arm-linux-gnueabihf-37.2.2配置并编译Linux内核和uboot一样,在编译Linux内核之前要先配置Linux内核。每个板子都有其对应的默认配置文件,这些默认配置文件保存在arch
React,antd实现自动滚动Table封装组件
前端CV攻城狮
工作中遇到有意思的东西 react.js javascript 前端
这一版在使用过程中会出现一个页面引用多个该组件,获取dom出错的问题,加强版自滚动table已上传点击跳转加强版自滚动组件只是根据工作需要,简单写了这种方如有不妥,你就当看不见…如有好的建议,私我/评论即可.MD参数名称|注释|默认值rollNum|超过多少条开始自动滚动|10rollTop|滚动速度|1.5rollTime|滚动时间|100msscroll|表格大小|y:500pxx:100%f
Python学习总结
serve the people
巨人的肩膀 python 开发语言
第一个python程序print("HelloWorld")#缩进一般4个空格键或者1个tab键,但是所有代码块语句必须是相同的缩进,这个必须严格执行,不同的缩进会导致程序不能运行,不能混用空格和tabifTrue:print("True")else:print("False")python注释符单行注释(行注释)#print("HelloWorld")多行注释(块注释)'''print("Hel
C++11使用mutex和condition_variable实现线程同步
追烽少年x
C++基础 c++
C++11使用mutex和condition_variable实现线程同步在实现项目的过程中,突然有一个问题:C++中A、B、C三个线程模拟购买100张车票,A输出99,B输出98,C输出97,然后又循环A输出96,B95,C94,直到0,使用线程同步,如何实现?这是一种按顺序执行线程的问题,应该实现?代码如下:#include#include#include#include#include//共
Mysql、MyBatis一键删除重复数据实现方案
冰糖码奇朵
数据库 mysql mybatis sql
一.问题背景项目中有全表数据一键剔除重复的需求场景,也就是一张数据表中除了主键、创建时间、修改时间等基本字段,其他业务字段均参与剔重校验,任何两行数据中,参与剔重校验的所有字段值完全相同则为重复,重复数据仅保留一行,其余删除。二.实现思路将所有参与剔重校验的字段进行分组,保留分组数据中id最大的那一条,其余删除。三.实现代码此处展示MyBatis代码,转换为sql同理。update`${table
【Spring】Spring boot 的 AutoConfigurationImportSelector 自动配置原理
九师兄
boot spring boot java 数据库
1.美图2.概述SpringBoot启动的时候加载主配置类,开启了自动配置功能@EnableAutoConfiguration参考:Spring:@EnableAutoConfiguration注解@EnableAutoConfiguration是SpringBoot框架中的一个核心注解,它的作用是自动配置SpringBoot应用程序的各种组件、功能和模块。该注解的原理主要涉及以下几个方面:1.1
LeetCode刷题实战:删除字符串中的所有相邻重复项(栈的经典应用)
sprite_雪碧
leetcode 算法 数据结构
题目描述题目链接:1047.删除字符串中的所有相邻重复项-力扣(LeetCode)给定一个由小写字母组成的字符串s,重复项删除操作会选择两个相邻且相同的字符并删除它们。此操作反复进行,直到无法继续删除。返回最终的字符串。答案保证唯一。输入:s="abbaca"输出:"ca"解释:删除"bb"得到"aaca",再删除"aa"得到"ca"。问题分析与解法思路暴力解法的缺陷最直观的暴力解法是重复扫描字符
【DeepSeek问答】Qt布局和控件的关系
CSUC
qt
在Qt中,布局管理器(Layout)与控件(Widget)的关系是容器与内容的关系。布局负责自动管理控件的排列、尺寸调整和自适应,确保界面在不同窗口尺寸下保持美观和功能。以下是详细说明及用法示例:一、布局与控件的关系容器与内容:布局(如QVBoxLayout、QHBoxLayout)作为容器,管理其内部控件的位置和大小。控件(如QPushButton、QLabel)是布局中的内容,通过addWid
python mongo异步操作_让python调用mongo读写速度加速10倍的方法
weixin_39867125
python mongo异步操作
1.把mongo读写封装成api2.在api初始化时保持数据库长链接;并且用线程每2分钟遍历一次所有的表并count一次importsysimporttimeimportpymongoimportjsonimportlogimporttracebackimportthreading//库名test,表名test_tableserver_list=['test-mongos.all.serv:636
oracle date类型如何比较
&loopy&
oracle 数据库
在Oracle数据库中,DATE类型用于存储日期和时间信息,精确到秒。当你需要比较两个DATE类型的值时,可以使用标准的SQL比较运算符,如=、和>=。以下是一些示例,说明如何在Oracle中比较DATE类型的值:1.等于(=)检查两个日期是否相等:sql复制代码SELECT*FROMyour_tableWHEREyour_date_column=TO_DATE('2023-10-23','YYY
oracle字符类型
牛尚小又何妨
Oracle study oracle字符类型 不同字符类型的比较
1、字符类型的种类有三种:varchar、varchar2、nvarchar2,并没有nvarchar这种类型2、不同类型的字符进行比较是否有风险测试--测试createtabletest002(fstring001varchar(200),fstring002varchar2(200),fstring004nvarchar2(200));--插入数据insertintotest002(fstri
【从零开始学java】第1章,基础知识入门,小白零基础可看,笔记整理
莉莉鸟
java 学习
java基础11注释标志符关键字注释注释并不会被执行,是写给人类看的,书写注释是一个很好的习惯平时写代码一定要注意规范单行注释//多行注释/*注释*/文档注释/**注释*/2标识符关键字abstract:用于声明抽象类或抽象方法。assert:用于调试时进行断言。boolean:表示布尔类型(true或false)。break:跳出当前循环或switch语句。byte:表示字节数据类型。case:
Python product函数介绍
无尽的沉默
函数用法 python
通过fromitertoolsimportproduct引入product函数。Product函数可以实现对矩阵做笛卡尔积importitertoolsforiteminitertools.product([1,2],[10,20]):print(item)'''(1,10)(1,20)(2,10)(2,20)'''iterables是可迭代对象,repeat指定iterable重复几次,即:pr
clickhouse去重复数据解决方案
追梦者123
clickhouse
原因出现问题因为我们的maxwell对接rabbitmqrabbitmq监听的是mysql的belog日志文件,所以mysql数据的实时操作都会同步数据到maxwell中从而导致新增插入一条,修改插入一条,删除插入一条,导致同一条数据有大量的重复数据。解决方案在仪表板调用统计相关接口之前,先将重复数据处理掉OPTIMIZETABLEtable_nameFINAL这样就可以根据orderby(uui
centos安装mysql报错:mysql-community-client-plugins-8.0、o Presto metadata available for mysql80-community
其实她不懂
centos mysql linux
执行sudoyum-yinstallmysql-community-server命令刚开始报错mysql-community-client-plugins-8.0.40-1.el7.x86_64.rpm的公钥尚未安装失败的软件包是:mysql-community-client-plugins-8.0.40-1.el7.x86_64GPG密钥配置为:file:///etc/pki/rpm-gpg/R
实现一键不同环境迁移ES模板
两眼墨黑
elasticsearch 大数据 搜索引擎
实现概述:1、查询环境A模板信息2、获取模板信息值转换3、同步保存至环境Bpackagecom.jayce.boot.route.common.util;importcom.fasterxml.jackson.databind.JsonNode;importcom.google.common.collect.Lists;importcom.jayce.boot.route.common.util.
向量数据库简介
openwin_top
python编程示例系列 python编程示例系列二 数据库
向量数据库(VectorDatabase)是一种专门用于存储和查询向量数据的数据库系统。向量数据库通常使用高效的向量索引技术,支持基于向量相似度的查询和检索,可以应用于图像搜索、自然语言处理、推荐系统、机器学习等领域。与传统的关系型数据库不同,向量数据库通常使用基于向量的数据模型,将向量作为数据的核心表示形式。向量数据库可以存储和处理大量的向量数据,支持高效的向量相似度计算和查询。常见的向量索引技
unity快速进入Project窗口文件夹
legroft
unity
因为项目文件结构日渐复杂,unity的Project窗口操作又不是很人性化,所以我需要一个快速进入Project窗口中文件夹的功能publicclassEditorProjectToolWindow:BaseOdinEditorWindow{[Serializable]publicclassCollect{publicstringname;publicstringpath;}publicstati
如何使用Webpack打包React项目?
几何心凉
前端小常识 webpack react.js 前端
文章目录1.引言2.环境搭建2.1初始化项目2.2安装依赖3.配置Webpack3.1关键配置说明4.Babel配置5.项目结构示例6.开发和生产环境优化6.1开发环境6.2生产环境7.调试和常见问题7.1常见问题7.2调试技巧8.总结1.引言随着React应用日益复杂,开发者需要借助模块打包工具来管理项目依赖、转换代码和优化性能。Webpack是一款功能强大的模块打包器,它可以将React项目中
# DrissionPage小玩法
芋弦
python 前端 开发语言
前提是电脑上有谷歌浏览器九行获取DOUYI小视频fromDrissionPageimportChromiumPageimportreimporttimetab1=ChromiumPage(8888).latest_tabtab1.get(input('输入一个视频链接:'))login=tab1.ele('@class=douyin-login__closedy-account-close',ti
python 使用flask+sqlalchemy 实现简单数据查询接口
darling331
python flask 开发语言 后端
数据库表结构和部分数据SETNAMESutf8mb4;SETFOREIGN_KEY_CHECKS=0;--------------------------------Tablestructureforuser------------------------------DROPTABLEIFEXISTS`user`;CREATETABLE`user`(`id`int(11)NOTNULLAUTO_I
Java实现二叉树
zhangpeng455547940
数据结构与算法设计 Java java 开发语言
二叉树实现类importjava.io.*;publicclassBST{privatestaticclassBSTNodeimplementsSerializable{Comparabledata;BSTNodeleft;BSTNoderight;publicBSTNode(){}publicBSTNode(Comparabledata){this.data=data;}publicBSTNod
力扣hot100二刷——哈希、双指针、滑动窗口
钢板兽
手撕算法 leetcode 哈希算法 算法 面试
第二次刷题不在idea写代码,而是直接在leetcode网站上写,“逼”自己掌握常用的函数。标志掌握程度解释办法⭐Fully完全掌握看到题目就有思路,编程也很流利⭐⭐Basically基本掌握需要稍作思考,或者看到提示方法后能解答⭐⭐⭐Slightly稍微掌握需要看之前写过的代码才能想起怎么做多做⭐⭐⭐⭐absolutelyno完全没有掌握需要看题解才知道怎么做背⭐⭐⭐⭐⭐有难度的高频题需要看题解
《围城》:初读不接书中意,再读已是书中人
细节处有神明
学习记录 读书笔记 读书笔记 围城
元数据[!abstract]围城书名:围城作者:钱钟书简介:钱钟书先生最经典的作品,也是仅有的一部长篇小说,堪称中国现代文学史上风格独特的讽刺经典,被誉为“新儒林外史”,自上世纪八十年代以来一直横贯常销、畅销小说之首。小说塑造了抗战初期以方鸿渐为主的一类知识分子群像,记叙了他们所面临的教育、婚姻和事业困境。虽然有具体的历史背景,但这部小说揭示的人群的弱点,在今天依然能引起人们的共鸣。著名文学评论家
基于双向长短期记忆神经网络结合多头注意力机制(BiLSTM-Multihead-Attention)的单变量时序预测
机器学习和优化算法
多头注意力机制 深度学习 神经网络 人工智能 机器学习 单变量时序预测 BiLSTM 多头注意力机制
目录1、代码简介2、代码运行结果展示3、代码获取1、代码简介基于双向长短期记忆神经网络结合多头注意力机制(BiLSTM-Multihead-Attention)的单变量时序预测(单输入单输出)1.程序已经调试好,无需更改代码替换数据集即可运行!!!数据格式为excel!2.需要其他算法的都可以定制!注:1️⃣、运行环境要求MATLAB版本为2023b及其以上。【没有我赠送】2️⃣、评价指标包括:R
tableau报表第三方免登陆配置
时光不负追梦人
tableau 报表 java 免登陆
获取Tableau凭证,实现报表在第三方的免登陆。分为三步第一步:在Tableau服务器上命令行设置授信白名单配置白名单cdC:\ProgramFiles\Tableau\TableauServer\bintabadminstop//可以配置多个IP,也可以只配置一个;多个时用英文逗号分开且增加一空格tabadminsetwgserver.trusted_hosts"10.88.233.64,10
【开源精选】《前端铺子》:打造你的全能型小程序开发助手
平淮齐Percy
【开源精选】《前端铺子》:打造你的全能型小程序开发助手qdpz-uniapp项目基于vue-uniapp,使用colorUi与uView框架,完美支持微信小程序,包含功能:自定义TabBar与顶部、地图轨迹回放、电子签名、自定义相机/键盘、拍照图片水印、在线答题、证件识别、周边定位查询、文档预览、各种图表、行政区域、海报生成器、视频播放、主题切换、时间轴、瀑布流、排行榜、渐变动画、加载动画、请求封
Ubuntu 上设置 iptables 规则开机自启
思静鱼
Linux&运维安装 ubuntu linux 服务器
在Ubuntu上设置iptables规则开机自启,可以通过以下方法实现:方法1:使用iptables-persistent(推荐)Ubuntu服务器上iptables规则不会自动保存,因此需要iptables-persistent来持久化规则并在开机时自动加载。安装iptables-persistentsudoaptupdatesudoaptinstalliptables-persistent-y
java线程的无限循环和退出
3213213333332132
java
最近想写一个游戏,然后碰到有关线程的问题,网上查了好多资料都没满足。
突然想起了前段时间看的有关线程的视频,于是信手拈来写了一个线程的代码片段。
希望帮助刚学java线程的童鞋
package thread;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date
tomcat 容器
BlueSkator
tomcat Web servlet
Tomcat的组成部分 1、server
A Server element represents the entire Catalina servlet container. (Singleton) 2、service
service包括多个connector以及一个engine,其职责为处理由connector获得的客户请求。
3、connector
一个connector
php递归,静态变量,匿名函数使用
dcj3sjt126com
PHP 递归函数 匿名函数 静态变量 引用传参
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Current To-Do List</title>
</head>
<body>
属性颜色字体变化
周华华
JavaScript
function changSize(className){
var diva=byId("fot")
diva.className=className;
}
</script>
<style type="text/css">
.max{
background: #900;
color:#039;
将properties内容放置到map中
g21121
properties
代码比较简单:
private static Map<Object, Object> map;
private static Properties p;
static {
//读取properties文件
InputStream is = XXX.class.getClassLoader().getResourceAsStream("xxx.properti
[简单]拼接字符串
53873039oycg
字符串
工作中遇到需要从Map里面取值拼接字符串的情况,自己写了个,不是很好,欢迎提出更优雅的写法,代码如下:
import java.util.HashMap;
import java.uti
Struts2学习
云端月影
最近开始关注struts2的新特性,从这个版本开始,Struts开始使用convention-plugin代替codebehind-plugin来实现struts的零配置。
配置文件精简了,的确是简便了开发过程,但是,我们熟悉的配置突然disappear了,真是一下很不适应。跟着潮流走吧,看看该怎样来搞定convention-plugin。
使用Convention插件,你需要将其JAR文件放
Java新手入门的30个基本概念二
aijuans
java 新手 java 入门
基本概念: 1.OOP中唯一关系的是对象的接口是什么,就像计算机的销售商她不管电源内部结构是怎样的,他只关系能否给你提供电就行了,也就是只要知道can or not而不是how and why.所有的程序是由一定的属性和行为对象组成的,不同的对象的访问通过函数调用来完成,对象间所有的交流都是通过方法调用,通过对封装对象数据,很大限度上提高复用率。 2.OOP中最重要的思想是类,类是模板是蓝图,
jedis 简单使用
antlove
java redis cache command jedis
jedis.RedisOperationCollection.java
package jedis;
import org.apache.log4j.Logger;
import redis.clients.jedis.Jedis;
import java.util.List;
import java.util.Map;
import java.util.Set;
pub
PL/SQL的函数和包体的基础
百合不是茶
PL/SQL编程函数 包体显示包的具体数据 包
由于明天举要上课,所以刚刚将代码敲了一遍PL/SQL的函数和包体的实现(单例模式过几天好好的总结下再发出来);以便明天能更好的学习PL/SQL的循环,今天太累了,所以早点睡觉,明天继续PL/SQL总有一天我会将你永远的记载在心里,,,
函数;
函数:PL/SQL中的函数相当于java中的方法;函数有返回值
定义函数的
--输入姓名找到该姓名的年薪
create or re
Mockito(二)--实例篇
bijian1013
持续集成 mockito 单元测试
学习了基本知识后,就可以实战了,Mockito的实际使用还是比较麻烦的。因为在实际使用中,最常遇到的就是需要模拟第三方类库的行为。
比如现在有一个类FTPFileTransfer,实现了向FTP传输文件的功能。这个类中使用了a
精通Oracle10编程SQL(7)编写控制结构
bijian1013
oracle 数据库 plsql
/*
*编写控制结构
*/
--条件分支语句
--简单条件判断
DECLARE
v_sal NUMBER(6,2);
BEGIN
select sal into v_sal from emp
where lower(ename)=lower('&name');
if v_sal<2000 then
update emp set
【Log4j二】Log4j属性文件配置详解
bit1129
log4j
如下是一个log4j.properties的配置
log4j.rootCategory=INFO, stdout , R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appe
java集合排序笔记
白糖_
java
public class CollectionDemo implements Serializable,Comparable<CollectionDemo>{
private static final long serialVersionUID = -2958090810811192128L;
private int id;
private String nam
java导致linux负载过高的定位方法
ronin47
定位java进程ID
可以使用top或ps -ef |grep java
![图片描述][1]
根据进程ID找到最消耗资源的java pid
比如第一步找到的进程ID为5431
执行
top -p 5431 -H
![图片描述][2]
打印java栈信息
$ jstack -l 5431 > 5431.log
在栈信息中定位具体问题
将消耗资源的Java PID转
给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数
bylijinnan
函数
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class RandNFromRand5 {
/**
题目:给定能随机生成整数1到5的函数,写出能随机生成整数1到7的函数。
解法1:
f(k) = (x0-1)*5^0+(x1-
PL/SQL Developer保存布局
Kai_Ge
近日由于项目需要,数据库从DB2迁移到ORCAL,因此数据库连接客户端选择了PL/SQL Developer。由于软件运用不熟悉,造成了很多麻烦,最主要的就是进入后,左边列表有很多选项,自己删除了一些选项卡,布局很满意了,下次进入后又恢复了以前的布局,很是苦恼。在众多PL/SQL Developer使用技巧中找到如下这段:
&n
[未来战士计划]超能查派[剧透,慎入]
comsci
计划
非常好看,超能查派,这部电影......为我们这些热爱人工智能的工程技术人员提供一些参考意见和思想........
虽然电影里面的人物形象不是非常的可爱....但是非常的贴近现实生活....
&nbs
Google Map API V2
dai_lm
google map
以后如果要开发包含google map的程序就更麻烦咯
http://www.cnblogs.com/mengdd/archive/2013/01/01/2841390.html
找到篇不错的文章,大家可以参考一下
http://blog.sina.com.cn/s/blog_c2839d410101jahv.html
1. 创建Android工程
由于v2的key需要G
java数据计算层的几种解决方法2
datamachine
java sql 集算器
2、SQL
SQL/SP/JDBC在这里属于一类,这是老牌的数据计算层,性能和灵活性是它的优势。但随着新情况的不断出现,单纯用SQL已经难以满足需求,比如: JAVA开发规模的扩大,数据量的剧增,复杂计算问题的涌现。虽然SQL得高分的指标不多,但都是权重最高的。
成熟度:5星。最成熟的。
Linux下Telnet的安装与运行
dcj3sjt126com
linux telnet
Linux下Telnet的安装与运行 linux默认是使用SSH服务的 而不安装telnet服务 如果要使用telnet 就必须先安装相应的软件包 即使安装了软件包 默认的设置telnet 服务也是不运行的 需要手工进行设置 如果是redhat9,则在第三张光盘中找到 telnet-server-0.17-25.i386.rpm
PHP中钩子函数的实现与认识
dcj3sjt126com
PHP
假如有这么一段程序:
function fun(){
fun1();
fun2();
}
首先程序执行完fun1()之后执行fun2()然后fun()结束。
但是,假如我们想对函数做一些变化。比如说,fun是一个解析函数,我们希望后期可以提供丰富的解析函数,而究竟用哪个函数解析,我们希望在配置文件中配置。这个时候就可以发挥钩子的力量了。
我们可以在fu
EOS中的WorkSpace密码修改
蕃薯耀
修改WorkSpace密码
EOS中BPS的WorkSpace密码修改
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
蕃薯耀 201
SpringMVC4零配置--SpringSecurity相关配置【SpringSecurityConfig】
hanqunfeng
SpringSecurity
SpringSecurity的配置相对来说有些复杂,如果是完整的bean配置,则需要配置大量的bean,所以xml配置时使用了命名空间来简化配置,同样,spring为我们提供了一个抽象类WebSecurityConfigurerAdapter和一个注解@EnableWebMvcSecurity,达到同样减少bean配置的目的,如下:
applicationContex
ie 9 kendo ui中ajax跨域的问题
jackyrong
AJAX跨域
这两天遇到个问题,kendo ui的datagrid,根据json去读取数据,然后前端通过kendo ui的datagrid去渲染,但很奇怪的是,在ie 10,ie 11,chrome,firefox等浏览器中,同样的程序,
浏览起来是没问题的,但把应用放到公网上的一台服务器,
却发现如下情况:
1) ie 9下,不能出现任何数据,但用IE 9浏览器浏览本机的应用,却没任何问题
不要让别人笑你不能成为程序员
lampcy
编程 程序员
在经历六个月的编程集训之后,我刚刚完成了我的第一次一对一的编码评估。但是事情并没有如我所想的那般顺利。
说实话,我感觉我的脑细胞像被轰炸过一样。
手慢慢地离开键盘,心里很压抑。不禁默默祈祷:一切都会进展顺利的,对吧?至少有些地方我的回答应该是没有遗漏的,是不是?
难道我选择编程真的是一个巨大的错误吗——我真的永远也成不了程序员吗?
我需要一点点安慰。在自我怀疑,不安全感和脆弱等等像龙卷风一
马皇后的贤德
nannan408
马皇后不怕朱元璋的坏脾气,并敢理直气壮地吹耳边风。众所周知,朱元璋不喜欢女人干政,他认为“后妃虽母仪天下,然不可使干政事”,因为“宠之太过,则骄恣犯分,上下失序”,因此还特地命人纂述《女诫》,以示警诫。但马皇后是个例外。
有一次,马皇后问朱元璋道:“如今天下老百姓安居乐业了吗?”朱元璋不高兴地回答:“这不是你应该问的。”马皇后振振有词地回敬道:“陛下是天下之父,
选择某个属性值最大的那条记录(不仅仅包含指定属性,而是想要什么属性都可以)
Rainbow702
sql group by 最大值 max 最大的那条记录
好久好久不写SQL了,技能退化严重啊!!!
直入主题:
比如我有一张表,file_info,
它有两个属性(但实际不只,我这里只是作说明用):
file_code, file_version
同一个code可能对应多个version
现在,我想针对每一个code,取得它相关的记录中,version 值 最大的那条记录,
SQL如下:
select
*
VBScript脚本语言
tntxia
VBScript
VBScript 是基于VB的脚本语言。主要用于Asp和Excel的编程。
VB家族语言简介
Visual Basic 6.0
源于BASIC语言。
由微软公司开发的包含协助开发环境的事
java中枚举类型的使用
xiao1zhao2
java enum 枚举 1.5新特性
枚举类型是j2se在1.5引入的新的类型,通过关键字enum来定义,常用来存储一些常量.
1.定义一个简单的枚举类型
public enum Sex {
MAN,
WOMAN
}
枚举类型本质是类,编译此段代码会生成.class文件.通过Sex.MAN来访问Sex中的成员,其返回值是Sex类型.
2.常用方法
静态的values()方