前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >亿级数据毫秒级响应?

亿级数据毫秒级响应?

作者头像
科技新语
发布于 2023-06-06 09:05:55
发布于 2023-06-06 09:05:55
32500
代码可运行
举报
运行总次数:0
代码可运行

作为一名深陷在增删改查泥潭中练习时长三年的夹娃练习生,偶尔会因为没有开发任务不知道周报写什么而苦恼。

正愁这周写啥呢,组长过来交代了个跟进第三方公司性能测试报告的工作,我一寻思这活不最好干了吗,正愁不知道周报咋写呢,又能提现工作量又不累,本以为轻松拿捏的结果差点让老弟翻车。

由于我们组主要做数仓管理这块的业务,这次的性能测试上有一些数据服务并发相关的指标需要后端配合测试,让一天搞定,我寻思半天搞完还能去掘金狠狠的摸半天鱼,岂不美哉。拿到测试指标之后直接手心出汗了。

啥意思,亿级数据查询毫秒级响应还要100并发持续5分钟,家人们谁懂啊。。。关键我们负责的业务是tob的场景啊,哪有这么高并发。数据查询还在旧的python服务里,给提供的测试环境全是单机服务。

加缓存

既然是做性能测试那管数据对不对什么事,给你返回不就行了,在服务加个临时缓存,先把数据查询的耗时降下来再考虑其他的。

身为一个Javaboy,写python的代码10行代码得5行问chatGPT,好在是用redis加上了缓存。用jmeter浅试一下,

效果上看加上缓存查询速度的确变快了,但是平均耗时离预期还是差距较大,最大耗时要接近5s多,看来只加缓存是扛不住,耗时应该是服务扛不住并发,线程阻塞了。。。

nginx横向扩展

不得不吐槽下,服务真垃圾呐,时间紧任务重,赶紧想办法,直接把问题当成面试题,脑袋里直接开始翻阅八股文,什么高内聚、低耦合、高吞吐、月薪3000包吃住,第一个冲出来的想法就是扩展服务做负载。

怎么负载呢,部署三份数据查询服务,nginx做upstream负载,效果应该顶得住,开搞开搞。结果python代码不太熟,多进程的方式启动torando就是报错。整的我满头大汗,下午就得给人提供接口了这咋整啊,不行问问组长去吧。

结果组长直接说浪费那时间干啥啊,反正都是做做样子,在nginx里写个lua脚本,读一下本地文件返回数据不就可以了,第三方又不会管你咋实现的...都得都懂。

lua脚本

我仔细一想也是,整那么紧张干啥,先实现了再说,由于环境里的nginx已经安装了lua插件可以直接使用。

先提前把请求的返回数据保存到txt里,然后用lua实现一个读取本地文件的方法,请求打过来之后判断body里的数据是否是指定的数据id,如果是直接读取数据返回。

nginx和lua的性能别说100并发了1w并发也轻松拿捏。

lua读取本地文件内容

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lua复制代码    function getFile(file_name)
        local f = assert(io.open(file_name, 'r'))
        local string = f:read("*all")
        f:close()
        return string
    end

找到nginx配置对应的请求url,添加access_by_lua_block代码块,将getFile方法声明在这里,并且写一下匹配逻辑,如果body中包含file_id,直接调用getFile方法返回,不包含还是走正常的查询逻辑。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
php复制代码
    location = /api/data/preview {
            set $upstream 'fe_full_long';
            access_by_lua_block {
                    function getFile(file_name)
                            local f = assert(io.open(file_name, 'r'))
                            local string = f:read("*all")
                            f:close()
                            return string
                    end
                    ngx.req.read_body()
                    local data = ngx.req.get_body_data()
                    if ngx.re.match(ngx.var.request_body, "file_id") then
                            ngx.say(getFile(string.format("/nginx/conf/conf.d/a.txt", f)));
                            return
                    end
            }
            proxy_pass http://$upstream;
            proxy_set_header Host $host:$server_port;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

保存nginx -t,先检查后重启,防止手心冒汗,简单测了一下性能直接起飞,直接提供给第三方测试了。

亿级数据毫秒级响应?

晚上下班前发过来了初版的测试报告,组长一看,直接给我阅起兵来了,"你这也太快了,搂着点啊,管家指标还一样,快改改"。

我一看好家伙,亿级数据28毫米返回,雀氏有点尴尬了。。。。赶紧改改。在lua脚本里sleep随机几百毫秒就真实了。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
lua复制代码
-- 定义睡眠函数  
local function sleep(ms)  
ngx.sleep(ms / 1000)  
end  
  
-- 随机睡眠一段时间(1毫秒到100毫秒之间)  
math.randomseed(ngx.now())  
local sleepTime = math.random(1, 100)  
sleep(sleepTime)

重启下nginx重测,结果很合理,必须得在周报浓墨重彩一波。。。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系转载,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
号外:数据万象数字水印技术通过ChinaDRM评估
概述 近日,数据万象视频数字水印技术通过数字媒体内容保护技术研究国家广播电视总局重点实验室(ChinaDRMLab)的DRM(Digital Rights Management,数字版权管理)技术与产品评估,用户可直接在COS对象存储上使用数字水印服务。数字水印技术作为一项重要的安全服务能力,主要用于知识产权保护中确权与侵权溯源,具有广泛的应用场景与巨大的商业价值。 数据万象视频数字水印介绍 数字水印可将标识信息直接嵌入数字载体(多媒体等)中,不影响原载体使用价值,不被用户感知,只有生产方通过专门的检测器
云存储
2022/04/18
1.3K0
号外:数据万象数字水印技术通过ChinaDRM评估
智能存储|版权保护解决方案
随着网络基础设施的完善,当今各大平台的图片、视频内容正迎来爆发式增长。创作者、平台在享受媒体内容带来的流量红利的同时,也面临着内容被盗用、知识产权受到侵犯的风险。针对以上痛点,数据万象CI提供了文档水印、图片和视频的明水印、盲水印,以及视频DNA等高级功能,为各种业务场景提供接入方便、高性价比的一站式版权保护解决方案。
云存储
2022/03/02
1.8K0
智能存储|版权保护解决方案
《数据万象带你玩转视图场景》第二期:数字水印大揭秘
“ 引言:自1983年,国际消费者联盟组织确定每年的3月15日为“国际消费者权益日”,转眼今年已经是第38个消费者权益日了, 315不只是保护消费者的合法权益,同时也不断推进保护企业甚至个人知识产权,随着AI技术进一步发展、互联网内容监管力度加强、下游应用场景进一步丰富,行业市场规模将迎来大规模持续增长。” 版权保护现状 中国版权保护中心提到“新时代新征程,版权是文化的内核,创意的化身“,2019年我国版权产业行业增加值达7.32万亿元,占国内生产总值(GDP)的比重为7.39%,可见版权保护的重要性。随着
云存储
2023/03/29
4850
《数据万象带你玩转视图场景》第二期:数字水印大揭秘
数据万象盲水印 - AIGC的“保护伞”
近期AIGC的爆火让人们觉得AI似乎无所不能,打工人们已然将 AI 发展成了工作的一大助手,但同样也伴随着很多AI的受害者。一些专家、画家、学者们发现自己的“作品风格”正在被 AI “抄袭剽窃”。
云存储
2024/05/11
5720
数据万象盲水印 - AIGC的“保护伞”
提取盲水印
按照惯例,官网文档: https://cloud.tencent.com/document/product/460/19017#.E6.8F.90.E5.8F.96.E7.9B.B2.E6.B0.B4.E5.8D.B0 注意点: 1、put的域名格式为pic.ap-beijing格式 2、put的地址url后图片名字为cos上不存在的图片名 3、fileid中的图片名和put不同,fileid代表要把提取出的水印图存储在哪里。 4、body为要添加盲水印的图片 ---- 话不多说,举例说明: 一、首先获
杜志强
2019/04/23
3.9K1
提取盲水印
99.999999%人看不出来的水印,专治各种盗图
一个专业摄影师辛苦拍摄的照片,因为没打水印,被别人大肆盗用牟利。就算加了水印,也会被巧妙地裁切或者P掉。
云存储
2020/10/14
1.7K0
99.999999%人看不出来的水印,专治各种盗图
AIGC来了,你的版权还安全吗?
引言 |人工智能生成内容(AIGC)是热度居高不下,据Gartner预计,到2025年,AIGC将占全球所有生成数据的10%,以ChatGPT、Stable Diffusion为代表的现象级应用受到强势追捧,AIGC毫无疑问是强有力的生产工具,那如果人类作为创作者被工具抄袭时能够有效反击吗?无法确权和版权争议将是AIGC必将面对的格林克里奇窘境。 ChatGPT、Stable Diffusion、Midjourney 一个一个们带着脑子向我们走来了,这些全世界范围内出圈的新晋顶流,写代码、做高数、写论文、攒
云存储
2023/03/29
9220
AIGC来了,你的版权还安全吗?
​探秘 Web 水印技术
作者:fransli,腾讯 PCG 前端开发工程师 Web 水印技术在信息安全和版权保护等领域有着广泛的应用,对防止信息泄露或知识产品被侵犯有重要意义。水印根据可见性可分为可见水印和不可见水印(盲水印),本文将分别予以介绍,带你探秘 web 水印技术。 可见水印 最简单的水印 一种比较常见的简单水印场景是给文章、表格加上 logo 水印,用以申明版权。 这里想要的效果就是一个浅浅的 logo 平铺展示。实现起来也比较简单,只需制作一个半透明的 logo 图片,设为文章或者表格的背景图片即可。仅需一行 CS
腾讯技术工程官方号
2022/09/14
2.5K0
​探秘 Web 水印技术
智能存储 | 视频 DNA ,独一无二的安全标识
以视频为代表的富媒体信息毫无疑问是如今的流量霸主,伴随网络基础设施日益完善,移动通信技术快速更新迭代,各大视频平台与视频服务类 APP 的用户量与活跃度也到达空前的高度。因视频衍生的业务快速发展与大量的需求,催生更多视频新业态推动视频智能新技术迸发的同时,视频行业也迎来强监管。 21年国务院印发《知识产权强国建设纲要》,同年《网络短视频内容审核标准细则》中规定“短视频不得未经授权自行剪切、改编电影、电视剧、网络影视剧等各类视听节目及片段”,《“十四五”数字信息发展规划》中体现出国家对未来将持续构建更完善的版
云存储
2022/02/17
7660
数据万象盲水印功能介绍
盲水印功能是腾讯云万象优图提供的全新水印模式。通过该功能,您可将水印图以不可见的形式添加到原图信息中,并不会对原图质量产生太大影响。在图片被盗取后,您可对疑似被盗取的资源进行盲水印提取,验证图片归属。
用户4693941
2019/02/22
3.3K0
数据万象应用书塾直播第一期回顾
腾讯云存储团队高级产品经理李沐霖,主要跟我们分享了数据万象的发展历程,以及它与对象存储有着怎样的联系,以及如何通过对象存储快速上手数据万象。
云存储
2021/12/08
4640
腾讯云【数据万象】使用指南——基础图片处理(上)
腾讯云数据万象(Cloud Infinite,CI)能够实现对云上的图片、视频、音频、文档等数据进行处理,为客户提供专业一体化的数据处理解决方案,涵盖图片处理、内容审核、内容识别、媒体处理、文档服务等功能。
腾讯云数据万象
2020/08/13
4.3K5
数据万象技术演进之路
Dale(1969)的“经验之塔”指出人们获取信息70%以上是通过视觉途径,在互联网时代也不例外。在当今图片音视频服务等已成为一个互联网应用中占比很大的部分,对图片和音视频等数据的处理能力也相应变成企业和开发者的一项基本技能。
jimmy老师
2023/03/06
1.9K0
数据万象技术演进之路
云游 | 假装在故宫看雪
北京城下雪了,迎来的今冬第一场降雪,紫禁城的红墙玻璃瓦装配上了冬季皮肤。 今天的朋友圈开始上演一年一度的赏雪大片,他们呼唤雀跃,而小编在温暖的南方望眼欲穿,捶胸顿足。 梅花傲枝、宫墙檐角、铜狮脊兽、素裹银装这些都是他们的,我什么都没有...... 短暂的悲伤像苹果砸到我的天灵盖,任督二脉被打通,思如泉涌。 是的,小编可是做腾讯云的女人,拥有云上百般武器的我,不能在现场,也能假装在现场,今日份朋友圈快乐我也要分你一半。 跟着小编一起来动动手,快乐也分你一份。 体验步骤 1. 打开对象存储 COS 数据
云存储
2021/11/09
6340
数据万象盲水印添加和提取
官方文档:https://cloud.tencent.com/document/product/460/19017#.E6.8F.90.E5.8F.96.E7.9B.B2.E6.B0.B4.E5.8D.B0
爆龙战士
2020/12/02
1.6K0
数据万象书塾直播第五期火热报名中 | 直播间好礼享不停
数据万象 CI 是依托腾讯云对象存储的数据处理平台,它提供了大大小小上百种的数据处理和数据分析能力。如何通过数据万象为您的业务数据赋能并盘活您的云上数据,我们本期直播将为您解答。 数据万象应用书塾是腾讯云存储知识小课堂的一个系列,是一个围绕数据万象(Cloud Infinite,CI)的产品特性、应用场景、客户案例等内容展开的直播交流平台。 数据万象书塾直播第五期我们邀请到了腾讯云存储高级产品经理“黄成昊”和专家研发工程师“王淼”,介绍数据万象图片处理篇 。 分享内容 本次分享主要介绍如何将对象存储 CO
云存储
2022/02/17
5580
技术解码 | 版权保护的下一步——数字水印
数字水印作为一种新兴的技术方案,在版权保护和溯源中具有广阔的应用前景。本周的技术解码就由狄冲老师为大家解密图像和视频数字水印的相关内容
腾讯云音视频
2020/07/17
5.7K0
技术解码 | 版权保护的下一步——数字水印
数据万象应用书塾直播第五期回顾
上周举行的腾讯云存储知识小课堂——数据万象应用书塾直播第五期已经圆满结束。 腾讯云存储团队高级产品经理“黄成昊”和专家研发工程师“王淼”,跟我们分享了如何将对象存储COS与数据万象的图片处理功能结合使用,为您的业务降本增效。数据万象的图片处理服务支持灵活的图像编辑,例如图片旋转、裁剪、转码、缩放等,并且提供 Guetzli 压缩、TPG 转码、HEIF 转码等图片瘦身解决方案,图片或文字水印、独有盲水印等版权保护解决方案,满足多种业务场景下的图片需求。 数据万象 CI 是依托腾讯云对象存储的数据处理平台,它
云存储
2022/03/03
4500
零门槛玩转数据万象 -【智能工具箱】
导语 | 【智能工具箱】将数据万象所提供的各项能力,以方便快捷的工具形态呈现在控制台上,让您无需编码,零门槛地体验各种处理能力。 前言 数据万象(Cloud Infinite,CI)能够实现对云上的图片、音频、视频、文档等数据的处理,为客户提供专业一体化的数据处理解决方案,涵盖图片处理、内容审核、媒体处理、AI 识别、文档预览等功能,满足客户多种业务场景的需求。 用户可以通过CI/COS控制台,进入对应的存储桶,按照引导进行任务配置,并且在存储桶中拿到处理后的产物,如下图所示: 开发者也可以通
云存储
2022/08/26
7240
零门槛玩转数据万象 -【智能工具箱】
为什么别人的 WordPress 网站那么快?
越来越多的人使用 WordPress 来搭建网站了,W3techs 最新数据统计显示[1],截止到2021年11月3日,全网有43.0%的网站都是基于WordPress 搭建的。那么问题来了,为什么别人用 WordPress 搭建的网站,又快、又稳定、又好用呢?下面两招教你轻松优化网站速度~ 推荐一个提速减负的宝藏插件:WordPress COS 插件,前往链接(https://wordpress.org/plugins/tencentcloud-cos/)点击直接下载安装,免费使用,两招优化你
云存储
2021/12/10
9440
相关推荐
号外:数据万象数字水印技术通过ChinaDRM评估
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验