05 2019 档案
摘要:原文 如何使用纯js实现一个带有灰色半透明背景的弹出框
阅读全文
摘要:2016-08-05更新: 下方的代码是比较OLD的了,是通过js进行图片的剪切 旋转 再生成,效率较低。 后来又整合了一个利用native.js本地接口的压缩代码 ,链接在这 。页面中有详细的说明,需要的童鞋们可以参考以下。 源码地址 https://github.com/phillyx/MUID
阅读全文
摘要:var pathCompress = "_doc/" + getNowFormatDate(new Date()) + ' ' + Math.random() + ".compress.jpg"; //压缩后的文件路径//console.log(pathCompress);//console.log
阅读全文
摘要:本篇文章讲一下一些 Linux 上的应用,多数为日常生活娱乐用的软件,同时也会讲一点开发工具,对于有兴趣继续研究 Linux 的可以参考一下。 目录 软件的安装方式 1.Software Manager 2.deb 包 3.AppImage 4.二进制文件 5.编译 日常软件 1.截图工具 Shut
阅读全文
摘要:首先,创建一个图片对象: 然后我们打印一下图片的信息: 在某些电脑上的谷歌浏览器和IE11浏览器上,以上代码工作正常。但是在某些电脑上会报出和火狐在第一次打开时却报出宽高值均为0。如果按F5刷新页面,又能正确获取宽高值了。按 Ctrl+F5 强制刷新(忽略缓存)的话,仍能复现这个问题。 这是因为火狐
阅读全文
摘要:如何获取图片的原始尺寸大小? 如下,当给 img 设置一个固定的大小时,要怎样获取图片的原始尺寸呢? #oImg{ width: 100px; height: 100px; } <img src="images/test.jpg" id="oImg" alt=""> 方法一: HTML5提供了一个新
阅读全文
摘要:设计妹子给了SVG图片,在开发的时候尺寸不对,颜色也要修改,应当如何解决? 1、修改大小:在<svg> 标签中修改width、height 属性(默认单位是px)2、修改颜色:在<path> 标签中修改fill 属性,如果没有这个属性,就新增 如下图: 原文 SVG图片如何调整大小和颜色 设计妹子给
阅读全文
摘要:关于实现线程死锁的一个例子线程对象class DeadLock
阅读全文
摘要:创建一个TCP服务器端通信程序的步骤: 1). 创建一个ServerSocket 2). 从ServerSocket接受客户连接请求 3). 创建一个服务线程处理新的连接 4). 在服务线程中,从socket中获得I/O流 5). 对I/O流进行读写操作,完成与客户的交互 6). 关闭I/O流 7)
阅读全文
摘要:在 Reddit 上看到一个英文帖子,问:上了数据结构课后,还有正常生活么?有人引用了 Quora 上的一个英文回答,大意如下:嗯,没有!你看东西的眼光,不可能和以前一样了。不管你信不信?反正我是信了。我来举栗子:在食堂吃饭排队,现在叫「队列」;餐盘处的那一摞摞盘子,那是「栈」;你现在不是「拿」餐盘
阅读全文
摘要:Java 8 和 Java 9中 concurrent 包有了一些改变, 本文对这些改变做了汇总。Java 8 中 Concurrent package的改变java.util.concurrent中新的类和接口增加了两个新接口和4个新类:接口 CompletableFuture.Asynchron
阅读全文
摘要:Sturts2几个常用内建拦截器的介绍:1)conversation:这是一个处理类型转换错误的拦截器,它负责将类型转换错误从ActionContext中取出,并转换成Action的FieldError错误。2)Exception:这个拦截器负责处理异常,它将异常映射成结果。3)fileUpload
阅读全文
摘要:HTTP是超文本传输协议,是计算机通过网络进行通信的规则。http是一种无状态协议:不建立持久的连接,服务端不保留连接信息。http的无状态性:无状态性是指,当浏览器发送请求给服务器的时候,服务器响应客户端请求但是当同一个浏览器再次发送请求给服务器的时候,服务器并不知道他就是刚才的那个浏览器简单的说
阅读全文
摘要:第一步:安装OpenOffice 在此良心提供windows版本安装文件链接:https://pan.baidu.com/s/17pPCkcS1C46VtLhevqSgPw 密码:vmlu安装就一直点下一步即可。安装完成后,进入OpenOffice安装目录安装目录一般为C:ProgramFiles(
阅读全文
摘要:做一个积极的人 编码、改bug、提升自己 我有一个乐园,面向编程,春暖花开! 在未来城市工作的的程序员小木,做了一个梦,梦到自己在塔鲁姆的街道上看到一个姑娘,这个姑娘从远处走向他,脸上带着微笑。让小木很是着迷,小木呆呆的望着姑娘从他身边走过,当他回过神来,发现姑娘已经走远,小木赶忙去追这位姑娘,突然
阅读全文
摘要:前言 最近在研究搜索引擎,准备搭建一套属于自己的搜索APP,用于搜索的数据我已通过scrapy抓到本地了,现在需要一个搜索引擎来跑这些数据.于是选择了基于Lucene的solr来为我做搜索引擎的工作.时至今日最新版的solr为6.5.1,话不多说,开始干吧~ 目录 1.solr简介 2.solr环境
阅读全文
摘要:Executor执行已提交的 Runnable 任务的对象。此接口提供一种将任务提交与每个任务将如何运行的机制(包括线程使用的细节、调度等)分离开来的方法。通常使用 Executor 而不是显式地创建线程。例如,可能会使用以下方法,而不是为一组任务中的每个任务调用 new Thread(new(Ru
阅读全文
摘要:1. 概述 1.1 什么是线程池 与jdbc连接池类似,在创建线程池或销毁线程时,会消耗大量的系统资源,因此在java中提出了线程池的概念,预先创建好固定数量的线程,当有任务需要线程去执行时,不用再去新创建线程,而是从线程池中获取线程去执行任务,任务执行完成后将线程重新归还到线程池,这样的一个池就叫
阅读全文
摘要:· 在并发编程中,我们有时候会需要使用到线程安全的队列,而在Java中如果我们需要实现队列可以有两种方式,一种是阻塞式队列。另一种是非阻塞式的队列,阻塞式队列采用锁来实现,而非阻塞式队列则是采用cas算法来保证线程安全的,接下来就让我们来看一下jdk中两种队列的实现方式。 1. Concurrent
阅读全文
摘要:1. Future的使用 Future模式解决的问题是。在实际的运用场景中,可能某一个任务执行起来非常耗时,如果我们线程一直等着该任务执行完成再去执行其他的代码,就会损耗很大的性能,而Future接口就是Future的实现,它可以让当前线程将任务交给Future去执行,然后当前线程就可以去干别的事,
阅读全文
摘要:1. Fork/Join 的概念 Fork指的是将系统进程分成多个执行分支(线程),Join即是等待,当fork()方法创建了多个线程之后,需要等待这些分支执行完毕之后,才能得到最终的结果,因此join就表示等待。在实际的使用中,如果毫无顾忌的使用fork()来开启线程,可能会由于线程过多而影响系统
阅读全文
摘要:在jdk中,为并发编程提供了CyclicBarrier(栅栏),CountDownLatch(闭锁),Semaphore(信号量),Exchanger(数据交换)等工具类,我们在前面的学习中已经学习并分析了CountDownLatch工具类的使用方式和源码实现,接下来我们继续学习CyclicBarr
阅读全文
摘要:1. AQS共享模式 前面已经说过了AQS的原理及独享模式的源码分析,今天就来学习共享模式下的AQS的几个接口的源码。 首先还是从顶级接口acquireShared()方法入手: public final void acquireShared(int arg) { if (tryAcquireSha
阅读全文
摘要:1. ThreadLocal的理解 ThreadLocal,顾名思义,就是线程的本地变量,ThreadLocal会为每个线程创建一个本地变量副本,使得使用ThreadLocal管理的变量在多线程的环境下,每个线程都是访问的是自己内部的副本变量,将全局变量局部化,跟局部变量一样的使用,从而避免了一些线
阅读全文
摘要:(一)线程之间的通信 前面所有的线程都是独立运行的,几个线程之间只会存在竞争锁和资源的管理,但是在多线程的环境下可能会需要多个线程同时协作完成,当某个线程执行一定操作之后,需要其他线程的帮助才能执行完成,此时该线程该如何去通知其他线程执行任务,当其他线程执行时该线程又处于什么状态,当其他线程执行完成
阅读全文
摘要:(一)公平锁 1、什么是公平锁? 公平锁指的是在某个线程释放锁之后,等待的线程获取锁的策略是以请求获取锁的时间为标准的,即使先请求获取锁的线程先拿到锁。 2、在java中的实现? 在java的并发包中提供了ReentrantLock提供了重入锁并且也提供了公平锁(FairSync)和非公平锁(Non
阅读全文
摘要:(一)什么是AQS? 阅读java文档可以知道,AbstractQueuedSynchronizer是实现依赖于先进先出 (FIFO) 等待队列的阻塞锁和相关同步器(信号量、事件,等等)提供一个框架,它是一个依靠单个原子 int 值来表示状态的大多数同步器的一个基础类。在jdk中他的实现的类有Sem
阅读全文
摘要:(1)jdk中原子类的使用: jdk5中提供了很多原子类,它会使变量的操作变成原子性的。 原子性:原子性指的是一个操作是不可中断的,即使是在多个线程一起操作的情况下,一个操作一旦开始,就不会被其他线程干扰。 jdk中的rt.jar中提供给了很多的原子性操作类。它们是位于java.util.concu
阅读全文
摘要:再说synchronized关键字之前,我们首先先小小的了解一个概念-内置锁。 什么是内置锁? 在java中,每个java对象都可以用作synchronized关键字的锁,这些锁就被称为内置锁,每个对象的锁的信息都存在对象头中 所以synchronized关键字在使用过程中之所以能够保证线程的安全,
阅读全文
摘要:说到多线程带来的风险,首先要了解一个概念-临界区。 什么是临界区? 临界区是用来表示一种公共的资源(共享数据),它可以被多个线程使用,但是在每次只能有一个线程能够使用它,当临界区资源正在被一个线程使用时,其他的线程就只能等待当前线程执行完之后才能使用该临界区资源。 比如一台饮水机,比如办公室办公室里
阅读全文
摘要:多线程是指机器支持在同一时间执行多个线程,能够提高cpu的利用率 ,提高程序的执行效率。 (1)继承Thread类 多线程可以通过继承Thread类并重新Thread的run方法来启动多线程。然后通过Thread的start方法来启动线程。上代码: 这里也顺便用了线程的中断,当希望一个线程不再执行时
阅读全文
摘要:1. 修改RocketMQ默认启动端口 由于只有两台机器,部署双主双从需要四个节点,所以只能修改rocketmq的默认启动端口,从官网下载rocketmq的source文件,解压后使用idea打开,全局搜索9876,将所有使用9876端口的地方改为9877。 在终端打开,使用:mvn -Prelea
阅读全文
摘要:在前面学习ActiveMQ时,看到ActiveMQ可以是队列消息模式,也可以是订阅发布模式。 同样,在RocketMQ中,也存在两种消息模式,即是集群消费模式和广播消费模式。 1. 集群消费模式 跟AciiveMQ一样,当存在多个消费者时,消息通过一定负载均衡策略,将消息分发到多个consumer中
阅读全文
摘要:1. 概念 Producer端重试: 生产者端的消息失败,也就是Producer往MQ上发消息没有发送成功,比如网络抖动导致生产者发送消息到MQ失败。 这种消息失败重试我们可以手动设置发送失败重试的次数。 Consumer端重试: Consumer消费消息失败后,要提供一种重试机制,令消息再消费一次
阅读全文
摘要:1. Exactly Only Once (1). 发送消息阶段,不允许发送重复的消息 (2). 消费消息阶段,不允许消费重复的消息。 只有以上两个条件都满足情况下,才能认为消息是“Exactly Only Once”,而要实现以上两点,在分布式系统环 境下,不可避免要产生巨大的开销。所以Rocke
阅读全文
摘要:1. PushConsumer 推,Broker主动向Consumer推消息,它Consumer的一种,应用通常向对象注册一个Listener接口,一旦接收到消息,Consumer对象立刻回调Linstener接口方法。Push方式里,consumer把轮询过程封装了,并注册MessageListe
阅读全文
摘要:由于消息的消费方式有两种,所以两种方式也有不同的API: 1. PushConsumer的配置 1. consumerGroup: 默认值为DEFAULT_CONSUMER,Consumer组名,多个Consumer如果属于一个应用,订阅同样的消息,且消费逻辑一致,则应该将它们归为同一组 2. me
阅读全文
摘要:1. 事务消息原理图 RocketMQ除了支持普通消息,顺序消息之外,还支持了事务消息。 1. 什么是分布式事务? 分布式事务就是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。以上是百度百科的解释,简单的说,就是一次大的操作由不同的小操作组成,这些
阅读全文
摘要:1. 顺序消息原理图 2. 什么是顺序消息? 消费消息的顺序要求同发送消息的顺序一致,在RocketMQ中,主要指的是局部顺序,即一类消息为满足顺序性,必须Producer单线程顺序发送,并且发送给到同一队列,这样Consumer就可以按照Producer发送的顺序去消费消息。 2.1 普通顺序消息
阅读全文
摘要:在RocketMQ中提供了三种发送消息的模式: 1.NormalProducer(普通) 2.OrderProducer(顺序) 3.TransactionProducer(事务) 下面来介绍一下producer中的各个API的使用: 1. producerGroup:Producer组名, 默认值
阅读全文
摘要:1. 添加依赖 pom.xml如下: <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.3.1</version> </dependency>
阅读全文
摘要:1. RocketMQ主要的9个模块,如图: 2. 模块介绍 1. rocketmq-common:通用的常量枚举,基类方法或者数据结构,按描述的目标来分包,通俗易懂。报名有admin,consumer,filter,hook,message等。 2. rocketmq-remoting:用Nett
阅读全文
摘要:1. 下载rocketmq-console-ng 官网地址:https://github.com/apache/rocketmq-externals 拉下来之后,使用idea打开rocketmq-console,在application.properties配置文件中修改rocketmq.confi
阅读全文
摘要:前面已经学习了RockeMQ的四种集群方式,接下来就来搭建一个双Master(2m)的集群环境。 1. 双Master服务器环境 序号 ip 用户名 密码 角色 模式 (1) 47.105.145.123 root nameServer1,brokerServer1 Master1 (2) 47.1
阅读全文
摘要:1. RocketMQ的物理结构 RecketMQ网络部署的特点: Name Server是一个几乎无状态特点,可集群部署,节点之间无任何信息同步的(相对于zookeeper是较为轻量级的)。 Broker部署相对比较复杂的,Broker分为Master和Slave,一个Master可以对应多个Sl
阅读全文
摘要:1. 什么是RocketMQ? 是一个队列模型的消息中间件,具有高性能、高可靠、高实时、分布式特点。 Producer、Consumer、队列都可以分布式。 Producer 吐一些队列轮流収送消息,队列集合称为Topic,Consumer 如果做广播消费,则一个consumer 实例消费返个Top
阅读全文
摘要:RocketMQ推荐了几种Broker集群方式,这里的Slave不可写,但可读,类似于Mysql主备方式 1. 单个Master 这是一种风险比较大的集群方式,因为一旦Borker重启或宕机期间,将会导致这个服务不可用,因此是不建议线上环境去使用的。 2. 多个Master 一个集群全部都是Mast
阅读全文
摘要:1. 什么是KafkaConsumer? 应用程序使用KafkaConsul'le 「向Kafka 订阅主题,并从订阅的主题上接收消息。Kafka的消息读取不同于从其他消息系统读取数据,它涉及了一些独特的概念和想法。 1.1 消费者和消费者群组 单个的消费者就跟前面的消息系统的消费者一样,创建一个消
阅读全文
摘要:1. Kafka的Producer 不论将kafka作为什么样的用途,都少不了的向Broker发送数据或接受数据,Producer就是用于向Kafka发送数据。如下: 2. 添加依赖 pom.xml文件如下: <!-- https://mvnrepository.com/artifact/org.a
阅读全文
摘要:1. Pull vs Push Producer主动的通过push将消息发布到Broker上,Consumer通过Pull的的方式从Broker消息消息。 通过Push的方式由于是一有消息就推到Broker,所以极大的保证了消息实时性,但是在某些情况下,可能由于Consumer网络,或是其他原因倒是
阅读全文
摘要:1. Zookeeper的基本操作 zookeeper中的节点可以持久化/有序的两个维度分为四种类型: PERSIST:持久化无序(保存在磁盘中) PERSIST_SEQUENTIAL:持久化有序递增 EPHEMERAL:非持久化的无序的,保存在内存中,当客户端关闭后消失。 EPHEMERAL_SE
阅读全文
摘要:1. CAP理论 1.1 Cosistency(一致性) 通过某个节点的写操作结果对后面通过其他节点的读操作可见。 如果更新数据后,并发访问的情况下可立即感知该更新,称为强一致性 如果允许之后部分或全部感知不到该更新,称为弱一致性。 若在之后的一段时间(通常该时间不是固定的)后,一定可以感知到该更新
阅读全文
摘要:1. 架构图 一个Kafka集群中包含若干个Broker(消息实例),Kafka支持Broker横向扩展,Broker越多,吞吐量越大,同时也包含了若干个Producer(可以是web前端产生的Page View,或者是服务器日志,系统CPU、Memory等)和若干个Consumer(消费者)以及一
阅读全文
摘要:1. Kafka简介 Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka对消息保存时根据Topic进行归类,发送消息者成为Pro
阅读全文
摘要:持久化:将交换机或队列数据保存到磁盘,服务器宕机或重启之后依然存在。 非持久化:将交换机或队列的数据保存到内存中,服务器宕机或重启之后数据将不存在。 在RabbitMQ中也提供了持久化和非持久化方式。 实现方式为将durable设置为false即可。在配置文件中配置交换机或队列时配置durable=
阅读全文
摘要:在Spring AMQP项目中Spring也提供了对RabbitMQ的支持,这里在之前学习SpringBoot的时候也整合过,但是今天这里使用的Spring的xml配置来整个rabbit. Spring AMQP项目地址:https://spring.io/projects/spring-amqp;
阅读全文
摘要:1. fanout模式 1.1 Publish/Subscribe(发布/订阅)结构图 上图表示一个消费者消费消息之后,不讲消息直接存储到队列,而是使用两个消费者各自声明一个队列,将各自的对应的队列与交换机绑定。这样每个消费者都读取的是自身所对应的队列的所有消息,大达到了一个生产者生产消息,所有消费
阅读全文
摘要:1. Woker队列结构图 这里表示一个生产者生产了消息发送到队列中,但是确有两个消费者在消费同一个队列中的消息。 2. 创建一个生产者 Producer如下: package com.wangx.rabbitmq.worker; import com.rabbitmq.client.Channel
阅读全文
摘要:1. 简单队列结构图 2. 引入依赖 pom.xml文件 <dependency> <groupId>com.rabbitmq</groupId> <artifactId>amqp-client</artifactId> <version>5.5.0</version> </dependency>
阅读全文
摘要:·1. 什么是RabbitMQ? RabbitMQ是流行的开源消息队列系统,用erlang语言开发。RabbitMQ是AMQP(高级消息队列协议)的标准实现。 而AMQP协议则是指:即Advanced Message Queuing Protocol,一个提供统一消息服务的应用层标准高级消息队列协议
阅读全文
摘要:1、做计划,并同时写博客 在四个月的时间里,我首先按照Java后端路线图(两个图结合着参考学习)安排好复习计划,每个知识点都安排一段时间。比如我可能花一天时间复习“Java反射”,两天时间复习“设计模式”,一周的时间用于复习"JVM虚拟机”。我一般会在月初做好整个月的计划,然后根据进度做一些微调。
阅读全文
摘要:使用方法:arr.splice(arr.indexOf(ele),length):表示先获取这个数组中这个元素的下标,然后从这个下标开始计算,删除长度为length的元素 这种删除方式适用于任何js数组
阅读全文
摘要:调试程序的过程中,我们打印一个日志: console.log(object);,其中object是任意的一个json对象。 在控制台就会看到[object object],而看不到具体的内容。 我们可以这样做: console.log(JSON.stringify(object)); 控制台输出:
阅读全文
摘要:1.正常情况下返回的json数据格式如下: 默认都是一行输出,或者在HTML进过一些插件格式化之后才会显示比较美观的格式。那么在Java后台如何进行json格式化输出呢下面直接贴代码。2.可以封装一个工具类专门转换json格式化: 3.同样的数据输出之后就达到预期效果: 如有披露或问题欢迎留言或者入
阅读全文
摘要:很多平台一旦做大了,平台的流量就会陡增,同时并发访问的流量也会暴增,原本规划的硬件配置就无法满足当下的流量问题。 那么如何处理好高并发的流量问题呢? 小编将这些分为2个方面:架构层面和网站本地项目层面。 一、架构层面 1、硬件升级 假设一台服务器最多能支持每天10万独立IP,如果访问量增大的话,那么
阅读全文
摘要:解析response中的内容,并把获取到的value传递到后续的request中,常用的方法就是在想要解析response的request上添加后置处理器 本章介绍两种常用的组件 BeanShell PostProcessor JSON Extractor 获取response中的字符串,并对内容进
阅读全文
摘要:测试场景: 模拟并发100个user,在TesterHome 站内搜索VV00CC 添加线程组 添加HTTP信息头管理器 添加HTTP Sampler 填写HTTP Sampler中的信息 添加监听器 线程组参数中填写模拟并发的数量 运行脚本 查看运行结果 原文 Jmeter Web 性能测试入门
阅读全文
摘要:添加配置元件:用户定义的变量 使用函数助手 添加配置元件:CSV Data Set Config 添加前置处理器:BeanShell PreProcessor 在request中使用: 在需要参数化的地方用${userId}代替原来的参数值 示例: 生成5位字符长的字符串,从1234567890qa
阅读全文
摘要:jmeter自带了拦截request的功能,并且也有对应的tool:badboy 可以用。但由于我经常做移动端的项目,个人还是习惯用fiddler来收集request。 官网下载并安装Fiddler 抓取PC上的http/https请求 1.开启https抓包选项 2.浏览器访问http://127
阅读全文
摘要:线程组:用来设置并发的数量和模式。是用来模拟用户并发的组件。JMeter 的每个任务都是用线程来处理的。 线程数:要并发的请求数量。 Ramp-Up Period: 在多次时间内把这些并发的请求发送完,单位秒 循环次数:这些并发一共要循环测试多少次 调度器: 启动时间:测试计划什么时候启动,启动延迟
阅读全文
摘要:Path: 添加%JAVA_HOME%\bin; %JMETER_HOME%\bin; 打开cmd, 输入java 回车,jmeter 回车,分别显示如下,表示环境配置成功。 原文 https://testerhome.com/topics/10944
阅读全文
摘要:MySQL参数优化这东西不好好研究还是比较难懂的,其实不光是MySQL,大部分程序的参数优化,是很复杂的。MySQL的参数优化也不例外,对于不同的需求,还有硬件的配置,优化不可能又最优选择,只能慢慢的进行优化,需要不断的调试,才能达到不同环境的最优选择。 首先介绍一下MySQL配置文件中不同模块 原
阅读全文
摘要:1. 什么Docker? Docker是一个能把开发的应用程序自动部署到容器的引擎,它使用go语言编写的开源引擎,它在github上面个的地址为:https://github.com/docker/docker. 在2013年初由dotCloud开发的基于Apache 2.0 开源授权协发行的引擎。
阅读全文
摘要:在性能测试过程中,我们常常遇到这样的问题,使用Jmeter的GUI界面进行大并发量的性能测试时,界面容易卡死,无法继续进行性能测试。通过使用命令行方式启动jmeter是一个不错的方式。下面就简单介绍一下使用命令行方式启动jmeter进行性能测试。 注:进行下面操作时,需要确保以下环境的搭建是ok的:
阅读全文
摘要:1. 什么时候使用ActiveMQ 1. 异步通信 2. 一对多通信 3. 做个系统的集成,同构,异构 4. 作为RPC的替代 5. 多个应用相互解耦 6. 作为事件驱动架构的幕后支撑 7. 为了提高性能的可伸缩性 2. ActiveMQ的优化 2.1 ActiveMQ的性能依赖的因素 1.网络拓扑
阅读全文
摘要:1. 监控和管理Broker Web Console 方式:直接访问ActiveMQ的管理页面:http://localhost:8161/admin,默认的用户名和密码是admin/admin。具体配置在conf/jetty.xml里面,这就是我们前面例子中一直使用的方式。 Hawtio-web
阅读全文
摘要:1. Message Selectors JMS Selectors 用在获取消息的时候,可以基于消息属性和Xpath语法对消息进行过滤。JMS Selectors有SQL92语义定义。以下是个Selectors的例子: consumer = session.createConsumer(desti
阅读全文
摘要:1. Exclusive Consumer 独有消费者:Queue中的消息是按照顺序被分发到consumer的,然而,当你有多个consumers同时从相同的queue中提取消息时,你将失去这个保证。因为这些消息是被多个线程并发的处理。有的时候,保证消息按照顺序处理是很重要的。例如:你可能不希望在插
阅读全文
摘要:1. Blob Message 有些时候,我们需要传递Blob(Binary Large Objects)消息,在5.14之前,(5.12和5.13需要在jetty.xml中手动开启)可以按照如下的方式配置使用fileserver: 配置BLOB Tansfer Policy,可以在发送方的连接UR
阅读全文
摘要:1. Messaage Properties ActiveMQ支持很多消息属性,具体可以参考 http://activemq.apache.org/activemq-message-properties.html 常见得一些属性说明: 1. queue得消息默认是持久化得 2. 消息得优先级默认是4
阅读全文
摘要:1. Optimized Acknowledgetment ActiveMQ缺省支持批量确认消息,由于批量确认会提高性能,如果希望在应用程序中禁止经过优化的确认方式,可以采用以下几种方式: 1. 在Connection的URI上启用Optimized Acknowledgements ActiveM
阅读全文
摘要:1. Message Cursors 1.1 概述 ActiveMQ发送持久化消息的典型的厝里方式是:当消息的消费者准备就绪时,消息发送系统把存储的消息按批次发送给消费者,在发送完一个批次的消息后,指针的标记位置指向下一个批次的待发消息的位置,进行后续的发送操作。这是一种 比较健壮和灵活的消息发送方
阅读全文
摘要:1. Visual Destinations 1.1 概述 虚拟Destination用来创建逻辑Destinations,客户端可以通过它来产生和消费消息,它会把消息映射到物理Destinations。ActiveMQ支持两种方式: 1. 虚拟主题(Virtual Topics) 2. 组合Des
阅读全文
摘要:1. Wildcards 1. Wildcards用来支持名字分层体系,它不是JMS规范的一部分,是ActiveMQ的扩展。 ActiveMQ支持一下三种wildcards: 1. ".": 用于作为匹配路径上名字间的分隔符 2. “*": 用于匹配路径上的任何名字(不递归) 3. ”>“: 用于递
阅读全文
摘要:1. Queue consumer cluster ActiveMQ支持Consumer对消息的高可靠性的负载均衡消费,如果一个Consumer死掉,该消息会转发到其他的Consumer消费的Queue。如果一个Consumer获得消息比其他Consumer快,那么他将获得更多的消息。因此推荐Act
阅读全文
摘要:1. 多播协议multicast ActiveMQ使用Multicast协议将一个Service和其他的Broker是我Service里连接起来。IP Multicast是一个被用于网络中传输数据到其他一组接收者的技术。 Ip muiticast传统的概念称为组地址,组地址是ip地址在ActiveM
阅读全文
摘要:1. Failover Protocol 前面讲述的都是Client配置连接到指定的broker上,但是,如果Broker的连接失败怎么办呢?此时,Client有两个选项:要么立刻死掉,要么连接到其他的Broker上。 2. Failover Protocol的配置方式 默认的情况下,这种协议用于随
阅读全文
摘要:1. 启动多个Broker 在win10下同一台服务器启动多个Broker, 步骤如下: 1. 复制安装目录下的conf文件夹命名为conf2 2. 修改activemq.xml中的brokerName不能跟之前的一样。如: 3.修改数据存放的名称,如下: 4. 修改所有的transportConn
阅读全文
摘要:1. 概述 ActiveMQ不仅支持persistent和non-persistent两种方式,还支持消息的恢复(recovery)方式。 2. PTP Queue的存储是很简单的,其实就是FIFO的Queue 2. PUB/SUB 对于持久化订阅主题,每一个消费者都将获得一个消息的复制。 3. 有
阅读全文
摘要:1. 连接到ActiveMQ Connector: Active提供的,用来实现连接通讯的功能,包括:client-to-broker,broker-to-broker.ActiveMQ允许客户端使用多种协议来连接。 1.1 配置Transport Connecto 在conf/activemq.x
阅读全文
摘要:1. 添加依赖 spring 提供了对JMS的支持,需要添加Spring支持jms的包和Spring的核心包,如下: <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <
阅读全文
摘要:1. JMS的API结构 其实上图中的五个API在第一节中我们都已经使用到了。本节将会讲非持久化和持久化topic的使用。 2. JMS的基本开发步骤 1. 创建一个JMS工厂, ConnectionFactory 2. 通过Connection Factory来创建JMS的Connection 3
阅读全文
摘要:Broker:相当于一个ActiveMQ服务器实例,在实际的开发中我们可以启动多个Broker. 命令行启动参数示例如下: 1. activemq start 使用默认的activemq.xml来启动。 2. activemq start xbean:file../conf/active-2.xml
阅读全文
摘要:数据通信 如果需要考虑的是两台机器(甚至多台)怎么使用Netty进行通信。大体上分为三种: 1 第一种:使用长连接通道不断开的形式进行通信。也就是服务端和客户端的通道一直处于开启状态。 如果服务器性能足够好,并且我们的客户端数量也比较少的情况下,推荐这种方式。 2 第二种:一次性批量提交数据,采用短
阅读全文
摘要:脚本运行的过程中,大量request抛error,但没有地方能够查看request是因为什么error的。 原因:Jmeter默认禁掉了运行过程中每个request的具体response信息收集,只保留了status。解决方法:修改jmeter.properties文件中Results file c
阅读全文
摘要:今天遇到一个问题,在下面的代码中,当抛出运行时异常后,后面的代码还会执行吗,是否需要在异常后面加上return语句呢? public void add(int index, E element){ if(size >= elements.length) { throw new RuntimeExce
阅读全文
摘要:一个每天1000万PV的网站需要什么样的性能去支撑呢?继续上一篇,下面我们就来计算一下,前面我们已经搞到了一票数据,但是这些数据的意义还没有说。技术是为业务服务的,下面就来说说怎么让些数据变得有意义。 一、聚合报告初识聚合报告是不是有些眼熟,是的你没看错,他跟Apache AB的结果是类似的,事实上
阅读全文
摘要:一、JMeter的安装(Linux) 1. 下载JMeter:这个就不细说了,直接去(http://jmeter.apache.org/download_jmeter.cgi)下载。 2. 解压:tar -zxvf apache-jmeter-2.9.tgz 3. 执行:sh jmeter.sh。
阅读全文
摘要:对于服务器性能测试这块的经验更是少得可以忽略。迫使不得不让我们去尝试了解测试的知识。首先我们的需求场景如下:服务器硬件:(只有一台)系统:CentOS 7WebServer:Tomcat 7.0Jdk:1.8CPU:8核 2.9GHz两个内存:16G报名应用系统:只需要向外提供一个报名和找回报名号的
阅读全文
摘要:1. JMS的API结构 其实上图中的五个API在第一节中我们都已经使用到了。本节将会讲非持久化和持久化topic的使用。 2. JMS的基本开发步骤 1. 创建一个JMS工厂, ConnectionFactory 2. 通过Connection Factory来创建JMS的Connection 3
阅读全文
摘要:springboot的打包方式有很多种。有打成war的,有打成jar的,也有直接提交到github,通过jekins进行打包部署的。这里主要介绍如何打成jar进行部署。不推荐用war,因为springboot适合前后端分离,打成jar进行部署更合适。首先需要在application.properti
阅读全文
摘要:1. 消息接收确认 JMS消息只有在被确认之后,才认为已经被成功的消费了,消息成功消费通常包含三个阶段:客户接收消息,客户处理消息和消息被确认。 在事务性会话中,当一个事务被提交的时候,确认自动发生。在非事务性会话中,消息何时被确认取决于创建会话时的应答模式(acknowledge mode)。该参
阅读全文
摘要:1. JMS 的基本概念 1. JMS是什么? JMS Java Message Service,Java消息服务,是Java EE中的一种技术。 2. JMS规范 JMS定义了Java中访问消息中间件的接口,并没有给予实现,实现JMS接口的消息中间件称为JMS Provider,例如ActiveQ
阅读全文
摘要:1. 什么是ActiveMQ? ActiveMQ是Apache推出的,一款开源的,完全支持JMS1.1和j2ee1.4规范的JMS Provider实现的消息中间件(Message Oriented Middleware, MOM). 2. ActiveMQ能干什么? 最主要的功能就是:实现JMS
阅读全文
摘要:1. 禁用过滤器 # zuul.<SimpleClassName>.<filterType>.disable=true # 例如禁用 自定义的过滤器 zuul.MyFilter.pre.disable=true 2. 路由的映射 方法1: zuul.routes.spring-cloud-provi
阅读全文
摘要:zuul不仅只是路由,还可以自定义过滤器来实现服务验证。 实现案例:自定义过滤器,检验头部是否带有token,如果token=wangx,则通过校验,若不存在或不为wangx则返回提示token错误。 扩展:一般情况下,可以采用JWT规范来做token的校验。 JWT:https://jwt.io/
阅读全文
摘要:1. Zuul的工作机制 Zuul提供了一个框架,可以对过滤器进行动态的加载,编译,运行。过滤器之间没有直接的相互通信,他们是通过一个RequestContext的静态类来进行数据传递的。RequetstContext类中的ThreadLocal变量来记录每个request所需要传递的数据。 它包含
阅读全文
摘要:1. 什么时候Zuul? Zuul是一个基于jvm路由和服务端的负载均衡器,在云平台上提供动态路由,监控,弹性,安全等边缘服务的框架。 路由功能:相当于nginx的反向代理 比如: / 可能需要映射到你的web应用,/api/users/映射到用户服务 ,/api/shop映射到商城服务。 2. 使
阅读全文
摘要:前言: 上一节中,我们使用Hystrix Dashboard,只能看到单个应用内的服务信息。在生产环境中,我们经常是集群状态,所以我们需要用到Turbine这一应用。 作用:汇总系统内的多个服务的数据并显示到Hystrix Dashboard上。 1. 新建Turbine项目 添加依赖,pom文件
阅读全文
摘要:1. 引入依赖 在前面几节中的消费者中添加pom依赖。 2. 在启动类上添加注解 添加@EnableHystrixDashboard 开启Dashboard。 3. 注册HystrixMetricsStreamServlet 在2.x之前的版本中,会自动注入该Servlet的,但是在2.x之后的版本
阅读全文
摘要:1. Hystrix对Feign的支持 添加Feign中IUserBiz的实现类HystrixFallBack: package com.wangx.cloud.springcloud02consumer.configure; import com.wangx.cloud.springcloud02
阅读全文
摘要:说明 : 1、Hystrix通过舱壁模式来隔离限制依赖的并发量和阻塞扩散 2、 Hystrix提供了两种隔离策略:线程池(THREAD)和信号量隔离SEMAPHORE)。 1. 线程池隔离(默认策略模式) 线程池隔离把执行依赖代码的线程与请求线程(如tomcat线程)分离,请求线程可以自由控制离开时
阅读全文
摘要:为什么会有断路器? 在微服务架构中,系 是拆分成 一个的服务单元各间通过注册与发现 的方式互相依 赖。每个单元都在不同的进程中运行, 都是通过远程调用的方式进行信 ,这样就有可能因为网络原或 是依赖服务自身问题出现调用延迟或者故障 而这些问题会直接导致调用方的对外服务也出现延迟,若此时调用方的请求不
阅读全文
摘要:工作流程(参考:https://github.com/Netflix/Hystrix/wiki/How-it-Works) 1、 创建一个HystrixCommand或HystrixObservableCommand实例 第一步就是构建一个HystrixCommand或HystrixObservab
阅读全文
摘要:1. Feign的默认配置 Feign 的默认配置 Spring Cloud Netflix 提供的默认实现类:FeignClientsConfiguration 解码器:Decoder feignDecoder: ResponseEntityDecoder (which wraps a Sprin
阅读全文
摘要:1. 什么是Feign? Feign是一种声明式、模板化的HTTP客户端,在SpringCloud中使用Feign。可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到是一个远程方法,更感知不到这是一个HTTP请求 Feign的灵感来自于Retrofit,JAXRS-
阅读全文
摘要:一、 内置 负载均衡策略的介绍的 IRule的实现类 2. 通过代码实现负载均衡 在第六节Riddom的使用的工程中,随机策略配置类 package com.wangx.cloud.springcloud02consumer.configure; import com.netflix.loadbal
阅读全文
摘要:1. 注解@LoadBalanced 作用:识别应用名称,并进行负载均衡。 2. 入口类:LoadBalancerAutoConfiguration 说明:类头上的注解可以知道Ribbon 实现的负载均衡自动化配置需要满足两个条件 1、 RestTemplate 类必须存在于当前工程的环境中 2、
阅读全文
摘要:1. Eureka服务认证 1. 引入依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> <scope>test</scop
阅读全文
摘要:1. 什么是负载均衡? 负载均衡,就是分发请求流量到不同的服务器。 负载均衡一般分为两种 1. 服务器端负载均衡(nginx) 2. 客户端负载均衡(Ribbon) 2. 服务提供者(spring-cloud-provider) 实体类User: Controller接口: 3. 服务消费者(spr
阅读全文
摘要:1. Eureka监控配置 Eureka的客户端需要加入依赖 而由于服务端本身已经依赖了该依赖,所以不需要再引入。 接下来就是一些配置信息的添加: 注意: 1. 服务监控依赖于spring-boot-starter-actuator这个jar 2. 注意management.context-path
阅读全文
摘要:1. Eureka服务端的启动过程 1.1 入口类EurekaServerInitializerConfiguration类, public void start() { (new Thread(new Runnable() { public void run() { try { EurekaSer
阅读全文
摘要:1. Spring Cloud Netflix Spring Cloud Netflix 是Spring Cloud 的核心子项目,是对Netflix公司一系列开源产品的封装。它为Spring Boot应用提供了自动配置的整合,只需要通过一些简单的注解,就可以快速的在Spring Cloud应用中使
阅读全文
摘要:1. 微服务是什么? 微服务是一种由多个服务组成的集合体,它属于一种软甲架构,在微服务中,它的每个服务都是独立存在的,微服务是一种去中心化的思想。 它具有开发简单,技术栈灵活,服务独立解耦,可用性高等特点,但是它也面临着维护和部署复杂度增加,服务间通信成本高,数据一致性的保证和系统集成测试等挑战 2
阅读全文
摘要:Swagger 是一个规范和完整的框架,用于生成,描述,调用和可视化RESTful风格的web服务 http://swagger.io Springfox的前身是swagger-springmvc,是一个开源的API doc框架,可以将我们的Controller接口的方法以文档的形式展现,基于swa
阅读全文
摘要:Druid Spring Boot Starter Druid Spring Boot Starter 用于帮助你在Spring Boot项目中轻松集成Druid数据库连接池和监控。 如何使用 在 Spring Boot 项目中加入druid-spring-boot-starter依赖 Maven
阅读全文
摘要:SpringBoot提供了三种应用监控的方式 通过HTTP(最简单方便) 通过JMX 通过远程shell 这里就是用最简单的方式来使用SpringBoot的应用监控 首先引入依赖,pom文件如下 配置文件如下 application.properties 配置之后启动系统,SpringBoot就已经
阅读全文
摘要:session集群的解决方案: 1.扩展指定server 利用Servlet容器提供的插件功能,自定义HttpSession的创建和管理策略,并通过配置的方式替换掉默认的策略。缺点:耦合Tomcat/Jetty等Servlet容器,不能随意更换容器。 2.利用Filter 利用HttpServlet
阅读全文
摘要:首先,引入发送邮件的依赖,由于freemarker自定义模板,所以也需要把freemarker的依赖引入 pom.xml文件 配置文件需要配置的信息: 使用qq邮箱需要开通POP3/SMTP服务,具体方法自行百度。 实现轮询发送的类,这里主要就是将默认只保存一个用户的配置bean注入到本实例中,读取
阅读全文
摘要:1. activemq 首先引入依赖 pom.xml文件 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-activemq</artifactId> </dependen
阅读全文
摘要:1. 使用Redis 在使用redis之前,首先要保证安装或有redis的服务器,接下就是引入redis依赖。 pom.xml文件如下 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-s
阅读全文
摘要:在实际的运用开发中,跟数据库之间的交互是必不可少的,SpringBoot也提供了两种跟数据库交互的方式。 1. 使用JdbcTemplate 在SpringBoot中提供了JdbcTemplate模板类,JdbcTemplate提供的方法进行增删改查的操作。 首先需要在pom文件中添加依赖: 还需要
阅读全文
摘要:直接上代码,上传文件的前端页面: 后台上传方法: 这样就完成了文件的上传,当然这里只是一个demo,只保存了文件,在实际的运用开发中,还需要将文件路径和文件名保存到数据库中,使用文件的时候根据该路径去找到文件。 在SpringBoot中也针对文件上传提供了一些配置。 在示例中,SpringBoot默
阅读全文
摘要:在实际应用开发中,跨域是一个比较常见的问题,解决方法可以用jsonp,frame,cors等, 这里示例的是SpringBoot对CORS的支持的三种实现方式 第一种:配置一种全局的支持,这种方式需要新增一个配置类如下: 这样在别的服务中想要访问该服务的api路径下的所有资源都会被允许跨域请求,本示
阅读全文
摘要:在一般的运用开发中Controller已经大部分都能够实现了,但是也不排除需要自己实现Servlet,Filter,Listener的方式,SpringBoot提供了三种实现方式。 1. 使用Bean的实现方式 首先创建一个Servlet,一个Filter,一个Listener, DemoServl
阅读全文
摘要:对于异常的处理,Spring Boot中提供默认的一个异常处理界面,如下图: 但是在实际的运用开发中,这样的页面显然是不友好的,Spring Boot也提供了自定义异常处理的方式,如下总结三种一场处理方式 1. 实现ErrorController接口的方式 实现ErrorController接口,重
阅读全文
摘要:1. freemarker引擎的使用 如果你使用的是idea或者eclipse中安装了sts插件,那么在新建项目时就可以直接指定试图模板 如图: 勾选freeMarker,此时springboot项目中就会自动引入freemarker的依赖如下: <dependency> <groupId>org.
阅读全文
摘要:在实际的应用开发中,可能会需要不同配置文件来支撑程序的运行,如开发,测试,预生产,生产环境等,程序在不同的环境下可能需要不同的配置,如不同数据源等,如果每次在不同的环境下都要去修改配置文件就会闲得不合理,而且很麻烦,此时就可以通过配置profiles,使程序在不同的环境中使用不同的配置文件。 1.
阅读全文
摘要:今天介绍三种配置文件手动取值的方式: springboot配置文件信息保存在application.properties中,默认可以spring.开头的进行spring进行一些常用参数的配置,但是很多时候我们需要手动配置一些配置,这就需要我们自己手动取值了, application.properti
阅读全文
摘要:简介: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid applic
阅读全文
摘要:对于复杂的系统,我们可能要开好几个分支来开发,那么怎样使用git合并分支呢? 合并步骤:1、进入要合并的分支(如开发分支合并到master,则进入master目录)git checkout mastergit pull 2、查看所有分支是否都pull下来了git branch -a 3、使用merg
阅读全文
摘要:原文cron表达式详解 Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: (1) Seconds Minutes Hours DayofMonth Month DayofWeek Year (2)Seconds Minutes
阅读全文
摘要:1、负载测试(Load Test):负载测试是一种性能测试,指数据在超负荷环境中运行,程序是否能够承担。 关注点:how much2、压力测试(Stress Test): 压力测试(又叫强度测试)也是一种性能测试,它在系统资源特别低的情况下软件系统运行情况,目的是找到系统在哪里失效以及如何失效的地方
阅读全文
摘要:原文 最近都在折腾这个站点,发现有时内存挺高的,本身使用的就是廉价小内存VPS,所以比较担心站点的稳定性,对运维压测也不是特别熟悉,所以找了两个在线的压力测试网站,小试一下,下面介绍给大家,比较适合小型网站。 一、webkaka http://yali.webkaka.com/ 是国内的一个站点,可
阅读全文
摘要:原文: Jmeter如何把响应数据的结果保存到本地的一个文件 当做性能压测时,可能会需要把响应数据的一些字段统计出来。这里简单介绍一下。 1、首先把接口调通,确定需要统计的字段,这里以统计ccmpSeq字段来做例子。 2、添加正则表达式提取器,用来提取响应结果中的ccmpSeq 正则表达式用""包起
阅读全文
摘要:原文链接: 性能测试之压力机瓶颈分析及优化 性能测试过程中,为了给服务器足够的压力,少不了要使用压力机,即模拟客户端的机器,压力机如果使用不当,测试结果就会不准确,反映不了服务器的真实性能情况。 因此,我们需要充分了解压力机,并对其进行调优,从而避免压力机自身瓶颈对压测带来影响,为性能测试结果的准确
阅读全文
摘要:原文地址 PS:下面是性能测试的主要概念和计算公式,记录下: 一.系统吞度量要素: 一个系统的吞度量(承压能力)与request对CPU的消耗、外部接口、IO等等紧密关联。 单个reqeust 对CPU消耗越高,外部系统接口、IO影响速度越慢,系统吞吐能力越低,反之越高。 系统吞吐量几个重要参数:Q
阅读全文
摘要:Ramp-up Period(in seconds) 【1】决定多长时间启动所有线程。如果使用10个线程,ramp-up period是100秒,那么JMeter用100秒使所有10个线程启动并运行。每个线程会在上一个线程启动后10秒(100/10)启动。Ramp-up需要要充足长以避免在启动测试时
阅读全文
摘要:(1)保存方案(2)创建线程组 线程组用来模拟用户的并发访问 线程组主要包含三个参数:线程数、准备时长(Ramp-Up Period(in seconds))、循环次数。 线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。 准备时长(秒): 设置的虚
阅读全文
摘要:jmeter下载 前提:已经安装jdk8+ jmeter下载地址:http://jmeter.apache.org/download_jmeter.cgi 有Binaries和Source版本 前者是编译好的,可以直接使用的版本;后者是源代码版本,需要自己编译才行 一般直接下载Binaries版本就
阅读全文
Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000794500000, 576716800, 0)
摘要:linux基于tomcat部署的web应用程序报Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000794500000, 576716800, 0) failed; error='Cannot all
阅读全文
摘要:JVM--Java Virtual Machine,Java虚拟机;tomcat不是直接运行在物理操作系统上,而是运行在Java虚拟机上,通常说的配置jvm就是配置分配给Java虚拟机的内存大小; 如果使用vmware或virtualbox那么给虚拟机分配内存那是很好理解的,可以理解成jvm这个虚拟
阅读全文
摘要:今天给服务器安装新LNMP环境时,wget 时提示 -bash:wget command not found,很明显没有安装wget软件包。一般linux最小化安装时,wget不会默认被安装。可以通过以下两种方法来安装:1、rpm 安装rpm 下载源地址:http://mirrors.163.com
阅读全文
摘要:1.解压缩: Linux下以tar.gz为扩展名的软件包,是用tar程序打包并用gzip程序压缩的软件包。要安装这种软件包,需要先对软件包进行解压缩,使用“tar -zxfv filename.tar.gz”可以对软件包进行解压缩,解压缩所得的文件在以filename为名的目录中。进入该目录,可以看
阅读全文
摘要:http://people.centos.org/hughesjr/chromium/6/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404 Not Found
阅读全文
摘要:原文 每天一个linux命令(61):wget命令 Linux系统中的wget是一个下载文件的工具,它用在命令行下。对于Linux用户是必不可少的工具,我们经常要下载一些软件或从远程服务器恢复备份到本地服务器。wget支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。所谓的自动下载是指,w
阅读全文
摘要:(转)linux中wget未找到命令 转:https://blog.csdn.net/djj_alice/article/details/80407769 在装数据库的时候发现无法使用wget命令,提示未找到命令,如图所示 那是因为没有安装wget,输入命令:yum -y install wget
阅读全文
摘要:linux环境下使用jmeter进行压力测试 linux环境下使用就meter进行压力测试: linux环境部署: 1.根据自己的服务器的机型选择:小编的是64位的,这里就以64位为例: 3.然后把下载tar.gz文件发送到服务器上: 这里我们可以使用xshell,连接服务器,同时也要下载xftp来
阅读全文
摘要:修改shell为可执行文件 chmod +x test2.sh chmod 751 file 给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执 有可能没权限 chmod 777 修改shell为可执行文件 chmod +x test2.sh
阅读全文
摘要:思路 首先隐藏input默认勾选框 通过绑定label标签,设置label的样式来设置勾选框效果在这里插入图片描述代码# html中input的checkbox定义,使用for循环创建多个checkbox并绑定到label上<div class="tab_1" v-for="(i, index) i
阅读全文
摘要:由于垃圾收集算法的实现涉及大量的程序细节,而且每个平台的虚拟机操作内存的方法又各不相同,因此博客中不过多的讨论算法的实现,只是介绍几种算法的思想以及发展。 相关阅读: 1、深入理解java虚拟机之java内存区域 2、深入理解java虚拟机之对象真的死了吗 1、标记-清除算法 标记清除算法分为“标记
阅读全文
摘要:一、http_load程序非常小,解压后也不到100Khttp_load以并行复用的方式运行,用以测试web服务器的吞吐量与负载。但是它不同于大多数压力测试工具,它可以以一个单一的进程运行,一般不会把客户机搞死。还可以测试HTTPS类的网站请求。下载地址:http_load-12mar2006.ta
阅读全文
摘要:一.前言 压力测试是每一个Web应用程序上线之前都需要做的一个测试,他可以帮助我们发现系统中的瓶颈问题,减少发布到生产环境后出问题的几率;预估系统的承载能力,使我们能根据其做出一些应对措施。所以压力测试是一个非常重要的步骤,下面我带大家来使用一款压力测试工具JMeter。 二.关于JMeter Ap
阅读全文
摘要:在linux系统中复制文件夹时提示如下: 在linux系统中复制文件夹时提示如下: 原文 Shell代码 cp: omitting directory `foldera/' Shell代码 Shell代码 其中foldera是我要复制的文件夹名,出现该警告的原因是因为foldera目录下还存在目录,
阅读全文
摘要:原文 Linux常用命令大全 最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考: 系统信息 arch 显示机器的处理器架构(1) u
阅读全文
摘要:原文 js去除字符串空格(空白符) 使用js去除字符串内所带有空格,有以下三种方法: ( 1 ) replace正则匹配方法 去除字符串内所有的空格:str = str.replace(/\s*/g,""); 去除字符串内两头的空格:str = str.replace(/^\s*|\s*$/g,""
阅读全文
摘要:1、Mysql的limit用法 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。 Sql代码 SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset
阅读全文
摘要:substring(x)和substring(x,y)的用法 代码: 总结:substring(x)是从字符串的的第x个字符截取 substring(x,y)是从x到y前的位置停止答案: 作者:yhs17865569668 来源:CSDN 原文:https://blog.csdn.net/yhs17
阅读全文
摘要:String对象的方法 方法一: indexOf() (推荐) var str = "123"; console.log(str.indexOf("3") != -1 ); // true indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。如果要检索的字符串值没有出现,则该方法返回 -1。 方法二: search() var str = "123"...
阅读全文
摘要:1.js如何将纯数字字符串转换为long型? js 中 int的存储位数?最大十进制数表示是多少? 精度http://www.jb51.net/article/59808.htm 整数(不使用小数点或指数计数法)最多为 15 位。 小数的最大位数是 17,但是浮点运算并不总是 100% 准确 htt
阅读全文
摘要:union和union all的区别是,union会自动压缩多个结果集合中的重复结果,而union all则将所有的结果全部显示出来,不管是不是重复。 如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字。union(或称为联合)的作用是
阅读全文
摘要:原文 我们都知道在最新的 ES6 中,新添加了两个用于变量声明的关键字 let 和 const,那么这两个和我们以前经常使用的 var 有什么区别呢?今天我们就来看一下吧。 变量声明和初始化 在比较它们的区别之前,我们先来看一下变量声明和初始化。变量声明: var declaration 变量声明会
阅读全文