开发者
天翼云开发者社区
关键词:

一种基于间接交互的心跳检测方法

本方案提出一种通过事先约定心跳间隔,然后使用改进的NTP时间校准公式,通过心跳间隔一致这个特性来实现时间的校准,完成心跳检测的方法。

一种多活数据库数据同步状态恢复的方法

本方案提出一种通过在同步数据中附加同步点位的方式,减少不必要的数据丢失。由于崩溃的是中心节点,所以应尽量避免丢失叶子节点的数据。因为跨地域同步中原本就需要提供数据来源标签,避免数据环回同步问题,所以在这个数据来源标签中再附加同步点位。一旦需要进行中心节点的切换,建立同步链路时,根据新的中心节点中记录的最新数据点位重建同步链路即可。

一种顺序消息跨集群同步的方法

顺序消息的本质,是生产消息的时候按顺序写入队列,同时消费消息的时候从队列中顺序消费。为了提升性能和并发能力,消息队列会对同一Topic的消息进行分区,并由用户提供一个分区算法来决定消息所属的分区,因此消息消费的时候只在同一个分区上有序。对于跨集群消息队列同步来说,由于消息源集群和消息目标集群是2个独立的集群,因此它们在对消息进行数据分区的时候,无法保证分区数量一致,另一方面因为环境的不同(算法中可能会引用其它外部变量)所以分区算法也无法同步,所以当一条顺序消息从一个集群同步到另一个集群的时候,会导致消息顺序的丢失。 本方案提出一种基于源分区标识对消息按目标分区状态进行重新分区的方法,实现跨集群的顺序消息同步。

一种基于统计的分布式流量控制方法

本方案提出一种基于准实时统计的方法,对当前的访问状态进行统计,并根据统计结果和请求许可消费状态下发拦截指令,达到准确的流量控制的目标。

一种提升SQL特征搜索效率的方法

SQL特征搜索是数据库产品中使用比较频繁的一个技术,在某些产品中的调用频率非常高,参考数据是一个普通SQL可能存在20个以上的关键字,而数据库流量可能达到每秒50万个请求以上。因此提升SQL特征搜索的效率是提升数据库产品质量中非常重要的一项工作,它可以直接降低性能损耗、减少内存占用、减少请求处理时间,提升产品的整体性能。 本方案提出一种提升SQL特征搜索效率的方法,通过预先对SQL进行词法分析,识别出SQL中的关键字和标识符,然后直接根据关键字和标识符的偏移量进行hash值计算,再在目标特征库中进行匹配,这样一来时间复杂度降到了最低,并且避免了大量的堆内存分配。

一种数据库负载控制的方法

针对以下几种场景:1、数据库代理层的客户端提交一些耗时长较长的数据处理请求,同时后端数据库活动连接数量超过警戒值;2、数据库代理层的客户端提交的同一类型的请求数量占比过大,同时系统处理能力达到警戒值(处理线程池空闲线程占比较小);3、数据库代理层的客户端提交的各种类型的请求数量较为均匀,但是系统处理能力达到警戒值(处理线程池空闲线程占比较小)。以上的场景都有可能导致数据库系统处理能力下降甚至失去响应。 通过对以上指标的实时计算,在数据库代理服务中针对场景1进行前端拦截+后端按耗时按比例进行销毁以保持一个数据库性能低消耗的水平;针对场景2直接拦截新增的对应类型的请求以保持同类型请求数量占比保持在警戒线以内,直到实时计算结果正常为止,避免资源耗尽;针对场景3拦截新增的耗时在平均水平以上的类型请求,直到实时统计结果正常为止,首先保证资源占用较少的请求的可用性,以保证数据库的处理能力

一种异地多活应用系统架构

本方案提出一种通过混搭同城双活和异地多活的架构来解决上述问题,在处理本地机房级故障时使用同城双活的方式去恢复业务,而对于地域级故障时则使用异地多活的方式去恢复业务,对于异地双活情况概括描述为2地4中心架构,对于异地多活情况则为N地2N中心架构。

一种数据库连接动态调配的方法

本方案在代理服务中为每个节点的每一种状态创建一个连接池,在每次请求之前,系统都会根据请求的信息和连接的状态选择一个合适的连接池,并从中获取一个连接进行操作。这样,用户拿到连接后,不需要进行状态同步,直接就可以复用连接进行操作,一个代理服务只要创建少量的数据库连接,即可支持大量的客户端请求。

一种提升SQL改写效率的方法

SQL改写是数据库产品中使用比较频繁的一个技术,在大多数产品中的调用频率也非常高,因此提升SQL改写的效率是提升数据库产品质量中非常重要的一项工作,它可以直接降低性能损耗、减少内存占用、减少请求处理时间,提升产品的整体性能。 本方案以提高SQL改写性能为目标,从缓存方向出发,考虑如何提高缓存命中率,以减少不必要的性能损耗。考虑到参数化SQL在应用中的使用频率,使用其来作为缓存key是再适合不过了。因此处理过程中预先对SQL进行词法分析,分解为参数化SQL和参数列表,并以参数化SQL为key对抽象语法树进行缓存。如果缓存未命中,则对参数化SQL依次进行词法分析、语法分析、改写处理,最后在改写完毕之后,再结合先前记录的参数生成目标SQL,即完成完整的SQL改写过程。

一种通过延迟事务提升数据库性能的方法

在用户通过代理层使用数据库的时候,如果提交了一条只读查询,那么代理层可以从连接池中获取一个连接、查询、获取数据、然后归还连接。如果在只读查询之前启动了事务,那么在用户提交或者回滚事务之前,该连接不能归还到连接池,大大增加了数据库连接的占用时间。而在ReadCommitted事务隔离级别中,只读查询语句的查询结果是不可重复的,这时如果事务中没有其它写操作,那么是否启动事务,对于用户实际使用是没有影响的,这样则产生了不必要的事务,增加了数据库连接占用的时间,降低了数据库连接的利用率。 本发明提出一种通过延迟启动事务的方法,减少不必要的连接占用时长,提升数据库连接利用率,进而提升数据库的整体性能。

共 15 条
  • 1
  • 2
前往
点击加载更多...

暂未填写公司和职称

暂未填写个人简介

暂未填写技能专长

暂未填写毕业院校和专业

共发表过 15 篇文章

文章获得 5 次赞同

文章被浏览 226 次

获得 2 人关注

有目共赏
好评如潮
初出茅庐
共发表过 15 篇文章
文章获得 5 次赞同
获得 2 人关注
文章被浏览 226 次
获得“有目共赏”荣誉
全部文章(0)
关键词:

一种基于间接交互的心跳检测方法

本方案提出一种通过事先约定心跳间隔,然后使用改进的NTP时间校准公式,通过心跳间隔一致这个特性来实现时间的校准,完成心跳检测的方法。

一种多活数据库数据同步状态恢复的方法

本方案提出一种通过在同步数据中附加同步点位的方式,减少不必要的数据丢失。由于崩溃的是中心节点,所以应尽量避免丢失叶子节点的数据。因为跨地域同步中原本就需要提供数据来源标签,避免数据环回同步问题,所以在这个数据来源标签中再附加同步点位。一旦需要进行中心节点的切换,建立同步链路时,根据新的中心节点中记录的最新数据点位重建同步链路即可。

一种顺序消息跨集群同步的方法

顺序消息的本质,是生产消息的时候按顺序写入队列,同时消费消息的时候从队列中顺序消费。为了提升性能和并发能力,消息队列会对同一Topic的消息进行分区,并由用户提供一个分区算法来决定消息所属的分区,因此消息消费的时候只在同一个分区上有序。对于跨集群消息队列同步来说,由于消息源集群和消息目标集群是2个独立的集群,因此它们在对消息进行数据分区的时候,无法保证分区数量一致,另一方面因为环境的不同(算法中可能会引用其它外部变量)所以分区算法也无法同步,所以当一条顺序消息从一个集群同步到另一个集群的时候,会导致消息顺序的丢失。 本方案提出一种基于源分区标识对消息按目标分区状态进行重新分区的方法,实现跨集群的顺序消息同步。

一种基于统计的分布式流量控制方法

本方案提出一种基于准实时统计的方法,对当前的访问状态进行统计,并根据统计结果和请求许可消费状态下发拦截指令,达到准确的流量控制的目标。

一种提升SQL特征搜索效率的方法

SQL特征搜索是数据库产品中使用比较频繁的一个技术,在某些产品中的调用频率非常高,参考数据是一个普通SQL可能存在20个以上的关键字,而数据库流量可能达到每秒50万个请求以上。因此提升SQL特征搜索的效率是提升数据库产品质量中非常重要的一项工作,它可以直接降低性能损耗、减少内存占用、减少请求处理时间,提升产品的整体性能。 本方案提出一种提升SQL特征搜索效率的方法,通过预先对SQL进行词法分析,识别出SQL中的关键字和标识符,然后直接根据关键字和标识符的偏移量进行hash值计算,再在目标特征库中进行匹配,这样一来时间复杂度降到了最低,并且避免了大量的堆内存分配。

一种数据库负载控制的方法

针对以下几种场景:1、数据库代理层的客户端提交一些耗时长较长的数据处理请求,同时后端数据库活动连接数量超过警戒值;2、数据库代理层的客户端提交的同一类型的请求数量占比过大,同时系统处理能力达到警戒值(处理线程池空闲线程占比较小);3、数据库代理层的客户端提交的各种类型的请求数量较为均匀,但是系统处理能力达到警戒值(处理线程池空闲线程占比较小)。以上的场景都有可能导致数据库系统处理能力下降甚至失去响应。 通过对以上指标的实时计算,在数据库代理服务中针对场景1进行前端拦截+后端按耗时按比例进行销毁以保持一个数据库性能低消耗的水平;针对场景2直接拦截新增的对应类型的请求以保持同类型请求数量占比保持在警戒线以内,直到实时计算结果正常为止,避免资源耗尽;针对场景3拦截新增的耗时在平均水平以上的类型请求,直到实时统计结果正常为止,首先保证资源占用较少的请求的可用性,以保证数据库的处理能力

一种异地多活应用系统架构

本方案提出一种通过混搭同城双活和异地多活的架构来解决上述问题,在处理本地机房级故障时使用同城双活的方式去恢复业务,而对于地域级故障时则使用异地多活的方式去恢复业务,对于异地双活情况概括描述为2地4中心架构,对于异地多活情况则为N地2N中心架构。

一种数据库连接动态调配的方法

本方案在代理服务中为每个节点的每一种状态创建一个连接池,在每次请求之前,系统都会根据请求的信息和连接的状态选择一个合适的连接池,并从中获取一个连接进行操作。这样,用户拿到连接后,不需要进行状态同步,直接就可以复用连接进行操作,一个代理服务只要创建少量的数据库连接,即可支持大量的客户端请求。

一种提升SQL改写效率的方法

SQL改写是数据库产品中使用比较频繁的一个技术,在大多数产品中的调用频率也非常高,因此提升SQL改写的效率是提升数据库产品质量中非常重要的一项工作,它可以直接降低性能损耗、减少内存占用、减少请求处理时间,提升产品的整体性能。 本方案以提高SQL改写性能为目标,从缓存方向出发,考虑如何提高缓存命中率,以减少不必要的性能损耗。考虑到参数化SQL在应用中的使用频率,使用其来作为缓存key是再适合不过了。因此处理过程中预先对SQL进行词法分析,分解为参数化SQL和参数列表,并以参数化SQL为key对抽象语法树进行缓存。如果缓存未命中,则对参数化SQL依次进行词法分析、语法分析、改写处理,最后在改写完毕之后,再结合先前记录的参数生成目标SQL,即完成完整的SQL改写过程。

一种通过延迟事务提升数据库性能的方法

在用户通过代理层使用数据库的时候,如果提交了一条只读查询,那么代理层可以从连接池中获取一个连接、查询、获取数据、然后归还连接。如果在只读查询之前启动了事务,那么在用户提交或者回滚事务之前,该连接不能归还到连接池,大大增加了数据库连接的占用时间。而在ReadCommitted事务隔离级别中,只读查询语句的查询结果是不可重复的,这时如果事务中没有其它写操作,那么是否启动事务,对于用户实际使用是没有影响的,这样则产生了不必要的事务,增加了数据库连接占用的时间,降低了数据库连接的利用率。 本发明提出一种通过延迟启动事务的方法,减少不必要的连接占用时长,提升数据库连接利用率,进而提升数据库的整体性能。

共 15 条
  • 1
  • 2
前往
点击加载更多...