自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Defonds 的专栏

情绪是最没用的东西~判断力比能力更重要~

  • 博客(492)
  • 资源 (529)
  • 论坛 (120)
  • 收藏
  • 关注

翻译 如何使用 JMeter 调用你的 Restful Web Service?进行简单的压力测试和自动化测试

表述性状态传输(REST)作为对基于 SOAP 和 Web 服务描述语言(WSDL)的 Web 服务的简单替代,在 Web 开发上得到了广泛的接受。能够充分证明这点的是主流 Web 2.0 服务提供商在接口设计中对 REST 的普遍采用 - 包括雅虎、谷歌以及脸谱 - 出于简单易用、以面向资源的模型发布自己的服务的偏好他们都已经抛弃了 SOAP 和基于 WSDL 的接口。在你必须要对你的 REST

2017-01-22 09:20:27 12810 1

原创 JVM 性能调优实战之:使用阿里开源工具 TProfiler 在海量业务代码中精确定位性能代码

本文是《JVM 性能调优实战之:一次系统性能瓶颈的寻找过程》 的后续篇,该篇介绍了如何使用 JDK 自身提供的工具进行 JVM 调优将 TPS 由 2.5 提升到 20 (提升了 7 倍),并准确定位系统瓶颈:我们应用里静态对象不是太多、有大量的业务线程在频繁创建一些生命周期很长的临时对象,代码里有问题。那么问题来了,如何在海量业务代码里边准确定位这些性能代码?本文将介绍如何使用阿里开源工具 TP...

2016-09-21 11:25:21 46290 9

原创 JVM 性能调优实战之:一次系统性能瓶颈的寻找过程

玩过性能优化的朋友都清楚,性能优化的关键并不在于怎么进行优化,而在于怎么找到当前系统的性能瓶颈。性能优化分为好几个层次,比如系统层次、算法层次、代码层次...JVM 的性能优化被认为是底层优化,门槛较高,精通这种技能的人比较少。笔者呆过几家技术力量不算弱的公司,每个公司内部真正能够进行 JVM 性能调优的人寥寥无几、甚至没有。如是乎,能够有效通过 JVM 调优提升系统性能的人往往被人们冠以"大牛"

2016-09-20 17:39:18 35429 14

原创 Redis 缓存 + Spring 的集成示例

《整合 spring 4(包括mvc、context、orm) + mybatis 3 示例》一文简要介绍了最新版本的 Spring MVC、IOC、MyBatis ORM 三者的整合以及声明式事务处理。现在我们需要把缓存也整合进来,缓存我们选用的是 Redis,本文将在该文示例基础上介绍 Redis 缓存 + Spring 的集成。关于 Redis 服务器的搭建请参考博客《Redhat5.8 环

2015-09-24 19:53:26 178755 70

原创 警惕 MySql 更新 sql 的 WHERE 从句中的 IN() 子查询时出现的性能陷阱

mer_stage 表有 216423 条记录,DDL:CREATE TABLE `mer_stage` ( `STAGE_ID` int(11) NOT NULL AUTO_INCREMENT, `MER_ID` int(11) NOT NULL, `MER_CODE` varchar(16) DEFAULT NULL, `MER_NAME` varchar(80) NOT NU

2015-07-03 19:55:53 32373 5

翻译 Java 并发工具包 java.util.concurrent 用户指南

1. java.util.concurrent - Java 并发工具包Java 5 添加了一个新的包到 Java 平台,java.util.concurrent 包。这个包包含有一系列能够让 Java 的并发编程变得更加简单轻松的类。在这个包被添加以前,你需要自己去动手实现自己的相关工具类。本文我将带你一一认识 java.util.concurrent 包里的这些类,然后你可以尝试着如何在项目中

2015-03-03 09:40:29 172373 32

原创 Maven 项目打包需要注意到的那点事儿

关于 Maven 打 war 包《使用 Eclipse 的 Maven 2 插件开发一个 JEE 项目》详细介绍了如何在 Eclipse 使用 Maven 新建一个 JEE 项目并对其进行断点跟踪调试,但是没有介绍如何对 JEE 项目打 war 包。其实很简单,你只需要把 pom.xml 中的 jar 换成 war 就可以使用 mvn package 命令对其打 war 包了,而不需要添加任何 m

2015-01-28 17:04:26 151113 31

原创 Java 进行 RSA 加解密时不得不考虑到的那些事儿

1. 加密的系统不要具备解密的功能,否则 RSA 可能不太合适公钥加密,私钥解密。加密的系统和解密的系统分开部署,加密的系统不应该同时具备解密的功能,这样即使黑客攻破了加密系统,他拿到的也只是一堆无法破解的密文数据。否则的话,你就要考虑你的场景是否有必要用 RSA 了。2. 可以通过修改生成密钥的长度来调整密文长度生成密文的长度等于密钥长度。密钥长度越大,生成密文的长度也就越大,加密的速度也就越慢

2015-01-16 11:56:05 113175 24

原创 电子商务网站互联网安全防御攻略

电子商务网站,互联网的安全防御相当重要,尤其是牵扯到支付这一块的。本文总结了一些比较通用的 web 安全防御常识,供大家参考一下,也希望可以和关心这一块的同行一起讨论一下这方面的话题。

2014-12-09 18:00:16 11849 13

原创 JMeter 源码解析之一:JMeter 上传文件时,如何参数化 Content-Disposition 的 filename?

问题描述        文件上传时,用户定义 Content-Disposition 是失效的。        笔者在写压力测试脚本的时候,有个上传页面,服务器是根据用户传过来的 Content-Disposition 里的 filename 值来定义保存文件的文件名的。但是测试人员不可能为每一次请求都准备一个不同的文件(这个工作量海了去了),所以 JMeter 传给服务器的 Content-Di

2014-11-29 09:44:31 61472 4

原创 关于 Java Web 项目性能提升的一些思路

关于 Java Web 项目性能提升的一些看法,欢迎大侠们进来提供更多建议,也欢迎拍砖。

2013-12-13 17:01:13 7703

原创 Java 调用 FFMPEG 命令时用 url 作为输入源,Linux 下出现 “no such file or directory” 问题的解决

Windows 下执行 ffmpeg 命令,        D:/tools/ffmpeg/bin>ffmpeg.exe -i "某视频文件下载URL" -f flv D:/1.flv        可以成功直接将下载链接输入源转为 1.flv。String raw2flvCmd = "D:/tools/ffmpeg/bin/ffmpeg.exe -i \"某视频文件下载URL\"

2013-04-28 15:27:22 16017 13

原创 黑盒变白盒 - 调试 Red5 项目时查看 Red5 容器内部运行机制

《如何使用 Red5 插件创建 Red5 项目?》介绍了如何在 Eclipse 下创建并调试 Red5 项目。有同学问,“我想在调试 Red5 应用程序时,能够边看Red5 API 边看到 Red5 容器内部运行情况。最好是能修改一下 Red5 源代码,然后看其运行情况。能做到吗?”        可以。本文从 Bootstrap 说起,介绍如何让 Red5 源代码“动起来”。

2012-06-25 18:32:21 6026 3

转载 空杯心态

空杯心态        空杯心态是一种对工作、学习、生活、生命的放空、低头、吐故纳新。放得越空,拥有越多。做事的前提是先要有好心态,如果想学到更多学问,想提升职业能力,先要把自己想象成“一个空着的杯子”,而不是骄傲自满,故步自封。        空杯心态 - 来源        该词语来源于一则佛家故事,古时候一个佛学造诣很深的人,听说某个寺庙里有位德高望重的老禅师,便去拜访。老禅师的

2011-11-10 10:55:56 3422 7

原创 手把手教你写 SQL Join 联接

在关系代数中,联接运算是由一个笛卡尔积运算和一个选取运算构成的。首先用笛卡尔积完成对两个数据集合的乘运算,然后对生成的结果集合进行选取运算,确保只把分别来自两个数据集合并且具有重叠部分的行合并在一起。联接的全部意义在于在水平方向上合并两个数据集合(通常是表),并产生一个新的结果集合,其方法是将一个数据源中的行于另一个数据源中和它匹配的行组合成一个新元组。本文从几个简单的例子里,手把手教你如何写内联接、左外联接、右外联接、全外联接以及交叉联接。

2010-09-27 16:37:00 11092 7

原创 C1 驾驶证考试科目二考试心得

科目二刚过,练车场上起早贪黑模拟训练的场景虽依然历历在目,但我深知科目二以及陪伴我练车的小伙伴们接下来会是渐行渐远渐无书,毕竟大家都是来自 360 行的人员,只是因为同样一个兴趣爱好暂时凑到了一起。故此把 C1 驾考科二心得记录一下,也算是自己生活轨迹的一个笔记吧。如果还能给准备考试的朋友们起到一点点借鉴作用,那就太开心了。1. 准备工作笔者报名江南某考场,科二的倒库和小四项分开考,但是一起算成绩。每次考试两次机会,考试不过补考需 10 天后才能再次预约考试。正式考试上车以后,刷身份证,拍照,调座椅、

2020-11-19 20:34:37 66

原创 卤煮花生米的制作过程(高压锅版)

去皮花生米和黄豆(比例2:1或3:1),花椒、八角少许,洗净,放入高压锅,清水没过,加盖,大火烧至水开,换小火再烧5分钟后关火。高压气自然放光之后,开盖,加入少量葱花、盐、姜丁,继续大火烧至水开,换小火再烧2分钟后关火。高压气自然放光后,开盖,把煮好的花生米干捞出,入盘放冰箱冷藏。可作为每餐饭的配菜。优点:制作简单方便,无油健康。可冷藏几天多次食用。缺点:香度比油炸的落差。...

2020-10-26 19:44:14 121 1

原创 简单 Python 快乐之旅之:Python 基础语法之 Numpy 专题

文章目录参考资料在使用 2D 数组或多维数组时,Python 的 Numpy 库非常有用。比如,在图像处理的工作中,你必须得把像素值存放在一个二维或三维数组中。Python 仅支持一维数组。它并不支持多维数组。Numpy 是对 Python 数组的一个扩展,它不仅支持多维数组,而且还提供了基于多维数组的数学运算。参考资料Python NumpyCreate One Dimensional Numpy ArrayCreate Numpy Array with Random Values – nu

2020-09-17 20:22:08 144

原创 PyCharm 编写 Numpy 程序时报 No module named ‘numpy‘ 错误的解决

笔者背景是 Python 3.7.1,pycharm-professional-2018.3.5,程序中 import numpy as np,编译执行时报错 No module named ‘numpy’:解决办法是 PyCharm 安装 numpy 并导入。打开 PyCharm,查看项目 site-packages 如下:确实没有 numpy。PyCharm,File --> Settings… -> Project: 你的项目名 -> Project Interprete

2020-08-17 14:50:45 312

原创 警惕 Oracle 索引优化时陷阱之无效的索引范围扫描(INDEX RANGE SCAN)导致的全表扫描

生产环境慢查询统计中,发现表 STATUS 的 MILESTONE 字段条件查询时进行了全表扫描。表 STATUS 的 MILESTONE 字段定义如下:针对上述问题创建索引:create index STATUS_MILESTONE on STATUS("MILESTONE") tablespace DFS_INDEX2;分析执行计划发现问题语句依然走的是全表扫描,新建的索引 STATUS_MILESTONE 没有用到。第一反应是索引是不是没有创建成功?查看索引库发现该索引确实存在并且生效:

2020-07-06 20:29:10 439

原创 Windows 平台下 Go 语言的安装和环境变量设置 v2

文章目录1. Go 语言 SDK 安装包下载和安装2. Go 语言环境变量设置2.1. GOROOT2.2. PATH2.3. GOPATH2.4. 命令行对环境变量进行验证3. 编写第一个 go 程序参考资料1. Go 语言 SDK 安装包下载和安装最新稳定版 1.14.4 安装包 go1.14.4.windows-amd64.msi 下载地址 https://studygolang.com/dl,大小约 118 MB,下载之后直接运行安装,安装路径就使用它默认的 C:\Go\ 即可,之后一路 Nex

2020-06-21 23:03:23 235

原创 JMeter 如何生成指定取值范围、指定小数位数的随机浮点数

可以使用函数 __javaScript 来执行 JavaScript 代码片:${__javaScript((Math.random() * (100)).toFixed(2) * 1,)}以上将生成 0 ~ 100 的带两位小数的浮点数。说明如下:Math.random() 生成 0 ~ 1 的小数Math.random() * (100) 生成 0 ~ 100 的浮点数toFixed(2) 将生成的浮点数保留 2 位小数如果想生成 100 ~ 200 内的带两位小数的浮点数,可以:$

2020-06-21 09:31:10 910

原创 简单 Python 快乐之旅之:Python 基础语法之一般应用专题

文章目录1. 两数相加1.1. 语法1.2. 对两个整型数字进行相加1.3. 对两个浮点型数字进行相加1.4. 对整型和浮点型进行相加1.5. 对两个复数进行相加1.6. 小结2. 随机生成一个正数或负数2.1. 生成一个随机数2.2. randInt() 的语法2.3. Python 中生成随机数示例2.4. 生成随机负数2.5. 小结参考资料1. 两数相加在 Python 中,你可以使用算术加法运算符 + 对两个数进行相加。该运算符接受两个操作数并返回加法结果。Python 中的数字可以是 int、

2020-05-16 17:25:37 465

原创 简单 Python 快乐之旅之:Python 基础语法之 GUI 专题

文章目录1. Python tkinter 设置特定或固定的窗口大小1.1. 示例一:在 Python tkinter 中设置窗口大小1.2. 设置窗口大小1.3. 小结2. Python tkinter 按钮例子2.1. Python tkinter 按钮2.2. 示例一:使用 tkinter 库的按钮2.3. 小结3. 按钮点击调用函数3.1. 按钮点击事件调函数4. 更改字体系列、字体大小及...

2020-04-12 22:21:09 194

翻译 日志分析工具 Top 10 介绍 - 让企业做出数据驱动型决策

文章目录日志分析工具1. LogglyLoggly 功能介绍2. LogentriesLogentries 功能介绍3. GoAccessGoAccess 功能介绍4. logz.iologz.io 功能介绍5. GraylogGraylog 功能介绍6. SplunkSplunk 功能介绍Logmatic.ioLogmatic 功能介绍8. LogstashLogstash 功能介绍9. Sum...

2020-03-18 22:25:22 261

翻译 关于 JVM 的线程 Dump 文件的提取

线程 DUMP 是用以分析服务器 / JVM 挂起以及定位其原因最重要的 JVM 报告之一…本文介绍几种收集线程 DUMP 的常见技巧…注意:仅仅收集 JVM 中一两个线程的 DUMP 并没有太大用处。所以最好是在 10 - 12 秒内最少收集到 5 - 6 个线程栈快照…选项一。Windows 下:在服务运行的命令窗口下同时按 Ctrl + Break。Solaris/Linux 等 Un...

2020-02-15 19:07:02 417

翻译 服务器挂起的原因以及需要如何应对?

文章目录服务器挂起是什么情况,它有哪有症状?Weblogic 线程的角色和职责?什么是 Execute 队列?服务器挂起可能会有哪些原因?如果出现服务器挂起或响应缓慢的情形,服务端的日志是什么样子的?服务器端出现上述这种日志是不是就意味着 Weblogic 已经挂起?收集调试数据需要哪些应急步骤?作者简介线程 dump 分析是找出服务器响应缓慢、服务器挂起、粘滞线程导致服务器崩溃等问题原因的最重...

2020-01-06 21:51:01 739

翻译 Java 应用中高 CPU 利用率问题的定位

1. Java 应用中 CPU 峰值故障的排查Java 应用高 CPU 利用率可能与以下几种原因有关:垃圾收集执行 Full GC 过于频繁,但由于 servlet 容器内应用里的一个内存泄漏问题,或者 servlet 容器自身的内存泄漏问题,导致每次 Full GC 无法释放很多内存出来。由于应用需要更多内存所以垃圾回收器经常执行 Full GC (类似于前面一点所述,但可能没有内存泄漏,...

2019-12-17 20:20:41 408

原创 简单 Python 快乐之旅之:Python 基础语法之 debugging 专题

1. Python breakpoint() 例子pythondebug() 函数可以进入到调用处的调试器中。确切来讲,它调用 sys.breakpointhook(),直接传递 args 和 kws。breakpoint() 函数的语法为:breakpoint(*args, **kws)1.1. breakpoint() 的例子在本示例中,我们将在我们的 Python 程序的某个地方...

2019-12-10 19:28:38 172

原创 简单 Python 快乐之旅之:Python 基础语法之 sqlite3 专题

文章目录1. 创建连接对象1.1. 使用 sqlite3 创建一个 Connection 对象的例子2. 在 sqlite3 数据库创建表2.1. 使用 sqlite3 新建表2.2. 只有在表不存在的情况下才会创建新表2.3. 小结3. 查看表是否已存在3.1. 检查表是否已在存在于 sqlite33.2. 检查表是否已存在于 sqlite3 (不存在的场景)3.3. 检查表是否存在于内存 (R...

2019-11-09 20:56:02 346

原创 Apache HttpClient 与 SSL 代理

有这样一个场景,出于安全的考虑,某些操作敏感数据的客户端必须通过 VPN 访问服务器端。这种客户端我们姑且称之为代理访问。访问路由示意图:HTTPS Client <------- Encrypted CONNECT Requests -------> HTTPS Proxy <------- Encrypted CONNECT Requests -------> HT...

2019-10-09 22:00:16 427

原创 简单 Python 快乐之旅之:Python 基础语法之日志专题

文章目录1. Python 日志示例参考资料1. Python 日志示例日志能够帮助我们监控程序的运行状态。通过日志我们可以看到程序是否引发了什么警告或错误。我们记录时间戳、消息、堆栈等详细信息。参考资料Python Logginghttps://pythonexamples.org/python-logging-examples/Python Logging Messages to a...

2019-09-11 22:09:03 681

翻译 Weblogic 线程的几种状态 - STUCK,ACTIVE,STANDBY - 你了解它们的含义吗

文章目录1. STUCK2. HOGGER3. ACTIVE4. STANDBY5. IDLEOracle Fusion Middleware、Oracle Enterprise Manager 以及一些其他的一些产品内部使用的都是 Weblogic 应用服务器。在 Weblogic 服务器中,所有进入的请求都会由线程池之中的 execute 线程进行处理。根据这些线程的活跃度,Weblogic...

2019-09-04 13:58:33 1783

原创 简单 Python 快乐之旅之:Python 基础语法之异常处理专题

1. Python try 语句示例Python 的 try 语句用于处理在运行时由 Python 解释器抛出的异常。当解释器抛出一个错误时,程序的执行会突然中止。要避免这种情况我们可以使用 try 语句对异常进行编程式的捕捉和处理。1.1. Python 中 try 语句的语法try: #your code that may throw exceptions statement(s)...

2019-09-03 21:54:03 624

原创 简单 Python 快乐之旅之:Python 基础语法之输入输出操作专题

文章目录打印到控制台输出1.1. 打印字符串到控制台1.2. 打印数字到控制台1.3. 打印变量到控制台1.4. 以特定分隔符进行打印1.5. 以特定结尾进行打印参考资料打印到控制台输出你可以使用 print() 函数来打印或回显数据到控制台。# How to Print to Console in Pythonprint("Hello World! Welcome to Python E...

2019-09-02 21:48:00 910 1

原创 简单 Python 快乐之旅之:Python 基础语法之 JSON 专题

1. 解析 JSON 字符串示例要将 JSON 字符串解析为一个 Python 对象,你可以使用 Python 内建 json 库。json 包里的 loads() 函数用于解析 JSON 串。import jsonpythonObj = json.loads(jsonStr)其中,jsonStr 是一个包含 JSON 数据的字符串,而 json.loads() 将返回一个 Python...

2019-09-01 06:30:53 1278

原创 简单 Python 快乐之旅之:Python 基础语法之文件操作专题

文章目录1. 读取文本文件1.1. 读取文本文件里的个别字符1.2. 以文本模式读取文件2. 向文本文件写入字符串2.1. 将字符串写入文本文件2.2. 在文本模式下将字符串写入文本文件参考资料本专题将会对文件或文件夹的读取、写入、追加、更新、删除等操作进行讲解。1. 读取文本文件在 Python 中可以使用 open() 函数来打开文件,该函数将返回一个文件对象,然后我们可以通过调用该文件...

2019-08-22 22:18:01 1524 4

原创 简单 Python 快乐之旅之:Python 基础语法之字典操作专题

Python 字典允许我们存放键值对。字典中的键值对的顺序是不能保证的,这是因为 Python 的字典并不保存它们的索引。字典的一个简单示例如下:myDictionary = { "pi": 3.14, "phi": 1.618 }在这个字典中,pi 和 phi 是键,而 3.14 和 1.618 则是它们相应的值,从而组成了键值对。在本文中,我们将会学习以下内容:如何创建一个 P...

2019-08-06 21:39:06 201

原创 简单 Python 快乐之旅之:Python 基础语法之列表操作专题

在同系列博客《简单 Python 快乐之旅之:Python 基础语法之循环关键字的使用例子》中我们对列表的定义及使用做了一个初步认识。本文将会对其操作进行深入一些的认识。Python 列表允许存放异构类型的元素。这和其他主流语言中的列表或者数组是不一样的。但 Python 列表将足以满足你可能需要数组的所有需求。在本文中,我们将会学习到以下内容:如何在 Python 中创建一张列表;访问列表中的...

2019-07-12 20:18:10 438 2

原创 jEdit 源码解析之:纯文本编辑器 JEditTextArea 初探

1. jEdit 简介jEdit 是一款 Java 写的面向开发者的多功能文本编辑器,它遵守 GPL 2.0,既可以下载下来作为文本编辑器工具独立运行,也可以作为插件安装到其他应用,还可以作为第三方工具包直接为其他应用所用 (对此 jEdit 官网提供了详尽的 API http://www.jedit.org/api/index.html)。jEdit 官网 www.jedit.org,源码下...

2019-06-25 20:44:04 770

官方最新Bitvise SSH Client安装包

BvSshClient-Inst.exe,版本 6.08,大小 10.7 MB。截至 20141030 官方公布的最新 Bitvise SSH Client 安装包(官网下载地址http://www.bitvise.com/ssh-client-download)。 Bitvise SSH Client,集成 SFTP、SSH 于一体,既有类似于 Filezilla 的界面文件操作,又有类似于 Putty 的 XTerm 虚拟终端操作界面,用户体验相当之爽。

2014-10-30

最新Eclipse Subversive插件

Subversive-2.0.1.I20140907-1700.zip,大小19MB。截至20141028,Eclipse官方公布的最新Subversive插件。关于最新Eclipse SVN 插件的安装,请参考博客《集成 SVN 插件到 Eclipse 全过程》,地址是:http://blog.csdn.net/defonds/article/details/40541065。

2014-10-28

构建高性能web站点.pdf完整版高清影印版带书签

《构建高性能web站点》,作者:郭欣,出版社:电子工业出版社,ISBN:9787121170935,PDF 格式,高清影印版,大小 48 MB。本资源带有书签,方便读者朋友阅读。 内容简介 本书围绕如何构建高性能Web站点,从多个方面、多个角度进行了全面的阐述,涵盖了Web站点性能优化的几乎所有内容,包括数据的网络传输、服务器并发处理能力、动态网页缓存、动态网页静态化、应用层数据缓存、分布式缓存、Web服务器缓存、反向代理缓存、脚本解释速度、页面组件分离、浏览器本地缓存、浏览器并发请求、文件的分发、数据库I/O优化、数据库访问、数据库分布式设计、负载均衡、分布式文件系统、性能监控等。在这些内容中充分抓住本质并结合实践,通过通俗易懂的文字和生动有趣的配图,让读者充分并深入理解高性能架构的真相。同时,本书充分应用跨学科知识和科学分析方法,通过宽泛的视野和独特的角度,将本书的内容展现得更加透彻和富有趣味。 目录 第1章 绪论. 1 1.1 等待的真相 1 1.2 瓶颈在哪里 2 1.3 增加带宽 3 1.4 减少网页中的http请求 4 1.5 加快服务器脚本计算速度 4 1.6 使用动态内容缓存 5 1.7 使用数据缓存 5 1.8 将动态内容静态化 6 1.9 更换web服务器软件 6 1.10 页面组件分离 7 1.11 合理部署服务器 7 1.12 使用负载均衡 8 1.13 优化数据库 8 1.14 考虑可扩展性 9 1.15 减少视觉等待 10 第2章 数据的网络传输 11 2.1 分层网络模型 11 2.2 带宽 22 2.3 响应时间 28 .2.4 互联互通 33 第3章 服务器并发处理能力 35 3.1 吞吐率 35 3.2 cpu并发计算 49 3.3 系统调用 60 3.4 内存分配 63 3.5 持久连接 65 3.6 i/o模型 68 3.7 服务器并发策略 81 第4章 动态内容缓存 96 4.1 重复的开销 96 4.2 缓存与速度 98 4.3 页面缓存 98 4.4 局部无缓存 112 4.5 静态化内容 112 第5章 动态脚本加速 121 5.1 opcode缓存 121 5.2 解释器扩展模块 132 5.3 脚本跟踪与分析 133 第6章 浏览器缓存 143 6.1 别忘了浏览器 143 6.2 缓存协商 147 6.3 彻底消灭请求 160 第7章 web服务器缓存 167 7.1 url映射 167 7.2 缓存响应内容 168 7.3 缓存文件描述符 175 第8章 反向代理缓存 178 8.1 传统代理 178 8.2 何为反向 179 8.3 在反向代理上创建缓存 180 8.4 小心穿过代理 202 8.5 流量分配 204 第9章 web组件分离 205 9.1 备受争议的分离.. 205 9.2 因材施教 206 9.3 拥有不同的域名 207 9.4 浏览器并发数 210 9.5 发挥各自的潜力 212 第10章 分布式缓存 220 10.1 数据库的前端缓存区 220 10.2 使用memcached 221 10.3 读操作缓存 225 10.4 写操作缓存 229 10.5 监控状态 232 10.6 缓存扩展 234 第11章 数据库性能优化 238 11.1 友好的状态报告 239 11.2 正确使用索引 241 11.3 锁定与等待 255 11.4 事务性表的性能 263 11.5 使用查询缓存 264 11.6 临时表 266 11.7 线程池 266 11.8 反范式化设计 267 11.9 放弃关系型数据库 269 第12章 web负载均衡 272 12.1 一些思考 272 12.2 http重定向 275 12.3 dns负载均衡 284 12.4 反向代理负载均衡 292 12.5 ip负载均衡 305 12.6 直接路由 317 12.7 ip隧道 325 12.8 考虑可用性 325 第13章 共享文件系统 328 13.1 网络共享 328 13.2 nfs 330 13.3 局限性 335 第14章 内容分发和同步 337 14.1 复制 337 14.2 ssh 338 14.3 webdav 342 14.4 rsync 342 14.5 hash tree 344 14.6 分发还是同步 345 14.7 反向代理 346 第15章 分布式文件系统 348 15.1 文件系统 348 15.2 存储节点和追踪器 350 15.3 mogilefs 352 第16章 数据库扩展 362 16.1 复制和分离 362 16.2 垂直分区 366 16.3 水平分区 367 第17章 分布式计算 374 17.1 异步计算 374 17.2 并行计算 379 第18章 性能监控 384 18.1 实时监控 384 18.2 监控代理 386 18.3 系统监控 388 18.4 服务监控 391 18.5 响应时间监控 393 参考文献 397 索引... 399

2014-08-28

wowza支持Ribbon服务示例代码

本资源是一个 Wowza 支持 Ribbon 服务的一个简单的 demo。关于如何让 wowza 能够支持 Ribbon 的步骤请参考博客《Ribbon 和 wowza 的集成开发》,地址是:http://blog.csdn.net/defonds/article/details/32708235。

2014-06-20

wowza支持RESTful web服务示例代码

本资源是一个 Wowza 支持 RESTful web 服务的一个简单的 demo。关于如何让 wowza 能够支持 RESTful api 的步骤请参考博客《让你的 wowza 服务器提供 RESTful web 服务》,地址是:http://blog.csdn.net/defonds/article/details/30490271。

2014-06-13

tcl官方最新安装包tcl8.6.1-src.tar.gz

截至 20140611,官方公布的最新安装包 tcl8.6.1-src.tar.gz。 关于它的安装请参考博客《Linux 下安装 Redis 服务器》,地址是:http://blog.csdn.net/defonds/article/details/30047611。

2014-06-11

redis官方最新安装包redis-2.8.10.tar.gz

截至 20140611,官方公布的最新安装包 redis-2.8.10.tar.gz,大小 1 MB。 关于它的安装请参考博客《Linux 下安装 Redis 服务器》,地址是:http://blog.csdn.net/defonds/article/details/30047611。

2014-06-11

Netty5.0架构剖析和源码解读.pdf[带书签]

《Netty5.0架构剖析和源码解读》,作者:李林锋,PDF 格式,大小 3.4 MB。本资源带有书签,方便读者朋友阅读。 目录: 1. 概述 1.1. JAVA 的 IO 演进 1.1.1. 传统 BIO 通信的弊端 1.1.2. Linux 的网络 IO 模型简介 1.1.3. IO 复用技术介绍 1.1.4. JAVA 的异步 IO 1.1.5 业界主流的 NIO 框架介绍 2. NIO 入门 2.1. NIO 服务端 2.2. NIO 客户端 3. Netty 源码分析 3.1. 服务端创建 3.1.1. 服务端启动辅助类 ServerBootstrap 3.1.2. NioServerSocketChannel 的注册 3.1.3. 新的客户端接入 3.2. 客户端创建 3.2.1. 客户端连接辅助类 Bootstrap 3.2.2. 服务端返回 ACK 应答,客户端连接成功 3.3. 读操作 3.3.1. 异步读取消息 3.4. 写操作 3.4.1. 异步消息发送 3.4.2. Flush 操作 4. Netty 架构 4.1. 逻辑架构 5. 附录

2014-05-29

Everything I Learned About Scaling Online Games I Learned at Google and eBay

2014 年 QCon 全球软件开发大会在北京召开。众多前沿领域的领军人物进行了知识共享。会议详情见:http://www.qconbeijing.com/schedule.html。 本文是为 Everything I Learned About Scaling Online Games I Learned at Google and eBay 知识共享。目录如下: Background Real-Time Strategy Games are ... How to Scale - Scaling Code Embrace Open Source Embrace Standard Data Formats Development Discipline How to Scale - Scaling Infrastructure Layering Micro-Services Google Cloud Datastore Reactive Servers Client Liveness How to Scale - Scaling Performance Scalability and Performance Small Details Matter eBay Search Index Compression TOME Combat Server Measurement and Distributions How to Scale - Scaling DevOps Automate Everything Autoscaling App Engine Autoscaling Google and DevOps Recap: How to Scale Thank you!

2014-05-23

姚四芳 微博平台架构练级之高可用

姚四芳 微博平台架构练级之高可用

2014-05-23

Wowza集成Memcached示例代码

本资源是一个 Wowza 集成 Memcached 的一个简单的 demo。关于 Memcached 与 Wowza 项目的集成步骤请参考博客《Memcached 与 Wowza 项目的集成》,地址是:http://blog.csdn.net/defonds/article/details/24418389。

2014-04-24

WMSPanel项目组的wowza集成maven例子

本资源是为 WMSPanel 项目组公布在 github 上的开源项目 wowza-maven-template。关于 wowza 和 maven 的集成参考博客《Wowza 插件开发和 Maven 的集成》,博客地址:http://blog.csdn.net/defonds/article/details/22813295。

2014-04-02

Wowza插件开发和Maven的集成示例项目

本资源代码是为博客《Wowza 插件开发和 Maven 的集成》示例完整源代码,博客地址:http://blog.csdn.net/defonds/article/details/22813295。

2014-04-02

javaWeb图书馆管理系统源码mysql版本

系统介绍 图书馆管理系统主要的目的是实现图书馆的信息化管理。图书馆的主要业务就是新书的借阅和归还,因此系统最核心的功能便是实现图书的借阅和归还。此外,还需要提供图书的信息查询、读者图书借阅情况的查询等功能。项目实施后,能够提高图书馆的图书借阅、归还流程,提高工作效率。整个项目需要在两个月的时间内交付用户使用。 操作注意事项 (1)本系统的用户名为:tsoft,密码为:111 (2)读者类型不同,可借图书的本数也有所区别。 操作流程 (1)用户登录图书馆管理系统后,可看到图书借阅排行榜,通过排行榜可以看出借阅图书的名称、图书类型、借阅次数等相关信息。 (2)单击“系统设置”/“图书馆信息”命令,对图书馆信息进行设置操作。 (3)单击“系统设置”/“管理员设置”命令,对管理员信息进行添加、权限设置、查询及删除操作。 (4)单击“系统设置”/“参数设置”命令,对办证费用及有效期限信息进行添加操作。 (5)单击“系统设置”/“书架设置”命令,对书架信息进行添加、修改及删除操作。 (6)单击“读者管理”/“读者类型管理”命令,对读者类型信息进行添加、修改及删除操作。 (7)单击“读者管理”/“读者档案管理”命令,对读者信息进行添加、修改及删除操作。 (8)单击“图书管理”/“图书类型设置”命令,对图书类型信息进行添加、修改及删除操作。 (9)单击“图书管理”/“图书档案管理”命令,对图书信息进行添加、修改及删除操作。 (10)单击“图书借还”/“图书借阅”命令,对图书借阅信息添加操作。 (11)单击“图书借还”/“图书续借”命令,对图书续借信息进行添加操作。 (12)单击“图书借还”/“图书归还”命令,对图书归还信息进行添加操作。 (13)单击“系统查询”/“图书档案查询”命令,对图书档案信息进行查询操作。 (14)单击“系统查询”/“图书借阅查询”命令,对借阅的图书信息进行查询操作。 (15)单击“系统查询”/“借阅到期提醒”命令,对借阅到期提醒信息进行查询操作。 (16)单击“更改口令”按钮,对当前的用户密码进行修改操作。 (17)单击“退出系统”按钮,退出当前操作系统。

2014-03-31

wowza4安装包(含windows和Linux两个)

截至 20140328 为止 wowza 官方发布的最新 Wowza Streaming Engine 安装包,版本为 4.0.3,含 windows 和 Linux 两个,一个 119.116 MB 的 WowzaStreamingEngine-4.0.3.exe,一个 110.148 MB 的 WowzaStreamingEngine-4.0.3.rpm.bin。 关于 wowza4 的安装事项,参考博客《Linux 下安装 wowza 服务器》,地址:http://blog.csdn.net/defonds/article/details/22407623。

2014-03-28

Wowza4.0.3用户指南.pdf

截至 20140328,wowza 官方公布的最新 Wowza Stream Engine 用户指南手册,主要针对 4.0.3 版本。

2014-03-28

navicat for mysql10.0.11简体中文破解版

navicat for mysql10.0.11简体中文版,绿色免安装版本,内含注册码。本资源大小 20MB。

2014-03-25

JavaWeb版人才管理系统项目源码

人力资源管理在管理学中是一个非常重要的领域,通过人力资源管理能够对企业员工进行有效的管理。它的作用已经大大超过了人事管理,正因为如此,这种新型的管理模式越来越被人们所重视到。有效的人力资源管理是社会各组织、各企业都需要的。在本章将一个Web版的人力资源管理系统,通过该系统对企业人力资源进行管理,使企业人力资源管理适应时代的发展要求,从而大大的提高企业核心竞争力。 重点内容: 了解人力资源管理系统的基本需求 学会如何分析和设计数据库 学会数据库的基本使用 学会如何使用Struts+Hibernate进行开发 功能分析 人力资源管理系统可以分为五个功能模块,分别为人事管理、招聘管理、培训管理、考勤管理以及薪酬管理。其中各功能模块的具体说明如下。 人事管理模块:该模块主要用来管理人事信息,包括员工基本信息、合同信息等等。 招聘管理模块:该模块主要用来对企业的招聘信息、应聘信息、企业人才库等等信息进行管理。 培训管理模块:该模块主要用来对企业的培训计划、培训实施、培训时间、培训材料等等信息进行管理。 考勤管理模块:该模块用来对企业员工的考勤信息、奖惩信息等等信息进行管理。 薪酬管理模块:该模块用来对员工的薪酬信息进行管理。

2014-03-25

spring集成数据库连接池到Wowza示例代码

本资源是博客《使用 spring 集成 dbcp 数据库连接池到 Wowza 插件》中的示例代码,博客地址:http://blog.csdn.net/defonds/article/details/22102561。

2014-03-25

JavaWeb版医药管理系统[中英文版]

数据库为GBK 请大家建立数据库时注意 数据库配置 :hibernate.cfg.xml 参数配置 :MessageResources_zh_CN.properties 首页登录 :http://localhost:8080/MedicineManager/ 用户登录页面 可以切换中英文: 测试了将近2个小时 基本跑的不错 但是貌似有乱码问题、大家试着解决吧

2014-03-24

京东网javaWeb项目源代码

数据库为Oracle 因为本地没有Oracle数据库所以转为mysql数据库测试了一下基本可以跑通、但是还有很多细节问题去处理。配置文件 为 jdbc.properties 本人只是测试了登陆 跟注册 其他功能未知 需要大家自己去摸索调试

2014-03-21

当当网全套源码(附带邮箱验证功能)

1.项目介绍 典型电子商务系统(在线购物平台)。模拟了当当系统部分功能。 2.功能需求 1)用户管理模块(3天)user 实现登录、注册功能 2)产品浏览模块(2天)main 实现主界面和类别浏览功能 3)购物车模块(1.5天)cart 实现购买、变更数量、删除等功能 4)生成订单模块(1.5天)order 订单确认、填写送货地址、生成订单功能 3.技术应用 1)技术架构 Struts2,JDBC(连接池),jQuery,Ajax 2)设计思想 MVC和分层设计思想 a.显示层:JSP组件(jQuery,Ajax) b.控制层:Struts2控制器组件、Action组件 c.业务层:Bean组件 d.数据访问层:DAO组件(JDBC) 4.数据库设计 1)数据库导入 create database dangdang; //创建库 use dangdang; //进入dangdang库 set names utf8; //设置连接和发送SQL编码 source 路径/dangdang.sql; //导入sql文件 2)数据表功能 a.d_user(用户信息表) 存储了用户信息,涉及登录和注册功能 b.d_receive_address(收货地址信息表) 存储了收货地址信息,涉及填写送货地址功能 c.d_category(类别信息表) 存储了图书的类别信息,涉及主界面左侧类别菜单功能 d.d_book(图书信息表) 存储了图书的特有信息,涉及产品浏览等功能 e.d_product(产品信息表) 存储了各类型产品的共通信息字段。 f.d_category_product(类别和产品对应关系表) 存储了类别和产品之间包含关系,涉及产品浏览功能 g. d_order(订单信息表) 存储了订单信息,涉及创建订单功能 h. d_item(订单明细表) 存储了订单中所购买的商品信息,涉及创建订单功能。 5. 搭建工程结构 1)引入需要的开发包 struts2开发包 jdbc开发包 dbcp连接池开发包 2)src文件结构 org.tarena.dang.action :控制层 org.tarena.dang.action.user :用户模块的action org.tarena.dang.action.main :产品浏览的action org.tarena.dang.action.order :订单的action org.tarena.dang.action.cart :购物车的action org.tarena.dang.service :业务层 org.tarena.dang.dao :数据访问层 org.tarena.dang.entity :实体类 org.tarena.dang.util :工具类 org.tarena.dang.interceptor :拦截器 3)struts配置文件结构 web.xml(配置Filter控制器) struts.xml (struts主配置文件) struts-user.xml(用户模块配置文件) struts-main.xml(浏览模块配置文件) struts-order.xml(订单模块配置文件) struts-cart.xml(购物车模块配置文件) 4)WebRoot文件结构 /user/* :用户管理的JSP /cart/* :购物车的JSP /order/* :订单的JSP /main/* :产品浏览的JSP /common/* :页眉、页脚等共同JSP /js/* : 放置js脚本文件 /css/* :放置css样式文件 /images/* :放置页面图片文件 /productImages/* :放置产品图片 -----------------连接池的优点----------------- a.可以管理Connection对象,并且将Connection数量控制在一个安全范围内。提高数据库的访问安全性。 b.连接池中的Connection对象与数据库保持连接状态,避免频繁的建立和销毁连接。 ============用户管理模块============== 1.注册需求 1)表单验证(采用js+Ajax) 邮箱:非空、格式、唯一性(ajax) 昵称:非空、格式 密码:非空、格式 确认密码:非空、与密码一致 验证码:非空、正确性(ajax) 2)将表单信息写入数据表d_user 编写实体类、DAO、Action 3)给用户邮箱发送验证码 引入commons-email.jar,email.jar 参考EmailUtil工具类代码 4)进入邮箱验证页面verify_form.jsp 2.邮箱验证 1)表单验证 验证码:非空、正确性(ajax) 正确后跳转到成功提示界面:window.location = "register_ok.jsp"; 2)Action逻辑 a.利用验证码去d_user检查 b.如果正确,将d_user的is_email_verify字段更新成Y;不正确在verify_form.jsp提示“验证失败” c.跳转到register_ok.jsp 3.用户登录 1)表单验证 邮箱:非空、格式 密码:非空 2)Action逻辑 a.检测Email和密码是否正确,失败回到login_form.jsp提示 b.检测is_email_verify邮箱是否通过验证,未通过进入verify_form.jsp c.更新最后一次登录时间last_login_time和IP地址last_login_ip。 d.将用户信息放入session。 e.都正确进入/main/main.jsp 4.main.jsp页面的页眉部分,显示用户是否登录的状态 如果用户已登录,显示"欢迎XXX,【登出】" 如果用户未登录,显示"【登录】【注册】" 数据库 模型 其实项目目 还有不少缺陷 需要完整、大家可以自行修改、里面有一处bug关于购物车的,注入问题、大家自己找找吧

2014-03-18

Java Web酒店管理系统源码 +mysql 数据库

酒店管理系统分为前台和后台两个部分,其中后台供管理员管理系统之用,包括客房类型设置模块、客房设置模块以及操作员设置三个子模块,具体的功能模块如下。 客房类型设置模块:该模块用来管理酒店的所有客房类型,包括新增客房类型、编辑已有客房类型、删除客房类型等功能。 客房设置模块:该模块用来管理酒店的所有客房信息,包括新增客房、编辑已有客房、删除客房等功能。 操作员设置模块:该模块用来管理酒店的操作员信息,包括新增操作员、编辑已有操作员信息、删除操作信息等功能。 系统前台供酒店所有工作人员使用,包括入住登记模块、结账模块、预定模块、客户管理模块以及业务统计五个模块。具体的功能模块如下。 入住登记模块:该模块用来登记客户的入住信息,其中入住信息包括登记信息、客人信息以及费用信息三部分。 结账模块:该模块用来处理客户的退房信息,只需要知道客户所住的房间号码,就能进行退房结账。 预定模块:该模块用来处理客户的预定信息,除了可以新增预定信息外,还可以对已有的预定信息进行管理。 客户管理模块:该模块用来管理客户的登记信息,包括新增客户信息、编译已有客户信息、删除客户信息等功能。 业务统计模块:该模块用来统计酒店的客房出租率,并且已图形报表的形式来显示出租率信息。 本系统的开发工具具体如下。 系统开发平台:MyEclipse 6.5。 数据库管理系统软件:MySQL 5.0。 java开发包:JDK 5.0以上。 Web服务器:Tomcat 6.0。 本系统采用MVC架构模式开发,具体技术如下。 AJAX框架:使用ExtJS技术开发 显示层:使用JSP技术开发 数据访问层:使用DAO模式开发 持久层:使用Hibernate框架开发 首页访问地址 :http://localhost:8080/JavaPrj_9/首页配置 页面 修改 打开web.xml 修改 即可 <welcome> <welcome>/WEB-INF/pages/userLogin.jsp</welcome> </welcome> 复制代码 数据库配置 为hotel-hibernate.xml 文件 测试了将近2个小时 系统跑的还不错 一下小细节 bug 大家可以自己去调整下

2014-03-19

Java Web项目报价管理系统mysql版本

本资源内含项目源码以及数据库。 重点内容: * 了解报价管理系统的基本需求 * 学会如何分析和设计数据库 * 学会数据库的基本使用 * 学会如何使用Struts2+JPA+Spring进行开发 功能 分析: 报价管理系统可以分为五个功能模块,分别是客户管理模块、产品管理模块、订单管理模块、报价管理模块以及系统用户管理模块,其中各功能模块的具体说明如下。 客户管理模块:该模块主要用来管理客户信息,包括客户的名称、联系电话、联系地址、联系人等信息。 产品管理模块:该模块主要用来管理产品类别和产品信息,包括产品的名称、产品的单位、产品的价格等信息。 订单管理模块:该模块主要用来管理订单信息,包括下单客户名称、产品名称、产品数量等信息。 报价管理模块:该模块主要用来管理报价信息,包括客户名称、产品名称、报价人、报价时间等信息。 系统用户管理模块:该模块用来管理系统用户信息,包括用户名、用户级别、用户密码等信息。 部分截图: 登陆首页: http://localhost:8080/JavaPrj_6/login.do

2014-03-17

软件测试的艺术(原书第2版).pdf

《软件测试的艺术(原书第2版)》,英文名《The Art of Software Testing, Second Edition》,原作者:(美)Glenford J.Myers 等,翻译:王峰、陈杰,出版社:机械工业出版社,ISBN:7111173198,PDF 格式,大小 5.1MB。 内容简介: 本书以一次自评价测试开篇,从软件测试的心理学和经济学人手,探讨了代码检查、走查与评审、测试用例的设计、模块(单元)测试、系统测试、调试等主题,以及极限测试、因特网应用系统测试等高级主题,全面展现了作者的软件测试思想。本书是软件测试领域的佳作,其结构合理、内容简洁、语言流畅。本书适合作为软件测试从业人员的参考手册,以及高等院校软件测试课程的教材或参考书。 目录: 译者序 前言 引言 第1章 一次自评价测试 第2章 软件测试的心理学和经济学 2.1 软件测试的心理学 2.2 软件测试的经济学 2.2.1 黑盒测试 2.2.2 白盒测试 2.3 软件测试的原则 2.4 小结 第3章 代码检查,走查与评审 3.1 代码检查与走查 3.2 代码检查 3.3 用于代码检查的错误列表 3.3.1 数据引用错误 3.3.2 数据声明错误 3.3.3 运算错误 3.3.4 比较错误 3.3.5 控制流程错误 .3.3.6 接口错误 3.3.7 输入/输出错误 3.3.8 其他检查 3.4 代码走查 3.5 桌面检查 3.6 同行评分 3.7 小结 第4章 测试用例的设计 4.1 白盒测试 4.1.1 逻辑覆盖测试 4.1.2 等价划分 4.1.3 一个范例 4.1.4 边界值分析 4.1.5 因果图 4.2 错误猜测 4.3 测试策略 第5章 模块(单元)测试 5.1 测试用例设计 5.2 增量测试 5.3 自顶向下测试与自底向上测试 5.3.1 自顶向下的测试 5.3.2 自底向上的测试 5.3.3 比较 5.4 执行测试 第6章 更高级别的测试 6.1 功能测试 6.2 系统测试 6.2.1 能力测试 6.2.2 容量测试 6.2.3 强度测试 6.2.4 易用性测试 6.2.5 安全性测试 6.2.6 性能测试 6.2.7 存储测试 6.2.8 配置测试 6.2.9 兼容性/配置/转换测试 6.2.10 安装测试 6.2.11 可靠性测试 6.2.12 可恢复性测试 6.2.13 适用性测试 6.2.14 文档测试 6.2.15 过程测试 6.2.16 系统测试的执行 6.3 验收测试 6.4 安装测试 6.5 测试的计划与控制 6.6 测试结束准则 6.7 独立的测试机构 第7章 调试 7.1 暴力法调试 7.2 归纳法调试 7.3 演绎法调试 7.4 回溯法调试 7.5 测试法调试 7.6 调试的原则 7.6.1 定位错误的原则 7.6.2 修改错误的技术 7.7 错误分析 第8章 极限测试 8.1 极限编程基础 8.2 极限测试:概念 8.2.1 极限单元测试 8.2.2 验收测试 8.3 极限测试的应用 8.3.1 测试用例设计 8.3.2 测试驱动器及其应用 8.4 小结 第9章 测试因特网应用系统 9.1 电子商务的基本结构 9.2 测试的挑战 9.3 测试的策略 9.3.1 表示层的测试 9.3.2 业务层的测试 9.3.3 数据层的测试 附录a 极限测试应用程序样例 附录b 小于1000的素数 词汇表

2014-02-10

软件测试精要.pdf

《软件测试精要》,作者:51Testing软件测试网 董杰,出版社:电子工业出版社,ISBN:9787121080289,PDF 格式,大小 21MB。 内容简介: 本书内容是以人的认知客观发展规律为主线来逐渐演进的,使得处于测试各阶段的读者都能在本书中找到对自己有价值的内容。内容基本主线为:.    第一步(测试的态度、测试策略的相关因素):端正和树立正确的“测试态度”,掌握“软技能”;第二步(自动化测试策略、性能测试与troubleshooting、安全测试技术):学习和掌握向高阶测试高手发展的技巧和思想,掌握“硬技能”;第三步(测试职业发展、测试的组织架构与测试管理):找到和了解未来测试职业生涯的发展趋势,看清“航行的方向”;第四步(测试杂谈):在测试工作中找到本职工作的意义和体现个人的价值,知道“目标的意义”。本书围绕以上四步编排内容。..    本书既适合渴望了解软件测试的新人,也适合对软件测试有一定认识和经验的中、高级测试工程师。同时,本书也可以作为高校开展软件测试课程的参考教材,让在校学生能对软件测试的本质和价值有一定的认识。... 目录: 第1章 测试的态度 .1 1.1 精益求精 2 1.1.1 测试用例设计的精益求精 2 1.1.2 性能测试的精益求精 6 1.1.3 回归测试的精益求精 9 1.1.4 测试脚本开发的精益求精 10 1.1.5 测试工具开发的精益求精 11 1.2 总结与温习的重要性 12 1.3 学习和思考 17 1.4 谦虚好学 19 1.5 工欲善其事,必先利其器 21 1.6 人无远虑,必有近忧 24 第2章 测试策略的相关因素 27 2.1 测试资源与时间控制 28 2.2 测试的知己知彼 31 2.3 测试效率的优化 35 2.4 测试中技术风险的控制 38 2.5 测试中的金矿 40 2.6 灵活机动的测试 43 第3章 自动化测试策略 46 .3.1 解析自动化测试的理解误区 47 3.2 自动化测试与手工测试的分工 49 3.3 自动化测试实施策略 52 3.4 自动化测试实施过程 58 3.4.1 制定自动化测试方案 58 3.4.2 自动化测试脚本开发 60 3.4.3 自动化测试脚本的执行 62 3.5 自动化测试开发脚本 63 3.5.1 什么是测试脚本语言 63 3.5.2 tcl的故事 67 3.5.3 perl的故事 70 3.5.4 python的故事 74 3.6 自动化测试工具介绍 76 3.6.1 winrunner 77 3.6.2 fanfare 79 第4章 性能测试与troubleshooting 84 4.1 性能测试 85 4.1.1 什么是性能测试 85 4.1.2 性能调优 89 4.1.3 压力测试 91 4.2 troubleshooting 93 4.3 优秀性能测试工具推荐 97 4.3.1 loadrunner 97 4.3.2 smartbits 100 4.3.3 ixia ..101 第5章 安全测试技术 103 5.1 终极测试人——黑客 104 5.1.1 黑客本质 104 5.1.2 知名的测试黑客的故事 104 5.1.3 安全测试应该包含什么 108 5.2 优秀安全性测试工具推荐 113 5.2.1 针对web安全性的工具 113 5.2.2 针对设备的安全性工具 113 第6章 测试职业发展 118 6.1 选择——听你的心 119 6.2 职业选择的象限 123 6.3 测试职业种类 125 6.3.1 普通测试工程师 125 6.3.2 性能测试工程师 127 6.3.3 测试设计专家 128 6.3.4 自动化测试专家 130 6.3.5 测试工具开发专家 131 6.3.6 测试管理者 133 6.4 突破测试的选择 136 6.4.1 市场 137 6.4.2 项目管理 139 6.4.3 售前技术支持 141 6.4.4 售后技术支持 142 6.4.5 技术培训 143 6.4.6 转向开发 144 6.4.7 做生意 146 6.5 外企和民企的选择 147 6.6 大公司和小公司的选择 150 6.7 外包公司和自主产品公司的选择 152 第7章 测试组织架构与测试管理 154 7.1 测试部架构与公司架构的对照 155 7.1.1 功能测试工程师——销售部 155 7.1.2 测试工具开发和自动化测试开发——研发部 155 7.1.3 测试设计工程师——公司的战略规划和市场部 156 7.1.4 解决方案测试工程师和系统测试工程师——销售部中的高级销售人员 156 7.1.5 测试领导者——公司的管理部门 156 7.2 测试部架构与军队组织架构的对照 157 7.2.1 功能测试工程师——一线战斗的步兵 157 7.2.2 测试工具开发——军工厂给战士提供先进的武器 157 7.2.3 测试设计工程师——军队参谋和各级指挥官 158 7.2.4 解决方案测试工程师和系统测试工程师——军中的空军和海军 158 7.2.5 自动化测试脚本开发工程师——军中的炮兵 159 7.2.6 测试领导者——军中的军长和政委 160 7.3 测试团队管理 160 7.4 测试新人的培训建议 168 第8章 测试杂谈 171 8.1 测试是科学也是艺术 172 8.2 测试人员真正做什么 174 8.3 软件测试的前景 178 8.4 测试人员市场需求现状 180 8.5 测试中的困难 191 8.6 测试经验杂谈 193 8.7 测试工程师的基本素质 196 8.8 谁是测试团队中的核心技术人员 198 8.9 软件测试值得投资吗 201 8.10 软件测试的黄金阶段 203 8.11 软件测试验收基准 206 附录a 测试职业经历随谈 208 后记... 212

2014-02-10

持续交付--发布可靠软件的系统方法.pdf

《持续交付--发布可靠软件的系统方法》,英文名《Continuous Delivery: Reliable Software Releases through Build, Test, and Deployment Automation》,原作者:(英)Jez Humble、(英)David Farley,翻译:乔梁,出版社:人民邮电出版社,ISBN:9787115264596,PDF 格式,大小 47MB。 内容简介: 《持续交付--发布可靠软件的系统方法》是一本软件工程师的职场指南,以大量虚构的名字和情景描述了极客的日常工作,对他们常遇到的各类棘手问题给予了巧妙回答。作者以自己在苹果、网景等公司中面临的生死攸关的时刻所做的抉择为例,总结了在硅谷摸爬滚打的经验,旨在为软件工程师更好地规划自己的职业生涯提供帮助。    《持续交付--发布可靠软件的系统方法》适合软件工程师以及所有职场人士阅读。 目录: 《持续交付--发布可靠软件的系统方法》 第一部分 基础篇 第1章 软件交付的问题 2 1.1 引言 2 1.2 一些常见的发布反模式 3 1.2.1 反模式:手工部署软件 4 1.2.2 反模式:开发完成之后才向类生产环境部署 5 1.2.3 反模式:生产环境的手工配置管理 7 1.2.4 我们能做得更好吗 8 1.3 如何实现目标 9 1.3.1 每次修改都应该触发反馈流程 10 1.3.2 必须尽快接收反馈 11 1.3.3 交付团队必须接收反馈并作出反应 12 1.3.4 这个流程可以推广吗 12 1.4 收效 12 1.4.1 授权团队 13 1.4.2 减少错误 13 1.4.3 缓解压力 15 1.4.4 部署的灵活性 16 1.4.5 多加练习,使其完美 17 .1.5 候选发布版本 17 1.6 软件交付的原则 19 1.6.1 为软件的发布创建一个 可重复且可靠的过程 19 1.6.2 将几乎所有事情自动化 19 1.6.3 把所有的东西都纳入版 本控制 20 1.6.4 提前并频繁地做让你 感到痛苦的事 20 1.6.5 内建质量 21 1.6.6 “done”意味着“已发 布” 21 1.6.7 交付过程是每个成员的 责任 22 1.6.8 持续改进 22 1.7 小结 23 第2章 配置管理 24 2.1 引言 24 2.2 使用版本控制 25 2.2.1 对所有内容进行版本控 制 26 2.2.2 频繁提交代码到主干 28 2.2.3 使用意义明显的提交注 释 29 2.3 依赖管理 30 2.3.1 外部库文件管理 30 2.3.2 组件管理 30 2.4 软件配置管理 31 2.4.1 配置与灵活性 31 2.4.2 配置的分类 33 2.4.3 应用程序的配置管理 33 2.4.4 跨应用的配置管理 36 2.4.5 管理配置信息的原则 37 2.5 环境管理 38 2.5.1 环境管理的工具 41 2.5.2 变更过程管理 41 2.6 小结 42 第3章 持续集成 43 3.1 引言 43 3.2 实现持续集成 44 3.2.1 准备工作 44 3.2.2 一个基本的持续集成系 统 45 3.3 持续集成的前提条件 46 3.3.1 频繁提交 46 3.3.2 创建全面的自动化测试 套件 47 3.3.3 保持较短的构建和测试 过程 47 3.3.4 管理开发工作区 49 3.4 使用持续集成软件 49 3.4.1 基本操作 49 3.4.2 铃声和口哨 50 3.5 必不可少的实践 52 3.5.1 构建失败之后不要提交 新代码 52 3.5.2 提交前在本地运行所有 的提交测试,或者让持 续集成服务器完成此事 53 3.5.3 等提交测试通过后再继 续工作 54 3.5.4 回家之前,构建必须处 于成功状态 54 3.5.5 时刻准备着回滚到前一 个版本 55 3.5.6 在回滚之前要规定一个 修复时间 56 3.5.7 不要将失败的测试注释 掉 56 3.5.8 为自己导致的问题负责 56 3.5.9 测试驱动的开发 57 3.6 推荐的实践 57 3.6.1 极限编程开发实践 57 3.6.2 若违背架构原则,就让 构建失败 58 3.6.3 若测试运行变慢,就让 构建失败 58 3.6.4 若有编译警告或代码风 格问题,就让测试失败 59 3.7 分布式团队 60 3.7.1 对流程的影响 60 3.7.2 集中式持续集成 61 3.7.3 技术问题 61 3.7.4 替代方法 62 3.8 分布式版本控制系统 63 3.9 小结 66 第4章 测试策略的实现 67 4.1 引言 67 4.2 测试的分类 68 4.2.1 业务导向且支持开发过 程的测试 69 4.2.2 技术导向且支持开发过 程的测试 72 4.2.3 业务导向且评价项目的 测试 72 4.2.4 技术导向且评价项目的 测试 73 4.2.5 测试替身 74 4.3 现实中的情况与应对策略 75 4.3.1 新项目 75 4.3.2 项目进行中 76 4.3.3 遗留系统 77 4.3.4 集成测试 78 4.4 流程 80 4.5 小结 82 第二部分 部署流水线 第5章 部署流水线解析 84 5.1 引言 84 5.2 什么是部署流水线 85 5.3 部署流水线的相关实践 91 5.3.1 只生成一次二进制包 91 5.3.2 对不同环境采用同一部 署方式 93 5.3.3 对部署进行冒烟测试 94 5.3.4 向生产环境的副本中部 署 94 5.3.5 每次变更都要立即在流 水线中传递 95 5.3.6 只要有环节失败,就停 止整个流水线 96 5.4 提交阶段 96 5.5 自动化验收测试之门 99 5.6 后续的测试阶段 102 5.6.1 手工测试 103 5.6.2 非功能测试 103 5.7 发布准备 104 5.7.1 自动部署与发布 104 5.7.2 变更的撤销 106 5.7.3 在成功的基础上构建 107 5.8 实现一个部署流水线 107 5.8.1 对价值流进行建模并创 建简单的可工作框架 107 5.8.2 构建和部署过程的自动 化 108 5.8.3 自动化单元测试和代码 分析 109 5.8.4 自动化验收测试 109 5.8.5 部署流水线的演进 110 5.9 度量 111 5.10 小结 113 第6章 构建与部署的脚本化 115 6.1 引言 115 6.2 构建工具概览 116 6.2.1 make 118 6.2.2 ant 118 6.2.3 nant 与 msbuild 119 6.2.4 maven 120 6.2.5 rake 121 6.2.6 buildr 121 6.2.7 psake 121 6.3 构建部署脚本化的原则与实践 122 6.3.1 为部署流水线的每个 阶段创建脚本 122 6.3.2 使用恰当的技术部署 应用程序 122 6.3.3 使用同样的脚本向所 有环境部署 123 6.3.4 使用操作系统自带的 包管理工具 124 6.3.5 确保部署流程是幂等 的(idempotent) 125 6.3.6 部署系统的增量式演进 126 6.4 面向jvm的应用程序的项目 结构 126 6.5 部署脚本化 129 6.5.1 多层的部署和测试 130 6.5.2 测试环境配置 131 6.6 小贴士 132 6.6.1 总是使用相对路径 132 6.6.2 消除手工步骤 132 6.6.3 从二进制包到版本控制 库的内建可追溯性 133 6.6.4 不要把二进制包作为构 建的一部分放到版本控制库中 133 6.6.5 “test”不应该让构建失 败 134 6.6.6 用集成冒烟测试来限制 应用程序 134 6.6.7 .net小贴士 135 6.7 小结 135 第7章 提交阶段 137 7.1 引言 137 7.2 提交阶段的原则和实践 138 7.2.1 提供快速有用的反馈 138 7.2.2 何时令提交阶段失败 139 7.2.3 精心对待提交阶段 140 7.2.4 让开发人员也拥有所有 权 140 7.2.5 在超大项目团队中指定 一个构建负责人 141 7.3 提交阶段的结果 141 7.4 提交测试套件的原则与实践 144 7.4.1 避免用户界面 145 7.4.2 使用依赖注入 145 7.4.3 避免使用数据库 145 7.4.4 在单元测试中避免异步 146 7.4.5 使用测试替身 146 7.4.6 最少化测试中的状态 149 7.4.7 时间的伪装 150 7.4.8 蛮力 150 7.5 小结 151 第8章 自动化验收测试 152 8.1 引言 152 8.2 为什么验收测试是至关重要的 153 8.2.1 如何创建可维护的验收 测试套件 155 8.2.2 gui上的测试 156 8.3 创建验收测试 157 8.3.1 分析人员和测试人员的 角色 157 8.3.2 迭代开发项目中的分析 工作 157 8.3.3 将验收条件变成可执行 的规格说明书 158 8.4 应用程序驱动层 161 8.4.1 如何表述验收条件 163 8.4.2 窗口驱动器模式:让测 试与gui解耦 164 8.5 实现验收测试 166 8.5.1 验收测试中的状态 166 8.5.2 过程边界、封装和测试 168 8.5.3 管理异步与超时问题 169 8.5.4 使用测试替身对象 171 8.6 验收测试阶段 174 8.6.1 确保验收测试一直处于 通过状态 175 8.6.2 部署测试 177 8.7 验收测试的性能 178 8.7.1 重构通用任务 178 8.7.2 共享昂贵资源 179 8.7.3 并行测试 180 8.7.4 使用计算网格 180 8.8 小结 181 第9章 非功能需求的测试 183 9.1 引言 183 9.2 非功能需求的管理 184 9.3 如何为容量编程 186 9.4 容量度量 188 9.5 容量测试环境 191 9.6 自动化容量测试 194 9.6.1 通过ui的容量测试 195 9.6.2 基于服务或公共api来 录制交互操作 196 9.6.3 使用录制的交互模板 197 9.6.4 使用容量测试桩开发测 试 198 9.7 将容量测试加入到部署流水 线中 199 9.8 容量测试系统的附加价值 201 9.9 小结 202 第10章 应用程序的部署与发布 203 10.1 引言 203 10.2 创建发布策略 204 10.2.1 发布计划 205 10.2.2 发布产品 205 10.3 应用程序的部署和晋级 206 10.3.1 首次部署 206 10.3.2 对发布过程进行建模 并让构建晋级 207 10.3.3 配置的晋级 209 10.3.4 联合环境 209 10.3.5 部署到试运行环境 210 10.4 部署回滚和零停机发布 211 10.4.1 通过重新部署原有的 正常版本来进行回滚 211 10.4.2 零停机发布 212 10.4.3 蓝绿部署 212 10.4.4 金丝雀发布 213 10.5 紧急修复 216 10.6 持续部署 216 10.7 小贴士和窍门 219 10.7.1 真正执行部署操作的 人应该参与部署过程的创建 219 10.7.2 记录部署活动 220 10.7.3 不要删除旧文件,而 是移动到别的位置 220 10.7.4 部署是整个团队的责 任 220 10.7.5 服务器应用程序不应 该有gui 220 10.7.6 为新部署留预热期 221 10.7.7 快速失败 221 10.7.8 不要直接对生产环境 进行修改 222 10.8 小结 222 第三部分 交付生态圈 第11章 基础设施和环境管理 224 11.1 引言 224 11.2 理解运维团队的需要 225 11.2.1 文档与审计 226 11.2.2 异常事件的告警 227 11.2.3 保障it服务持续性的计划 227 11.2.4 使用运维团队熟悉的 技术 228 11.3 基础设施的建模和管理 229 11.3.1 基础设施的访问控制 230 11.3.2 对基础设施进行修改 231 11.4 服务器的准备及其配置的 管理 232 11.4.1 服务器的准备 233 11.4.2 服务器的持续管理 234 11.5 中间件的配置管理 239 11.5.1 管理配置项 239 11.5.2 产品研究 241 11.5.3 考查中间件是如何处 理状态的 242 11.5.4 查找用于配置的api 242 11.5.5 使用更好的技术 243 11.6 基础设施服务的管理 243 11.7 虚拟化 245 11.7.1 虚拟环境的管理 247 11.7.2 虚拟环境和部署流 水线 249 11.7.3 用虚拟环境做高度的 并行测试 251 11.8 云计算 252 11.8.1 云中基础设施 253 11.8.2 云中平台 254 11.8.3 没有普适存在 255 11.8.4 对云计算的批评 256 11.9 基础设施和应用程序的监控 256 11.9.1 收集数据 257 11.9.2 记录日志 259 11.9.3 建立信息展示板 259 11.9.4 行为驱动的监控 261 11.10 小结 261 第12章 数据管理 263 12.1 引言 263 12.2 数据库脚本化 264 12.3 增量式修改 265 12.3.1 对数据库进行版本 控制 265 12.3.2 联合环境中的变更 管理 267 12.4 数据库回滚和无停机发布 268 12.4.1 保留数据的回滚 268 12.4.2 将应用程序部署与 数据库迁移解耦 269 12.5 测试数据的管理 270 12.5.1 为单元测试进行数 据库模拟 271 12.5.2 管理测试与数据之 间的耦合 272 12.5.3 测试独立性 272 12.5.4 建立和销毁 273 12.5.5 连贯的测试场景 273 12.6 数据管理和部署流水线 274 12.6.1 提交阶段的测试数据 274 12.6.2 验收测试中的数据 275 12.6.3 容量测试的数据 276 12.6.4 其他测试阶段的数据 277 12.7 小结 278 第13章 组件和依赖管理 280 13.1 引言 280 13.2 保持应用程序可发布 281 13.2.1 将新功能隐蔽起来, 直到它完成为止 282 13.2.2 所有修改都是增量 式的 283 13.2.3 通过抽象来模拟分支 284 13.3 依赖 285 13.3.1 依赖地狱 286 13.3.2 库管理 287 13.4 组件 289 13.4.1 如何将代码库分成多 个组件 289 13.4.2 将组件流水线化 292 13.4.3 集成流水线 293 13.5 管理依赖关系图 295 13.5.1 构建依赖图 295 13.5.2 为依赖图建立流水线 297 13.5.3 什么时候要触发构建 299 13.5.4 谨慎乐观主义 300 13.5.5 循环依赖 302 13.6 管理二进制包 303 13.6.1 制品库是如何运作的 303 13.6.2 部署流水线如何与制品库相结合 304 13.7 用maven管理依赖 304 13.8 小结 308 第14章 版本控制进阶 309 14.1 引言 309 14.2 版本控制的历史 310 14.2.1 cvs 310 14.2.2 svn 311 14.2.3 商业版本控制系统 312 14.2.4 放弃悲观锁 313 14.3 分支与合并 314 14.3.1 合并 316 14.3.2 分支、流和持续集成 317 14.4 dvcs 319 14.4.1 什么是dvcs 319 14.4.2 dvcs简史 321 14.4.3 企业环境中的dvcs 321 14.4.4 使用dvcs 322 14.5 基于流的版本控制系统 324 14.5.1 什么是基于流的版本控制系统 324 14.5.2 使用流的开发模型 326 14.5.3 静态视图和动态视图 327 14.5.4 使用基于流的版本控制系统做持续集成 328 14.6 主干开发 329 14.7 按发布创建分支 332 14.8 按功能特性分支 333 14.9 按团队分支 335 14.10 小结 338 第15章 持续交付管理 340 15.1 引言 340 15.2 配置与发布管理成熟度模型 341 15.3 项目生命周期 343 15.3.1 识别阶段 344 15.3.2 启动阶段 345 15.3.3 初始阶段 346 15.3.4 开发与发布 347 15.3.5 运营阶段 349 15.4 风险管理流程 350 15.4.1 风险管理基础篇 350 15.4.2 风险管理时间轴 351 15.4.3 如何做风险管理的练习 352 15.5 常见的交付问题、症状和原因 353 15.5.1 不频繁的或充满缺陷的部署 353 15.5.2 较差的应用程序质量 354 15.5.3 缺乏管理的持续集成工作流程 355 15.5.4 较差的配置管理 355 15.6 符合度与审计 356 15.6.1 文档自动化 356 15.6.2 加强可跟踪性 357 15.6.3 在筒仓中工作 358 15.6.4 变更管理 358 15.7 小结 360 参考书目 361

2014-02-10

Apache MINA 2.0 用户指南中英文对照阅读版[带书签]

本资源包含两个 pdf 文档,一本根据官方最新文档 (http://mina.apache.org/mina-project/userguide/user-guide-toc.html) 整理的 mina_2.0_user_guide_en.pdf,一个中文翻译的 mina_2.0_user_guide_cn.pdf。 中文内容也已同步到 CSDN 博客,读者可以在线阅读:http://blog.csdn.net/defonds/article/details/18315563。 中英文版的 pdf 均带有书签,方便读者朋友查阅。 mina_2.0_user_guide_cn.pdf 内容预览: 第一章:入门 第二章:基础知识 第三章:IO 服务 第四章:会话 第五章:过滤器 第六章:传输 第七章:事件处理器 第八章:字节缓存 第九章:编解码器过滤器 第十章:执行者过滤器 第十一章:SSL 过滤器 第十二章:日志过滤器 第十三章:调试 第十四章:状态机 第十五章:代理 第十六章:JMX 集成 第十七章:Spring 集成

2014-01-15

官方最新Apache MINA 2.0二进制包和源代码

本资源包含 Apache 官方公布的最新的 MINA 2.0 的二进制包文件 apache-mina-2.0.7-bin.zip 和源代码 apache-mina-2.0.7-src.zip。

2014-01-15

RTMP 规范中英文对照阅读版[带书签]

本资源包含两个 pdf 文档,一本官方最新版的 rtmp_specification_1.0.pdf,一个中文翻译的 rtmp_specification_1.0_cn.pdf。 中文内容也已同步到 CSDN 博客,读者可以在线阅读:http://blog.csdn.net/defonds/article/details/17534903。 中文版的 pdf 带有书签,方便读者朋友查阅。 rtmp_specification_1.0_cn.pdf 内容预览: Adobe 官方公布的 RTMP 规范 译序 1. 简介 1.1. 术语 2. 贡献者 3. 名词解释 4. 字节序、对齐和时间格式 5. RTMP 块流 5.1 消息格式 5.2 握手 5.2.1. 握手顺序 5.2.2. C0 和 S0 的格式 5.2.3. C1 和 S1 的格式 5.2.4. C2 和 S2 的格式 5.2.5. 握手示意图 5.3. 分块 5.3.1. 块格式 5.3.1.1. 块基本头 5.3.1.2. 块消息头 5.3.1.2.1. 类型 0 5.3.1.2.2. 类型 1 5.3.1.2.3. 类型 2 5.3.1.2.4. 类型 3 5.3.1.2.5. 通用头字段 5.3.1.3. 扩展 timestamp 5.3.2. 例子 5.3.2.1. 例子 1 5.3.2.2. 例子 2 5.4. 协议控制消息 5.4.1. 设置块类型 (1) 5.4.2. 终止消息 5.4.3. 确认 (3) 5.4.4. 窗口确认大小 (5) 5.4.5. 设置对端带宽 (6) 6. RTMP 消息格式 6.1. RTMP 消息格式 6.1.1. 消息头 6.1.2. 消息有效载荷 6.2. 用户控制消息 (4) 7. RTMP 命令消息 7.1. 消息的类型 7.1.1. 命令消息 (20, 17) 7.1.2. 数据消息 (18, 15) 7.1.3. 共享对象消息 (19, 16) 7.1.4. 音频消息 (8) 7.1.5. 视频消息 (9) 7.1.6. 统计消息 (22) 7.1.7. 用户控制消息事件 7.2. 命令类型 7.2.1. NetConnection 命令 7.2.1.1. connect 命令 7.2.1.2. call 方法 7.2.1.3. createStream 命令 7.2.2. NetStream 命令 7.2.2.1. play 命令 7.2.2.2. play2 7.2.2.3. deleteStream 命令 7.2.2.4. receiveAudio 命令 7.2.2.5. receiveVideo 命令 7.2.2.6. publish 命令 7.2.2.7. seek 命令 7.3. 消息交换例子 7.3.1. 发布录制视频 7.3.2. 广播一个共享对象消息 7.3.3. 发布来自录制流的元数据 8. 参考文献 作者地址

2013-12-25

Poseidon for UML Community Edition 8.0 破解安装版

Poseidon for UML 没的说,用起来相当爽,作图效果一句话:简约而不简单。可以去 http://blog.csdn.net/defonds/article/details/7699501 看一下它的使用效果。 本资源包括一个截至 20131119 官方公布的最新版的 Poseidon for UML Community Edition 8.0 安装包 PoseidonCE_8_0_Installer.exe,一个破解文件,一个破解说明文件。 下载后请按破解说明里的步骤破解即可。破解文件也适用于 Windows 以外平台的 Poseidon for UML Community Edition 8.0。

2013-11-19

sql 性能测试源代码

本资源是博客《设计模式实战应用之一:策略模式》http://blog.csdn.net/defonds/article/details/16832081 的示例程序。下载后请查阅 readme.txt 运行,博客中使用的策略模式相关源码在 TestMysql 项目中。

2013-11-20

Wowza IDE安装程序Windows版

WowzaIDE-2.0.0.exe,大小 76MB,截至 20130925 为止,Wowza 官方公布的最新 Windows 下的 IDE 安装程序。 另有关于 Wowza IDE 的中文版使用说明,请参考博客:http://blog.csdn.net/defonds/article/details/12028351。

2013-09-25

RTMP 协议规范.pdf

截至 20130924,Adobe 官方公布的 RTMP 协议规范文档。

2013-09-24

Wowza服务器安装程序Windows版

WowzaMediaServer-3.6.2.exe,大小 84MB,截至 20130924 为止,Wowza 官方公布的最新 Windows 下的安装程序。 关于 Wowza 发布直播服务,请参考博客:http://blog.csdn.net/defonds/article/details/11979095。

2013-09-24

Wowza服务器安装程序Linux版

WowzaMediaServer-3.6.2.rpm.bin,大小 75MB,截至 20130924 为止,Wowza 官方公布的最新 Linux 下的安装程序。 关于 Wowza 发布直播服务,请参考博客:http://blog.csdn.net/defonds/article/details/11979095。

2013-09-24

零成本实现Web性能测试:基于Apache JMeter.pdf

《零成本实现Web性能测试:基于Apache JMeter》,作者:温素剑,出版社:电子工业出版社,ISBN:9787121155260,PDF 格式,扫描版,大小 34MB。 内容简介: 《零成本实现web性能测试:基于apache jmeter》 是一本关于web性能测试的实战书籍,读者朋友们在认真阅读完本书后,相信能够将所学知识应用到生产实践中。本书首先介绍基础的性能测试理论,接着详细介绍如何使用jmeter完成各种类型的性能测试。实战章节中作者以测试某大型保险公司电话销售系统为例,手把手教会读者如何用jmeter来完成一个实际的性能测试任务。    本书内容丰富、知识点讲解透彻,适合软件测试工程师、测试经理、高等院校相关专业的学生参考学习,同时也可作为相关培训班的教材。 目录: 《零成本实现web性能测试:基于apache jmeter》 第1章 性能测试基础 1 1.1 初识性能测试 1 1.1.1 性能测试的概念 1 1.1.2 性能测试的目的 2 1.1.3 性能测试的常见分类 2 1.1.4 性能测试的常见指标 3 1.1.5 性能测试的基本流程 4 1.2 开源web性能测试 8 1.2.1 web性能测试的重要性 8 1.2.2 开源web性能测试介绍 8 1.2.3 开源性能测试的优势 9 1.3 本章小结 10 第2章 jmeter基础知识 11 2.1 jmeter简介 11 2.1.1 jmeter主要特点 12 2.1.2 jmeter常用术语 13 2.1.3 jmeter测试结果字段的意义 13 2.2 jmeter工作原理 14 2.3 jmeter的安装与目录结构 15 .2.3.1 jmeter安装配置要求 15 2.3.2 jmeter目录结构 15 2.4 如何运行jmeter 18 2.5 配置jmeter 25 2.6 jmeter与 loadrunner优缺点对比 25 2.7 本章小结 26 第3章 web性能测试脚本录制与开发 27 3.1 jmeter gui基本操作 27 3.2 jmeter常用测试元件 30 3.3 jmeter脚本开发基础 37 3.3.1 jmeter执行顺序规则 37 3.3.2 作用域规则 38 3.3.3 jmeter属性和变量 40 3.3.4 使用变量参数化测试 40 3.4 创建web测试计划 41 3.5 录制web测试脚本 47 3.5.1 使用代理录制web性能测试脚本 47 3.5.2 使用badboy录制web性能测试脚本 52 3.6 创建高级web测试计划 57 3.7 本章小结 58 第4章 数据库性能测试脚本开发 59 4.1 创建数据库测试计划 59 4.2 九步轻松搞定oracle数据库性能测试 62 4.3 本章小结 68 第5章 ftp性能测试脚本开发 69 5.1 ftp是什么 69 5.2 创建ftp测试计划 74 5.3 本章小结 78 第6章 ldap性能测试脚本开发 79 6.1 ldap是什么 79 6.2 创建ldap测试计划 90 6.3 ldap常见操作指南 95 6.4 创建扩展ldap测试计划 97 6.5 本章小结 107 第7章 web service性能测试脚本开发 108 7.1 web service是什么 108 7.2 创建web service测试计划 112 7.3 本章小结 115 第8章 jms性能测试脚本开发 116 8.1 jms是什么 116 8.2 创建jms点对点测试计划 121 8.3 创建jms topic测试计划 124 8.4 本章小结 128 第9章 服务器监控测试脚本开发 129 9.1 创建监控测试计划 129 9.2 本章小结 133 第10章 详解jmeter测试原件 134 10.1 详解jmeter监听器 134 10.2 详解jmeter逻辑控制器 144 10.3 详解jmeter配置元件 161 10.4 详解jmeter定时器 181 10.5 详解jmeter前置处理器 187 10.6 详解jmeter后置处理器 196 10.7 详解jmeter采样器 205 10.8 详解jmeter其他测试元件 248 10.9 本章小结 261 第11章 jmeter进阶知识 262 11.1 详解jmeter函数和变量 262 11.2 详解jmeter正则表达式 282 11.3 详解jmeter远程测试 285 11.4 详解jmeter最佳实践经验 291 11.5 一些小技巧 297 11.6 本章小结 299 第12章 性能测试结果分析 300 12.1 如何分析性能测试结果 300 12.2 如何借助监听器发现性能缺陷 303 12.2.1 监听器——性能测试分析的基石 303 12.2.2 巧用监听器——识别性能缺陷 322 12.3 借助ant实现批量测试和报表生成 330 12.4 本章小结 331 第13章 jmeter性能测试实战——电话销售系统 332 13.1 测试背景和测试目标 332 13.2 分析确定性能测试指标 332 13.3 录制创建性能测试脚本 334 13.4 运行性能测试脚本 337 13.5 分析性能测试结果 340 13.6 上报性能测试缺陷 342 13.7 本章小结 343

2013-09-25

JMeter中文使用手册.pdf

《JMeter中文使用手册》,PDF 格式,大小 625KB。 内容简介: Apache JMeter是100%纯java桌面应用程序,被设计用来测试C/S结构的软件(例如web应用程序)。它可以被用来测试包括基于静态和动态资源程序的性能,例如静态文件,Java Servlets,Java 对象,数据库,FTP 服务器等等。JMeter可以用来模拟一个在服务器、网络或者对象上大的负载来测试或者分析在不同的负载类型下的全面性能。 另外,JMeter能够通过让你们用断言创造测试脚本来验证我们的应用程序是否返回了我们期望的结果,从而帮助我们回归测试我们的程序。为了最大的灵活性,JMeter允许我们使用正则表达式创建断言。

2013-09-25

Wowza IDE用户手册.pdf

《Wowza IDE User’s Guide》,英文版,PDF 格式,大小 285 KB。截至 20130925,Wowza 官方公布的最新 IDE 用户手册。 内容简介: What is the Wowza IDE? Wowza IDE is an integrated development environment for creating extensions, configuring and managing the Wowza Media Systems product line. It is an application built on top of the popular Eclipse application framework from the Eclipse Foundation. You can learn more about Eclipse at http://www.eclipse.org. The Wowza IDE is available for the Windows and Mac OS X platforms. This version of the Wowza IDE includes the Eclipse version 3.5.1 Java development tools as well as custom IDE features to enhance the development of Wowza Media Server modules and server extensions. The remainder of this document covers the process for developing Java server extensions. 目录: Introduction.......................................................................................................................5 Before Installation.................................................................................................................................................5 Installing the Wowza IDE......................................................................................................................................6 Extending Wowza Media Server Using Java.....................................................................7 Project and Module Class Creation.......................................................................................................................7 Import ModuleServerSide Example.....................................................................................................................10 Application.xml Configuration.............................................................................................................................10 Server Startup....................................................................................................................................................11 Module Testing...................................................................................................................................................12 Server Extension Wizards...................................................................................................................................13

2013-09-25

Java并发编程实践.pdf[带书签]

《Java并发编程实践》,英文名《Java Concurrency in Practice》,原作者:(美)Brian Goetz、(美)Tim Peierls、(美)Joshua Bloch、(美)Joseph Bowbeer、(美)David Holmes、(美)Doug Lea,翻译:韩锴、方妙,出版社:电子工业出版社,ISBN:9787121043161,PDF 格式,大小 41MB。本资源带有书签,方便读者朋友阅读。 内容简介: 随着多核处理器的普及,使用并发成为构建高性能应用程序的关键。java 5以及6在开发并发程序取得了显著的进步,提高了java虚拟机的性能,提高了并发类的可伸缩性,并加入了丰富的新并发构建块。在本书中,这些便利工具的创造者不仅解释了它们究竟如何工作、如何使用,同时,还阐释了创造它们的原因,及其背后的设计模式。 本书既能够成为读者的理论支持,又可以作为构建可靠的,可伸缩的,可维护的并发程序的技术支持。本书并不仅仅提供并发api的清单及其机制,本书还提供了设计原则,模式和思想模型,使我们能够更好地构建正确的,性能良好的并发程序。    本书的读者是那些具有一定java编程经验的程序员、希望了解java se 5,6在线程技术上的改进和新特性的程序员,以及java和并发编程的爱好者。 目录: 代码清单 序 第1章 介绍 1.1 并发的(非常)简短历史 1.2 线程的优点 1.3 线程的风险 1.4 线程无处不在 第1部分 基础 第2章 线程安全 2.1 什么是线程安全性 2.2 原子性 2.3 锁 2.4 用锁来保护状态 2.5 活跃度与性能 第3章 共享对象 3.1 可见性 3.2 发布和逸出 3.3 线程封闭 3.4 不可变性 3.5 安全发布 . 第4章 组合对象 4.1 设计线程安全的类 4.2 实例限制 4.3 委托线程安全 4.4 向已有的线程安全类添加功能 4.5 同步策略的文档化 第5章 构建块 5.1 同步容器 5.2 发容器 5.3 阻塞队列和生产者一消费者模式 5.4 阻塞和可中断的方法 5.5 synchronizer 5.6 为计算结果建立高效、可伸缩的高速缓存 第2部分 构建并发应用程序 第6章 任务执行 6.1 在线程中执行任务 6.2 executor 框架 6.3 寻找可强化的并行性 第7章 取消和关闭 7.1 任务取消 7.2 停止基于线程的服务 7.3 处理反常的线程终止 7.4 jvm关闭 第8章 应用线程池 8.1 任务与执行策略问的隐性耦合 8.2 定制线程池的大小 8.3 配置threadpoolexecutor 8.4 扩展threadpoolexecutor 8.5 并行递归算法 第9章 gui应用程序 9.1 为什么gui是单线程化的 9.2 短期的gui任务 9.3 耗时gui任务 9.4 共享数据模型 9.5 其他形式的单线程子系统 第3部分 活跃度,性能和测试 第10章 避免活跃度危险 第11章 性能和可伸缩性 第12章 测试并发程序 第4部分 高级主题 第13章 显示锁 第14章 构建自定义的同步工具 第15章 原子变量与非阻塞同步机制 第16章 java存储模型 附录a 同步annotation 参考文献

2013-09-17

Defonds的留言板

发表于 2020-01-02 最后回复 2020-04-20

Java Web项目性能提升的一些思路

发表于 2013-12-13 最后回复 2019-12-31

大妈用18岁女儿靓照当头像 网恋80后小伙

发表于 2015-12-10 最后回复 2019-10-14

谷歌开始拒绝忙时向大陆用户服务?

发表于 2010-05-19 最后回复 2019-10-12

sf 被党屏蔽了还是我们被 sf 屏蔽了

发表于 2010-01-29 最后回复 2019-10-12

一张图告诉你是需要SQL还是Hadoop

发表于 2015-07-22 最后回复 2019-03-06

电子商务网站互联网安全防御攻略

发表于 2014-12-09 最后回复 2017-11-02

大家都用过什么项目管理工具?进来聊一聊

发表于 2016-12-02 最后回复 2017-09-13

如何调eclipse标题栏显示

发表于 2008-09-18 最后回复 2017-04-27

魔都难得天气晴朗,来水区给枫儿同学来个好心情

发表于 2016-12-01 最后回复 2017-01-19

热烈祝贺CSDN社区大联欢上海站圆满结束

发表于 2016-01-10 最后回复 2016-10-08

【Java 20 周年系列活动】图书试读评奖《Java 从入门到精通(第二版)》

发表于 2015-04-07 最后回复 2016-06-17

【Java 20 周年系列活动】抢楼赠书《Java 从入门到精通(第二版)》

发表于 2015-03-23 最后回复 2016-06-17

【生日快乐】今天是个重要的日子,恭祝可爱的枫儿同学生日快乐~~

发表于 2016-05-09 最后回复 2016-05-09

男子选错12306验证码 女友怨其无能起争执

发表于 2015-12-10 最后回复 2016-01-10

小学生因不写作业被教训 将父亲裸照发家长群

发表于 2015-12-18 最后回复 2016-01-04

已婚女家中约会2名男友被砍伤

发表于 2015-12-15 最后回复 2015-12-18

“高富帅”专挑少妇下手 看过照片只想说:瞎了眼

发表于 2015-12-14 最后回复 2015-12-15

听说,每一颗流星的闪过都代表一个梦想的实现~

发表于 2015-12-08 最后回复 2015-12-08

一张图帮你弄清SQL/NewSQL/NoSQL的区别以及如何进行取舍

发表于 2015-09-16 最后回复 2015-10-28

Java Web 版块未结贴申请

发表于 2014-02-07 最后回复 2015-02-03

Java Web 版务帖【与版务无关回复直接删除,感谢各位 Java Web 版网友的大力支持!】

发表于 2014-02-07 最后回复 2015-02-03

波斯的荣耀,伊朗险些逼平美洲鹰阿根廷

发表于 2014-06-22 最后回复 2015-01-10

20分钟内打进 4 个球,荷兰人的疯狂复仇

发表于 2014-06-14 最后回复 2014-06-15

看清看淡多少,痛苦就离开你多少

发表于 2014-01-28 最后回复 2014-02-13

佛曰,心中装满着自己的看法与想法的人,永远听不见别人的心声。

发表于 2013-12-23 最后回复 2014-01-06

青春的热情需要灌溉的非常style Hold全场,自己为自己喝彩 跟自己竞赛,我们能遇见真爱因幸福它常在 趁现在青春还在

发表于 2013-12-23 最后回复 2014-01-06

周末了,给辛苦劳作了一周的兄弟们散个分

发表于 2013-12-20 最后回复 2013-12-23

佛祖跟我说,进来投一票的,来年,没媳妇的会抱走林志玲一样的老婆,有媳妇的媳妇会长得越来越像林志玲

发表于 2013-12-21 最后回复 2013-12-23

《继续散分第十三轮》。。。周五持续散分。。。下班前结贴

发表于 2013-12-20 最后回复 2013-12-20

《继续散分第十二轮》。。。周四持续散分。。。明早结贴

发表于 2013-12-19 最后回复 2013-12-20

《继续散分第十一轮》。。。周四持续散分。。。下班前结贴

发表于 2013-12-19 最后回复 2013-12-20

《继续散分第十轮》。。。周三持续散分。。。明早结贴

发表于 2013-12-18 最后回复 2013-12-19

有同学提出分少,现在推出《继续散分第九轮》。。。周三持续散分。。。下班前结贴

发表于 2013-12-18 最后回复 2013-12-18

《继续散分第七轮》。。。周三持续散分。。。下班前结贴

发表于 2013-12-18 最后回复 2013-12-18

《继续散分第八轮》。。。周三持续散分。。。明早结贴

发表于 2013-12-18 最后回复 2013-12-18

《继续散分第五轮》。。。周二强力散分。。。明早结贴

发表于 2013-12-17 最后回复 2013-12-18

《继续散分第六轮》。。。周二强力散分。。。明早结贴

发表于 2013-12-17 最后回复 2013-12-18

《继续散分》。。。周二强力散分。。。下班前结贴

发表于 2013-12-17 最后回复 2013-12-17

《继续散分》。。。顺便,,嘿嘿,,继续拉个选票:)

发表于 2013-12-16 最后回复 2013-12-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除