- pytest学习笔记--接口自动化测试基础之日志封装学习
鐵馬冰河
笔记学习python功能测试
目录logging实例配置日志级别参数可写str或者int类型Handler对象常用的handler实例对象给handler对象设置日志级别给handler对象设置日志输出格式logging配置error级别以上日志发送邮件logging实例配置日志级别参数可写str或者int类型logger.setLevel(level)方法配置过滤日志级别根据源码可以看到参数level可以使int类型或者st
- 关于jmeter的一些面试题及回答
ruanxinyan12345
jmeter
1、说明jmeter的工作原理jmeter就像一个虚拟用户模拟器,你创建一个测试计划,指定这些虚拟用户(线程)要做什么,比如你要访问网站的不同页面,jmeter会按照你设定的规则,让这些虚拟用户同时发起请求,然后记录下这些请求的响应时间和结果,最后,你可以通过查看这些数据来分析网站在不同负载下的表现,找出潜在的性能问题2、在哪里可以使用函数和变量任何测试组件的任何字段3、解释下什么是采样器和线程组
- 分布式锁 RedisSon
北执南念
中间件分布式redis
文章目录1.什么是分布式锁2.分布式锁应该具备哪些条件3.分布式锁主流的实现方案4.未添加分布式锁存在的问题4.1测试未添加分布式锁的代码通过jmeter发送请求4.2添加线程同步锁集群部署配置nginx修改jmeter端口号4.3使用redis的setnx命令实现分布式锁解决办法4.4使用try、finally优化4.5添加分布式锁的过期时间4.6解决分布式锁命令的原子性问题4.7把线程ID做为
- Jmeter+ant+jenkins接口自动化测试框架
测试老哥
jmeterjenkinspython软件测试自动化测试测试用例压力测试
视频学习:文末有免费的配套视频可观看点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快大致思路:Jmeter可以做接口测试,也能做压力测试,而且是开源软件;Ant是基与java的构建工具,完成脚本执行并收集结果生成报告,可以跨平台,Jenkins是持续集成工具。将这三者结合起来可以搭建一套WebHTTP接口测试的持续构建环境,实现接口自动化测试,pc系统Windows。1、安装就jmet
- jmeter压力测试(踩坑)报错:java.net.BindException: Address already in use: connect
阿汤哥的程序之路
测试工具jmeter压力测试
Jmeter压力测试报错:java.net.BindException:Addressalreadyinuse:connectatjava.base/sun.nio.ch.Net.connect0(NativeMethod)atjava.base/sun.nio.ch.Net.connect(Net.java:589)atjava.base/sun.nio.ch.Net.connect(Net.j
- Jmeter 不同版本之间的兼容问题
weixin_37583867
jmeter
最早之前本地Jmeter版本为apache-jmeter-5.1.1,并编写了自己的测试脚本,后Apache发布了新版本apache-jmeter-5.4.1,下载之后,启动新版本后,无法打开早之前的脚本,报错如下图所示:解决方案如下:点击该地址下载PluginsManager,将下载后的插件拷贝至apache-jmeter-5.4.1/lib/ext下,重新启动Jmeter,即可打开早之前版本的
- jmeter安装目录没有找到ApacheJMeterTemporaryRootCA.crt文件
java2013liu
jmeter
可以通过以下步骤来生成和配置它:打开JMeter。转到"Options"菜单中的"SSLManager"部分。在"SSLManager"配置窗口中,点击"AddCertificate..."按钮。跟随提示生成ApacheJMeterTemporaryRootCA.crt文件,并将其导入到JMeter。但是点击"SSLManager"时出错解决方法:因为使用了javajdk15以上的版本,解决办法如
- 基于LangChain手工测试用例转接口自动化测试生成工具!
小码哥说测试
技术分享测试面试自动化测试langchain测试用例功能测试集成测试测试工具软件测试接口测试
接口自动化测试用例是一个老生常谈的问题,在未引入人工智能之前,也有非常多的生成方案,比如如下所示,通过har生成接口自动化测试用例:但是以上的生成方式依然是有一些弊端,比如har本身虽然能表述一定的接口信息和业务信息,但是毕竟无法用来表述全部的应用场景与用例场景。而大部分的应用场景和用例场景,均是通过自然语言进行描述的。而解析自然语言,则是大语言模型擅长做的事情。实践演练需求说明以下内容为3条接口
- python批量生成sql用于创建500个用户
weixin_43946945
pythonsql数据库
创建500个用户,分别为jmeter001-jmeter500,密码都是123,手动添加不现实,用客户端复制粘贴表数据也要添加很久,因此想批量生成500条插入的sql,如下:start_num=1end_num=500insert_sql="INSERTINTO`sys_user`(`user_id`,`username`,`password`,`email`,`mobile`,`create_t
- Web 服务器怎么测压? 可用什么软件?
海姐软件测试
其他笔记经验分享职场和发展面试
一、测试方法1.确定测试目标•明确要测试的Web服务器的关键性能指标,如响应时间、吞吐量、并发用户数等。•例如,若目标是确保在高并发情况下服务器仍能保持快速响应,就需要重点关注响应时间和并发用户数。2.设计测试场景•模拟不同的用户行为,如正常浏览、提交表单、文件上传下载等。•考虑不同的负载模式,如逐渐增加负载、峰值负载、持续负载等。3.选择合适的测试工具二、可用软件1.ApacheJMeter•功
- linux jmeter 对数据库,jmeter操作数据库,分布式,在Linux上运行
weixin_39820173
linuxjmeter对数据库
jmeter操作数据库:1.在测试计划中导入数据库jar包2.添加链接数据库信息3.mysql:jdc:mysql://192.168.1.116:3307/bugfree?allowMultiQueries=truedriverclass:com.mysql.jdbc.Driverjmeter添加压力机(分布式)1.首先要其他电脑也安装有jmeter,自己的电脑是主机,其他的电脑都是分支2.要和
- 功能测试与自动化测试详解
测试1998
python软件测试职场和发展自动化测试功能测试测试工具测试用例
点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快什么是自动化测试?自动化测试是指利用软件测试工具自动实现全部或部分测试,它是软件测试的一个重要组成部分,能完成许多手工测试无法实现或难以实现的测试。能够正确、合理地实施自动测试,可以快速、全面地对软件进行测试,从而提高软件质量,节省经费,缩短软件发布周期。自动化测试一般分为UI自动化测试和接口自动化测试。UI自动化测试是指基于界面元素的自
- jmeter-全局变量设置与使用
咲之
Jmeterjmeter全局变量
目录一、设置全局变量二、使用全局变量三、总结一、设置全局变量//${__setProperty(变量名称,变量值,)}${__setProperty(preRoleId,${sqlRoleId_1},)};二、使用全局变量//使用方法如下:使用${__P(变量名称)}的形式进行调用vars.put("roleId","${__P(preRoleId)}");三、总结${__setProperty(
- Jmeter如何设置全局变量以及调用方法
柳絮吹成雪
Jmeterjmeter
Jmeter接口测试过程中,我们会遇到登录token的问题。如果我们要使用同一个账号登录,然后对其他接口进行并发测试。那么这个时候问题来了,我们怎样在所有线程中使用同一个token?Jmeter的仅一次控制器,仅对同一个线程有效,如果有多个线程,那么还是要登录多次,产生不同的token。这些token中只有一个是有效的,那么其他的就肯定失败了。之前每次使用都是现把token全改一遍,特别麻烦,经过
- python接口自动化测试 - mock模块基本使用介绍
程序员笑笑
软件测试python服务器apache功能测试软件测试自动化测试程序人生
mock作用解决依赖问题,达到解耦作用当我们测试某个目标接口(模块)时,该接口依赖其他接口,当被依赖的接口未开发完成时,可以用mock模拟被依赖接口,完成目标接口的测试模拟复杂业务的接口当我们测试某个目标接口(模块),该接口依赖一个非常复杂的接口时,可以用mock来模拟这个复杂的业务接口;也解决接口依赖一样的原理单元测试如果某个接口(模块)未开发完成时,又需要编写测试用例,则可以通过mock模拟该
- Python生成JMeter测试脚本----响应断言和查看结果树
可遇_不可求
pythonjmeter开发语言
前言之前的文章写了怎么用python生成JMeter脚本,生成了测试计划、线程组、Http监听器组件,详细内容查看文章《Python生成JMeter测试脚本》。本篇内容接着讲怎么用python生成响应断言和查看结果树组件。响应断言响应断言的测试字段和模型匹配规则,在代码中已经注释了,对应着JMeterGUI工具的操作。首先使用set方法修改响应断言的参数,然后使用get方法生成响应断言组件,将组件
- python生成jmeter测试脚本----(一)
可遇_不可求
pythonjmeter开发语言
引言之前的文章写了pytest-bdd做接口自动化测试,最近有个想法,用接口测试框架的接口信息,生产jmeter测试脚本,这样有了接口测试用例后,可以自动生成性能测试脚本。进行性能测试。分析使用jmeter编辑了一个正常的测试脚本,来分析一下jmeter脚本内容。通过上图发现,jmeter脚本就是xml格式的文件,这样我们可以根据生成的脚本,用python直接生成相应格式的脚本,看一下jmeter
- jmeter测试工具-性能测试基础-jmeter安装与测试
程序员雷子
jmeter测试工具测试用例自动化功能测试python单元测试
一:JMeter简介:JMeter,一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA等多种协议的特点。官方网站:https://jmeter.apache.org/二:JMeter安装与配置1、本机配置好Java环境变量2、官网下载压缩包,在任意目录下解压3、修改配置文件,
- Python生成JMeter测试脚本----HTTP信息头管理器和用户定义的变量
可遇_不可求
pythonjmeterhttp
前言之前的文章写了怎么用python生成JMeter脚本,生成了测试计划、线程组、Http监听器组件、响应断言、查看结果树、汇总报告、聚合报告、响应时间图。本篇内容接着讲怎么用python生成HTTP信息头管理器和用户定义的变量组件。HTTP信息头管理器信息头管理器的内容比较简单,主要包括了名称,注释和请求头参数。使用set方法设置好参数后,用get方法生成组件。importxml.etree.E
- Jmeter 之测试片段、Include Controller、模块控制器应用
weixin_30547797
测试
一、测试片段是什么?应用在控制器上的一个特殊线程组,与线程组处于同一层级,必须与IncludeController或模块控制器一起使用才被执行。二、应用场景1、当jmeter脚本非常复杂的时候,可以通过测试片段分模块管理用例2、当jmeter脚本由多个测试人员共同完成,通过测试片段分人分模块管理用例三、新建测试片段1、右键测试计划->添加TestFragment2、在测试片段下,整理好测试用例脚本
- Jmeter性能关注指标详解
回家吃月饼
#性能基础元件使用jmeter网络数据库
进行性能测试时,有几个关键的性能指标需要关注,以评估系统的性能和稳定性一、性能关注指标包含:响应时间、吞吐量、错误率、资源利用率/使用率(CPU占用率、内存使用率、磁盘I/O等待率、网络I/O)Tips:初步查看数据结果–响应时间、吞吐量、错误率都可以在聚合报告中查看,服务器资源需要插件查看,高级查看数据结果–后面都会使用grafana平台查看1.响应时间(ResponseTime):从客户端发起
- JMeter与数据库交互:执行SQL查询性能测试
kingapex1
自动化测试数据库jmetersql
JMeter与数据库交互:执行SQL查询性能测试在现代软件开发中,数据库性能是确保应用响应速度和稳定性的重要因素。ApacheJMeter作为一款强大的性能测试工具,不仅能够模拟HTTP请求,还支持通过JDBC请求对数据库进行压力测试。本文将深入探讨如何使用JMeter执行SQL查询性能测试,并有效结合自动化测试软件itbuilder,进一步提升测试效率和质量。1.JDBC请求介绍与配置JMete
- Jmeter性能分析及调优详解(入门)
追求测试的光
Jmeter性能测试jmeter服务器压力测试学习
一、系统性能理解如果说需求、开发、DB、运维、测试是单一一门学科,那么性能就是综合学科,它包含了需求分析、DB、开发、测试、运维的所有学科。其实一般来说在实际性能分析和调优中,测试担任的角色就是写压测脚本并执行脚本查看结果,然后配合开发和运维来对压测结果不通过的或者不满意的地方一起分析和优化,等开发和运维优化好之后再次压测看是否通过,反复如此知道压测通过。让我们先来说说如何什么是系统性能。这个定义
- python 接口自动化数据结构(如列表、字典、元组)
测试界晓晓
软件测试python自动化数据结构软件测试自动化测试功能测试程序人生
在Python接口自动化测试中,数据结构扮演着至关重要的角色,用于组织和处理测试数据、请求参数和响应结果。列表(List)列表是Python中的一种可变序列数据类型,它允许存储一系列有序的、可重复的元素,这些元素可以是任何数据类型,包括字符串、数字、布尔值甚至是其他的列表或字典等复杂类型。users_list=['user1','user2','user3']request_urls=['http
- pytest-yaml学习以及json、xml数据存储格式对比
不要问我y
WebUI自动化测试jsonselenium
1、简介是一个数据文件,支持注释、换行、裸字符串等2、用途2.1用于全局的配置文件:环境、数据库信息、账号信息、日志格式、报告名称2.2用于接口自动化里面的多接口串联2.3用于编写接口测试用例3、语法规则3.1区分大小写3.2通过缩进的方式表示层级关系,不同的是:yaml只能用空格缩进,不能使用tab键,和缩进多少层无关,只看是否对齐3.3#表示注释4、例子#yaml语法格式:是一种存储数据的格式
- postman和Jmeter做接口测试的区别(经验之谈)
自动化测试薰儿
软件测试技术分享postmanjmeter测试工具
接口测试的目的API测试作为集成测试的一部分,经过被测应用的接口(API)来确定是否在功能、可靠性、性能和安全方面达到预期的软件测试。因为API都没有GUI界面,API测试都是在通信层进行的。1.建立接口用例集Postman功能上更简单,组织方式也更轻量级,它主要针对的就是单个的HTTP请求。Collection就相当于是Project(项目),而Collection中可以创建不定层级的Folde
- 用 docker 创建 jmeter 容器, 实现性能测试,该如何下手?
测试界筱筱
软件测试dockerjmeter容器功能测试软件测试自动化测试程序人生
用docker创建jmeter容器,实现性能测试我们都知道,jmeter可以做接口测试,也可以用于性能测试,现在企业中性能测试也大多使用jmeter。docker是最近这些年流行起来的容器部署工具,可以创建一个容器,然后把项目放到容器中,就可以构建出一个独立的运行环境。所以,有人就想,能否把他们俩弄到一块来使用?今天,我就来给大家讲讲如何结合起来使用。首先,选择一个linux机器,安装docker
- 测试岗位应该学什么
程序员牛马家
有关计算机就业的自我观点数据结构
以下是测试岗位需要学习的一些关键内容:1.测试理论和方法-了解不同类型的测试,如功能测试、性能测试、压力测试、安全测试、兼容性测试等。-掌握测试策略和测试计划的制定。2.编程语言-至少熟悉一种编程语言,如Python、Java或JavaScript,以便编写自动化测试脚本。3.自动化测试工具-学习使用Selenium、Appium等用于Web和移动应用的自动化测试工具。-掌握JMeter用于性能测
- Python生成JMeter测试脚本----汇总报告、聚合报告、响应时间图
可遇_不可求
pythonjmeter开发语言
前言之前的文章写了怎么用python生成JMeter脚本,生成了测试计划、线程组、Http监听器、响应断言、查看结果树,详细内容可以去主页查看之前的文章。本篇内容接着讲怎么用python生成汇总报告、聚合报告和相应时间图组件。汇总报告汇总报告的格式与查看结果树的格式类似,所以代码大体与查看结果树一样,同样使用set方法修改汇总报告组件的参数,然后用get方法生成组件。importxml.etree
- jenkins设置执行时间_Jenkins+jmeter设置定时执行任务
weixin_39575170
jenkins设置执行时间
1、准备好你的jmeter脚本2、测试命令行下脚本执行1)cd进入脚本目录2)dir命令查看该目录下的脚本文件3)jmeter-n-ttest.jmx-lresult.jtl命令执行脚本介绍:-n是非GUI模式运行。-t后面跟脚本文件-l后面是结果保存文件,jtl格式文件3、集成到Jenkins1)首先创建一个自由风格的项目2)定义执行命令的目录3)执行命令4)构建定时触发器(我在这写的每周七天,
- 戴尔笔记本win8系统改装win7系统
sophia天雪
win7戴尔改装系统win8
戴尔win8 系统改装win7 系统详述
第一步:使用U盘制作虚拟光驱:
1)下载安装UltraISO:注册码可以在网上搜索。
2)启动UltraISO,点击“文件”—》“打开”按钮,打开已经准备好的ISO镜像文
- BeanUtils.copyProperties使用笔记
bylijinnan
java
BeanUtils.copyProperties VS PropertyUtils.copyProperties
两者最大的区别是:
BeanUtils.copyProperties会进行类型转换,而PropertyUtils.copyProperties不会。
既然进行了类型转换,那BeanUtils.copyProperties的速度比不上PropertyUtils.copyProp
- MyEclipse中文乱码问题
0624chenhong
MyEclipse
一、设置新建常见文件的默认编码格式,也就是文件保存的格式。
在不对MyEclipse进行设置的时候,默认保存文件的编码,一般跟简体中文操作系统(如windows2000,windowsXP)的编码一致,即GBK。
在简体中文系统下,ANSI 编码代表 GBK编码;在日文操作系统下,ANSI 编码代表 JIS 编码。
Window-->Preferences-->General -
- 发送邮件
不懂事的小屁孩
send email
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.HtmlEmail;
import org.apache.commons.mail.MultiPartEmail;
- 动画合集
换个号韩国红果果
htmlcss
动画 指一种样式变为另一种样式 keyframes应当始终定义0 100 过程
1 transition 制作鼠标滑过图片时的放大效果
css
.wrap{
width: 340px;height: 340px;
position: absolute;
top: 30%;
left: 20%;
overflow: hidden;
bor
- 网络最常见的攻击方式竟然是SQL注入
蓝儿唯美
sql注入
NTT研究表明,尽管SQL注入(SQLi)型攻击记录详尽且为人熟知,但目前网络应用程序仍然是SQLi攻击的重灾区。
信息安全和风险管理公司NTTCom Security发布的《2015全球智能威胁风险报告》表明,目前黑客攻击网络应用程序方式中最流行的,要数SQLi攻击。报告对去年发生的60亿攻击 行为进行分析,指出SQLi攻击是最常见的网络应用程序攻击方式。全球网络应用程序攻击中,SQLi攻击占
- java笔记2
a-john
java
类的封装:
1,java中,对象就是一个封装体。封装是把对象的属性和服务结合成一个独立的的单位。并尽可能隐藏对象的内部细节(尤其是私有数据)
2,目的:使对象以外的部分不能随意存取对象的内部数据(如属性),从而使软件错误能够局部化,减少差错和排错的难度。
3,简单来说,“隐藏属性、方法或实现细节的过程”称为——封装。
4,封装的特性:
4.1设置
- [Andengine]Error:can't creat bitmap form path “gfx/xxx.xxx”
aijuans
学习Android遇到的错误
最开始遇到这个错误是很早以前了,以前也没注意,只当是一个不理解的bug,因为所有的texture,textureregion都没有问题,但是就是提示错误。
昨天和美工要图片,本来是要背景透明的png格式,可是她却给了我一个jpg的。说明了之后她说没法改,因为没有png这个保存选项。
我就看了一下,和她要了psd的文件,还好我有一点
- 自己写的一个繁体到简体的转换程序
asialee
java转换繁体filter简体
今天调研一个任务,基于java的filter实现繁体到简体的转换,于是写了一个demo,给各位博友奉上,欢迎批评指正。
实现的思路是重载request的调取参数的几个方法,然后做下转换。
- android意图和意图监听器技术
百合不是茶
android显示意图隐式意图意图监听器
Intent是在activity之间传递数据;Intent的传递分为显示传递和隐式传递
显式意图:调用Intent.setComponent() 或 Intent.setClassName() 或 Intent.setClass()方法明确指定了组件名的Intent为显式意图,显式意图明确指定了Intent应该传递给哪个组件。
隐式意图;不指明调用的名称,根据设
- spring3中新增的@value注解
bijian1013
javaspring@Value
在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件中的文件,进行键值对的注入,例子如下:
1.首先在applicationContext.xml中加入:
<beans xmlns="http://www.springframework.
- Jboss启用CXF日志
sunjing
logjbossCXF
1. 在standalone.xml配置文件中添加system-properties:
<system-properties> <property name="org.apache.cxf.logging.enabled" value=&
- 【Hadoop三】Centos7_x86_64部署Hadoop集群之编译Hadoop源代码
bit1129
centos
编译必需的软件
Firebugs3.0.0
Maven3.2.3
Ant
JDK1.7.0_67
protobuf-2.5.0
Hadoop 2.5.2源码包
Firebugs3.0.0
http://sourceforge.jp/projects/sfnet_findbug
- struts2验证框架的使用和扩展
白糖_
框架xmlbeanstruts正则表达式
struts2能够对前台提交的表单数据进行输入有效性校验,通常有两种方式:
1、在Action类中通过validatexx方法验证,这种方式很简单,在此不再赘述;
2、通过编写xx-validation.xml文件执行表单验证,当用户提交表单请求后,struts会优先执行xml文件,如果校验不通过是不会让请求访问指定action的。
本文介绍一下struts2通过xml文件进行校验的方法并说
- 记录-感悟
braveCS
感悟
再翻翻以前写的感悟,有时会发现自己很幼稚,也会让自己找回初心。
2015-1-11 1. 能在工作之余学习感兴趣的东西已经很幸福了;
2. 要改变自己,不能这样一直在原来区域,要突破安全区舒适区,才能提高自己,往好的方面发展;
3. 多反省多思考;要会用工具,而不是变成工具的奴隶;
4. 一天内集中一个定长时间段看最新资讯和偏流式博
- 编程之美-数组中最长递增子序列
bylijinnan
编程之美
import java.util.Arrays;
import java.util.Random;
public class LongestAccendingSubSequence {
/**
* 编程之美 数组中最长递增子序列
* 书上的解法容易理解
* 另一方法书上没有提到的是,可以将数组排序(由小到大)得到新的数组,
* 然后求排序后的数组与原数
- 读书笔记5
chengxuyuancsdn
重复提交struts2的token验证
1、重复提交
2、struts2的token验证
3、用response返回xml时的注意
1、重复提交
(1)应用场景
(1-1)点击提交按钮两次。
(1-2)使用浏览器后退按钮重复之前的操作,导致重复提交表单。
(1-3)刷新页面
(1-4)使用浏览器历史记录重复提交表单。
(1-5)浏览器重复的 HTTP 请求。
(2)解决方法
(2-1)禁掉提交按钮
(2-2)
- [时空与探索]全球联合进行第二次费城实验的可能性
comsci
二次世界大战前后,由爱因斯坦参加的一次在海军舰艇上进行的物理学实验 -费城实验
至今给我们大家留下很多迷团.....
关于费城实验的详细过程,大家可以在网络上搜索一下,我这里就不详细描述了
在这里,我的意思是,现在
- easy connect 之 ORA-12154: TNS: 无法解析指定的连接标识符
daizj
oracleORA-12154
用easy connect连接出现“tns无法解析指定的连接标示符”的错误,如下:
C:\Users\Administrator>sqlplus username/
[email protected]:1521/orcl
SQL*Plus: Release 10.2.0.1.0 – Production on 星期一 5月 21 18:16:20 2012
Copyright (c) 198
- 简单排序:归并排序
dieslrae
归并排序
public void mergeSort(int[] array){
int temp = array.length/2;
if(temp == 0){
return;
}
int[] a = new int[temp];
int
- C语言中字符串的\0和空格
dcj3sjt126com
c
\0 为字符串结束符,比如说:
abcd (空格)cdefg;
存入数组时,空格作为一个字符占有一个字节的空间,我们
- 解决Composer国内速度慢的办法
dcj3sjt126com
Composer
用法:
有两种方式启用本镜像服务:
1 将以下配置信息添加到 Composer 的配置文件 config.json 中(系统全局配置)。见“例1”
2 将以下配置信息添加到你的项目的 composer.json 文件中(针对单个项目配置)。见“例2”
为了避免安装包的时候都要执行两次查询,切记要添加禁用 packagist 的设置,如下 1 2 3 4 5
- 高效可伸缩的结果缓存
shuizhaosi888
高效可伸缩的结果缓存
/**
* 要执行的算法,返回结果v
*/
public interface Computable<A, V> {
public V comput(final A arg);
}
/**
* 用于缓存数据
*/
public class Memoizer<A, V> implements Computable<A,
- 三点定位的算法
haoningabc
c算法
三点定位,
已知a,b,c三个顶点的x,y坐标
和三个点都z坐标的距离,la,lb,lc
求z点的坐标
原理就是围绕a,b,c 三个点画圆,三个圆焦点的部分就是所求
但是,由于三个点的距离可能不准,不一定会有结果,
所以是三个圆环的焦点,环的宽度开始为0,没有取到则加1
运行
gcc -lm test.c
test.c代码如下
#include "stdi
- epoll使用详解
jimmee
clinux服务端编程epoll
epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且,在linu
- Hibernate对Enum的映射的基本使用方法
linzx0212
enumHibernate
枚举
/**
* 性别枚举
*/
public enum Gender {
MALE(0), FEMALE(1), OTHER(2);
private Gender(int i) {
this.i = i;
}
private int i;
public int getI
- 第10章 高级事件(下)
onestopweb
事件
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- 孙子兵法
roadrunners
孙子兵法
始计第一
孙子曰:
兵者,国之大事,死生之地,存亡之道,不可不察也。
故经之以五事,校之以计,而索其情:一曰道,二曰天,三曰地,四曰将,五
曰法。道者,令民于上同意,可与之死,可与之生,而不危也;天者,阴阳、寒暑
、时制也;地者,远近、险易、广狭、死生也;将者,智、信、仁、勇、严也;法
者,曲制、官道、主用也。凡此五者,将莫不闻,知之者胜,不知之者不胜。故校
之以计,而索其情,曰
- MySQL双向复制
tomcat_oracle
mysql
本文包括:
主机配置
从机配置
建立主-从复制
建立双向复制
背景
按照以下简单的步骤:
参考一下:
在机器A配置主机(192.168.1.30)
在机器B配置从机(192.168.1.29)
我们可以使用下面的步骤来实现这一点
步骤1:机器A设置主机
在主机中打开配置文件 ,
- zoj 3822 Domination(dp)
阿尔萨斯
Mina
题目链接:zoj 3822 Domination
题目大意:给定一个N∗M的棋盘,每次任选一个位置放置一枚棋子,直到每行每列上都至少有一枚棋子,问放置棋子个数的期望。
解题思路:大白书上概率那一张有一道类似的题目,但是因为时间比较久了,还是稍微想了一下。dp[i][j][k]表示i行j列上均有至少一枚棋子,并且消耗k步的概率(k≤i∗j),因为放置在i+1~n上等价与放在i+1行上,同理