文档章节

pgoneproxy 增加tps的功能

harris2016
 harris2016
发布于 2016/06/14 17:46
字数 693
阅读 85
收藏 0
点赞 0
评论 0

  原来pgoneproxy在处理任务时,无法体现在一段时间内处理任务的数量,故增加了tps的功能。pgoneproxy的tps分成了两部分,一部分是简单查询,另外一部分是事务查询。效果如下所示:

    

  上图中simpleQ tps代表的是简单查询的性能。TrxQ tps代表的是事务查询的性能。从上图中可以看到172.30.12.8这个客户在进行简单查询,而192.168.7.183这个客户在进行事务操作。当然一个客户也可以在一段时间内既进行简单查询也进行事务操作,这时会在simpleQ tps和TrxQ tps这两列都显示出来。下面来说说这两个值的计算方式。

    当同一个客户 (比如:172.30.12.8)连接到pgoneproxy时,如果tps还没有开始计时,则开始进行tps的开始计时。当有简单查询时,则在简单查询的计时器上面增加计数。当有事务查询时(以begin或者start translation作为开始的界限,commit或者rollback作为结束的界限)则在事务计数器上面计数。当完成查询时,则进行tps的结束计时。(及每个客户进行一次tps开始计时,n次tps结束计时)。当需要展示tps时,则通过计数器的值除以时间长度即可。

     下面几种情况的tps计时和计数情况:

1. 同一个客户连接后执行一些操作后,断开再进行连接同时进行操作

    tps的计时长度是客户第一次登陆时作为tps的开始时间,最后一次操作完成时做为tps的结束时间。计数是两次操作的总数。

2. 客户连接到pgoneproxy进行了一次查询,一直没有端开

    tps的计时长度是客户登陆时作为tps的开始时间,查询完成的时间作为tps的结束时间。查询完成后的时间不记录到tps的时常中。

3. 客户连接到pgoneproxy进行了一些查询操作后,没有端开等待了很长时间后,又进行了一些查询操作。

    tps的计时长度是客户连接到pgoneproxy时的时间为tps的开始时间,最后一个查询操作完成的时间作为tps的结束时间。其中没有断开等待的时间也记录到tps的时常中。

 

    如果为了查看目前的tps情况,请先通过reset功能,把目前统计的数据清零,重新进行tps统计即可。

 

© 著作权归作者所有

共有 人打赏支持
harris2016
粉丝 10
博文 52
码字总数 30058
作品 0
杭州
程序员
postgresql 数据库 中间件 pgoneproxy

一直在开发postgresql的中间件pgoneproxy,最近增加了pgoneproxy中间件监控功能的界面。通过我们的监控界面可以看到当前连接执行了哪些sql语句,操作了哪些表,事务语句,并且pgoneproxy所在主...

harris2016
2016/06/03
683
7
pgoneproxy在linux 2.6.32-279 与 2.6.32-573版本上面运行的差异

在Linux内核版本2.6.32-279上面运行pgoneproxy时,当有200个客户端的并发时,会出现mutexspinon_owner函数占比很高的情况。而在2.6.32-573内核版本上面却看不到此函数的出现。说明这两个版本...

harris2016
2016/06/27
92
0
pgoneproxy的VIP机制

在向外提供服务时,通常会使用虚拟IP(VIP),增加服务的可靠性。在pgoneproxy中同样提供了vip功能,使用pgoneproxy后就可以省略其他提供VIP的软件(比如keepalive)。 1. vip 的使用 在pgo...

harris2016
2016/07/15
11
0
pgoneproxy 主机监控信息的解释

pgoneproxy提供了监控主机性能的功能,本文主要介绍下展示出来的信息的含义以及来源,方便了解pgoneproxy的原理。 下面是pgoneproxy展示的主机信息的界面: 在含义主机信息显示的界面,在加载...

harris2016
2016/06/03
69
0
liquibase 通过pgoneproxy来管理数据库版本

最近有客户反应liquibase通过pgoneproxy来管理数据库版本时,发现不能建立数据库表。这让我有点难理解,于是我直接下载了一个liquibase来测试,发现是pgoneproxy的权限管理的问题。现在说说测...

harris2016
2016/06/20
99
0
pgoneproxy 通过vip实现24小时不间断服务

pgoneproxy提供了vip功能来保证能够不间断的对外部提供服务。下面来讲解下pgoneproxy中VIP功能的使用方法。 环境: pgoneproxy主机:172.30.12.10 172.30.12.11 pgoneproxy业务主机:172.30....

harris2016
2016/06/17
81
0
postgresql中间件pgoneproxy支持冷热数据分离查询

在某些应用场景中,随着时间的流逝,历史数据很少被访问,主要是访问新产生的数据。这种情况下会把很少访问的数据存储到IO比较慢的存储设备上,而把长期查询的数据存放到IO比较快的存储设备上...

harris2016
2016/07/18
177
0
postgresql 使用jdbc连接过程的分析

本人在开发pgoneproxy的过程中,需要实现前端登录到pgoneproxy,pgoneproxy针对前端进行校验,校验通过后才能使用连接池中的连接,而连接池中的连接是pgoneproxy通过发送数据包的方式进行的连...

harris2016
2016/06/16
166
0
pgoneproxy使用tcmalloc来管理内存

pgoneproxy本身是使用glib来进行操作的,故有部分的内存管理功能。glib中提供了gslicealloc,gslicealloc0,gslicenew, gslicenew0, gslicefree1,gslicefree来进行内存的管理。通过这些函数来申...

harris2016
2016/06/27
53
0
postgresql 数据库中间件 pgoneproxy 实现冷热数据分离查询(二)

在前一篇《postgresql中间件pgoneproxy支持冷热数据分离查询》中讲解了按照id来进行数据的分离,针对时间至少稍微的提了一下。本篇这专门针对时间来进行讲解和测试下。 在我的数据库中新建了...

harris2016
2016/07/19
178
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

数据结构与算法2

一个数组的例子,实现查找,显示和删除的功能。 public class array {public static void main(String[] args){long[] arr;arr = new long[100];int nElems = 0;int j;...

沉迷于编程的小菜菜
11分钟前
0
0
Python3 基于 requests 批量下载图片

Python3 基于 requests 批量下载图片 import requestsheaders = {'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8','Accept-Encod......

leeyi
11分钟前
0
0
Sparkstreaming and Kafka

简介 Kafka 0.10的Spark Streaming集成设计与0.8 Direct Stream方法类似。 它提供了简单的并行性,Kafka分区和Spark分区之间的1:1对应关系,以及对偏移量和元数据的访问。 但是,由于较新的...

刺猬一号
16分钟前
0
0
java获取当前时间所在一周的周一和周日日期

/** * 当前时间所在一周的周一和周日时间 * @param time 当前时间 * @return */ public static Map getWeekDate(String time) { Map map = new HashedMap(); SimpleDateFormat sdf = new Si......

小弱鸡
43分钟前
0
0
Redis数据的导出和导入(dump和load方式)

网上有些文章已经不再适用,本人也是踩了些坑,在此记录下。 迁移redis数据一般有如下3种方式: 第三方工具redis-dump,redis-load aof机制,需要开启aof功能 rdb存储机制 这里介绍第一种方式...

iplusx
48分钟前
1
0
ElasticSearch 高亮显示大文档搜索结果

2016年12月,我们开始研究Ambar——一个文档搜索系统。Ambar使用ElasticSearch作为核心搜索引擎。 在Ambar开发的过程中,我们处理了很多与ES相关的问题,我们想分享我们得到的宝贵经验。让我...

九州暮云
今天
1
0
Python 使用 pywifi 模块 破解wifi密码

git https://github.com/awkman/pywifi 常见常量 from pywifi import const# Define interface status.IFACE_DISCONNECTED = 0IFACE_SCANNING = 1IFACE_INACTIVE = 2IFACE_CONNEC......

阿豪boy
今天
1
0
phpstorm使用Iedis

phpstorm的redis插件Iedis是真好用 看了网上挺多的文章,但是由于我系统还是ubuntu,就有点尴尬了,现在破解之后,留个笔记,即使自己之后有需要也可以很快翻阅 先下载资源 资源下载 zip压缩...

贤郎--均灵
今天
0
0
第三章 spring-bean之FactoryBeanRegistrySupport(4)

前言 从FactoryBeanRegistrySupport类的名字可以看出FactoryBeanRegistrySupport负责FactoryBean的注册与支持。如果想知道FactoryBean相关的资料,请阅读spring-bean中关于FactoryBean的解读...

鸟菜啊
今天
0
0
CentOS “Destination Host Unreachable”问题解决办法

挑战极速安装CentOS时遇到局域网主机不能通信的情况: [root@zjd network-scripts]# ping 8.8.8.8PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.64 bytes from 8.8.8.8: icmp_seq=1 ttl=......

wffger
今天
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部