Web性能压力测试工具之WebBench详解

Webbench是知名的网站压力测试工具,它是由Lionbridge公司(http://www.lionbridge.com)开发。

Webbench能测试处在相同硬件上,不同服务的性能以及不同硬件上同一个服务的运行状况。webbench的标准测试可以向我们展示服务器的两项内容:每秒钟相应请求数和每秒钟传输数据量。webbench不但能具有便准静态页面的测试能力,还能对动态页面(ASP,PHP,JAVA,CGI)进 行测试的能力。还有就是他支持对含有SSL的安全网站例如电子商务网站进行静态或动态的性能测试。
Webbench最多可以模拟3万个并发连接去测试网站的负载能力。
Continue reading “Web性能压力测试工具之WebBench详解”

ZooKeeper 典型应用场景一览

数据发布与订阅(配置中心)

发布与订阅模型,即所谓的配置中心,顾名思义就是发布者将数据发布到ZK节点上,供订阅者动态获取数据,实现配置信息的集中式管理和动态更新。例如全局的配置信息,服务式服务框架的服务地址列表等就非常适合使用。

1. 应用中用到的一些配置信息放到ZK上进行集中管理。这类场景通常是这样:应用在启动的时候会主动来获取一次配置,同时,在节点上注册一个Watcher,这样一来,以后每次配置有更新的时候,都会实时通知到订阅的客户端,从来达到获取最新配置信息的目的。

2. 分布式搜索服务中,索引的元信息和服务器集群机器的节点状态存放在ZK的一些指定节点,供各个客户端订阅使用。

3. 分布式日志收集系统。这个系统的核心工作是收集分布在不同机器的日志。收集器通常是按照应用来分配收集任务单元,因此需要在ZK上创建一个以应用名作为path的节点P,并将这个应用的所有机器ip,以子节点的形式注册到节点P上,这样一来就能够实现机器变动的时候,能够实时通知到收集器调整任务分配。

4. 系统中有些信息需要动态获取,并且还会存在人工手动去修改这个信息的发问。通常是暴露出接口,例如JMX接口,来获取一些运行时的信息。引入ZK之后,就不用自己实现一套方案了,只要将这些信息存放到指定的ZK节点上即可。

注意:在上面提到的应用场景中,有个默认前提是:数据量很小,但是数据更新可能会比较快的场景。 Continue reading “ZooKeeper 典型应用场景一览”

sshpass: 用于非交互的ssh 密码验证

ssh登陆不能在命令行中指定密码,也不能以shell中随处可见的,sshpass 的出现,解决了这一问题。

它允许你用 -p 参数指定明文密码,然后直接登录远程服务器。 它支持密码从命令行、文件、环境变量中读取。

Continue reading “sshpass: 用于非交互的ssh 密码验证”

FastTpl – 轻量级模板解析引擎

〇、前言

在PHP开发者当中,流行的Smarty模板引擎已是无人不知,它的功能丰富强大,出现的时机也恰到好处。

但是为什么我还需要开发这么一个模板引擎呢,初衷有三:

1、我不需要太复杂的模板设计,需要的是简单易学,团队成员能够快速入手,并且易于维护的模板引擎;

2、Smarty虽然功能丰富,但过于臃肿,执行效率低,我需要轻量级的模板引擎,它需要执行起来特别高效;

3、我需要前端和后端的技术都能够使用,因此它既需要有自己的模板标签,同时也支持原生的PHP文件作为模板; Continue reading “FastTpl – 轻量级模板解析引擎”

面向服务(SOA)与微服务(MAS)架构

微服务架构强调的第一个重点就是业务系统需要彻底的组件化和服务化,原有的单个业务系统会拆分为多个可以独立开发,设计,运行和运维的小应用。这些小应用之间通过服务完成交互和集成。每个小应用从前端web ui,到控制层,逻辑层,数据库访问,数据库都完全是独立的一套。在这里我们不用组件而用小应用这个词更加合适,每个小应用除了完成自身本身的业务功能外,重点就是还需要消费外部其它应用暴露的服务,同时自身也将自身的能力朝外部发布为服务。

Continue reading “面向服务(SOA)与微服务(MAS)架构”

Google镜像站点

来源:http://coderschool.cn/1853.html

原版页面:

https://gufen.ga/ (无广告,原guso.ml,ggso.ga,guge.ga)

https://www.aiguso.ml/ (无广告,体验良好)

https://g.qqmmgj.com/ (无广告,体验良好)

https://google.gg-g.org/ (无广告,体验良好)

https://www.xichuan.pub/ (无广告,体验良好)

https://nginx-google.arukascloud.io/ (无广告,体验良好)

https://ggso.me/    (有广告,体验良好)

https://gugeabc.xyz/ (无广告,体验良好)

https://a.ggkai.men/(有广告,体验良好)

http://google.suanfazu.com/ (整合搜索,非原版)

https://g.caisan.ml (无广告,体验良好)

https://kuaiguge.info (无广告,体验良好)

https://g.zmirrordemo.com/ (第一次访问需验证)

https://google.tse.moe/ (部分地区被qiang)

https://zh.bywiki.com (维基百科 部分地区被qiang)

http://gg2.firstguo.com/ (有弹窗广告,体验一般)

Continue reading “Google镜像站点”

Vue.js介绍

Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的。相比于Angular.js,Vue.js提供了更加简洁、更易于理解的API,使得我们能够快速地上手并使用Vue.js。

如果你之前已经习惯了用jQuery操作DOM,学习Vue.js时请先抛开手动操作DOM的思维,因为Vue.js是数据驱动的,你无需手动操作DOM。它通过一些特殊的HTML语法,将DOM和数据绑定起来。一旦你创建了绑定,DOM将和数据保持同步,每当变更了数据,DOM也会相应地更新。

当然了,在使用Vue.js时,你也可以结合其他库一起使用,比如jQuery。

本文的Demo和源代码已放到GitHub,如果您觉得本篇内容不错,请点个赞,或在GitHub上加个星星!

v-for Demo v-bind Demo Page Demo GitHub Source

Continue reading “Vue.js介绍”

解决 SSH 自动掉线

在 /etc/ssh/sshd_config 文件里添加以下两行:

重启sshd服务

ClientAliveInterval

设置一个以秒记的时长,如果超过这么长时间没有收到客户端的任何数据,sshd 将通过安全通道向客户端发送一个”alive”消息,并等候应答。
默认值 0 表示不发送”alive”消息。这个选项仅对SSH-2有效。

ClientAliveCountMax

sshd 在未收到任何客户端回应前最多允许发送多少个”alive”消息。默认值是 3 。
到达这个上限后,sshd 将强制断开连接、关闭会话。
需要注意的是,”alive”消息与 TCPKeepAlive 有很大差异。“alive”消息是通过加密连接发送的,因此不会被欺骗;而 TCPKeepAlive 却是可以被欺骗的。
如果 ClientAliveInterval 被设为 15 并且将 ClientAliveCountMax 保持为默认值, 那么无应答的客户端大约会在45秒后被强制断开。这个指令仅可以用于SSH-2协议.