租房项目之并发缺失数据问题

前奏:本项目是一个基于django的租房信息获取项目。本次博客牵扯到两个版本,集中式分布以及分布式部署(两个版本的ui不同,集中式用的是老版ui,分布式使用的是新版ui);

项目链接:https://gitee.com/junmoxuao/tenancy.git

名词解释:集中式分布版本->将爬虫部分和处理用户请求的部分集中分布到同一个项目,虽然部署起来简单,但是存在一个问题(可能有隐藏问题未发现,但是这个问题是非常影响用户体验),就是如果多个用户同时去获取同一页的信息,则会出现信息缺失的问题。

                  分布式部署->将爬虫部分和处理用户请求的部分分布到多个服务器上,一来可以减少单点服务器的负载,二来可以在一定程度上解决并发问题。

问题详述:

        先来看集集中式单用户获取的内容,如以下截图:

        最开始的时候无查询信息:

        获取某一页的信息:

        下载查看信息

        我们看到有30条信息,这也符合租房信息网站上的一页30条信息

        接下来模拟多用户并发:使用jmeter模拟多用户并发请求

        设置并发3个线程

        设置http请求

        运行后结果

        下载对应三次文件

        打开文件查看获取信息的条数

        

        我们可以看到,每一个用户获取到的信息都是不全的(均未达到30条,信息损失率分别为20%,26%,23%)

        接下来是分布式测试,过程与上述无异

        单用户测试

        多用户并发测试

        三个文件内容如下

        测试结果,无论多用户还是单用户,用户获取信息的损失率均为0%。

        测试完毕 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/852465.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux2-系统自有服务防火墙与计划任务

一、什么是防火墙 防火墙主要用于防范网络攻击,防火墙一般分为软件防火墙、硬件防火墙 1、Windows中的防护墙设置 2、防火墙的作用 3、Linux中的防火墙分类 Centos6、Centos6>防火墙>iptables防火墙 防火墙系统管理工具 Centos7>防火墙>firewalld防火…

基于STM32的简易智能家居设计(嘉立创支持)

一、项目功能概述 1、OLED显示温湿度、空气质量,并可以设置报警阈值 2、设置4个继电器开关,分别控制灯、空调、开关、风扇 3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上 4、OLED实时显示&#…

Github 2024-06-14 开源项目日报Top10

根据Github Trendings的统计,今日(2024-06-14统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量JavaScript项目2Python项目2非开发语言项目2TypeScript项目1Dart项目1Rust项目1Lua项目1Java项目1Jupyter Notebook项目1从零开始构建你喜爱的技…

大模型Prompt-Tuning技术入门

Prompt-Tuning方法 1 NLP任务四种范式 目前学术界一般将NLP任务的发展分为四个阶段,即NLP四范式: 第一范式:基于「传统机器学习模型」的范式,如TF-IDF特征朴素贝叶斯等机器算法;第二范式:基于「深度学习模…

数据加密在等保2.0中扮演什么角色?

等保2.0针对云计算安全提出了一系列具体措施,旨在确保云环境下的数据和系统的安全。以下是一些关键的安全措施: 1. 基础设施位置:要求云服务商明确数据中心和灾备中心的位置,确保地理位置的安全,避免自然灾害和人为破…

解决CentOS的yum命令失效的问题

近日笔者对一台装有 CentOS 7.9 系统的服务器反复折腾,玩到最后发现 yum 命令用不了,总是报下面的错误信息: There was a problem importing one of the Python modules required to run yum. The error leading to this problem was:/usr/l…

每天一个数据分析题(三百六十六)- 5WHY分析法

根本原因分析中的5WHY分析法是从下列哪几个层面实施的? A. 制造角度 B. 检验角度 C. 体系角度 D. 以上都是 数据分析认证考试介绍:点击进入 题目来源于CDA模拟题库 点击此处获取答案

java功能实现在某个时间范围之内输出true,不在某个范围输出false,时间精确到分钟

import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class DateTimeChecker { private static final Logger log LoggerFactory.getLogger(DateTimeChecker.class); /** * 检查当前时间是否在指定的小时和分钟范围内。 * * param startHour 开…

主动元数据平台详解(下):BIG 十一问,详解定位、对接、血缘保鲜等问题

在上一篇文章中,我们围绕“算子级血缘解析技术”,全面介绍了 Aloudata BIG 主动元数据平台的核心能力及优势,帮助企业加速实现数据管理的“自治理”,推动企业的数智化运营进程。 本篇文章,我们盘点和整理了十一个同客户…

Vitis HLS 学习笔记--Vitis Accelerated Libraries介绍

1. 简介 Vitis Accelerated Libraries,包含很多现成的库,这些库都是开源的,也就是说代码是公开的,而且已经优化过,可以让程序运行得更快。你不需要改变太多你的代码,就能让你的程序速度提升。 这些库有很…

ROS 自动驾驶多点巡航

ROS 自动驾驶多点巡航: 1、首先创建工作空间: 基于我们的artca_ws; 2、创建功能包: 进入src目录,输入命令: catkin_create_pkg point_pkg std_msgs rospy roscpptest_pkg 为功能包名,后面两个是依赖&a…

H5的3D展示有可能代替PC传统3D展示么?

H5的3D展示技术正在快速发展,并且随着5G网络的普及和手机硬件性能的提升,H5的3D展示在某些方面已经能够接近甚至超越传统PC上的3D展示效果,比如 博维数孪 的渲染能力及效果。但H5和PC的3D展示互相之间是各有优势领域和行业支持,短…

齐普夫定律在循环神经网络中的语言模型的应用

目录 齐普夫定律解释公式解释图与公式的关系代码与图的分析结论 使用对数表达方式的原因1. 线性化非线性关系2. 方便数据可视化和分析3. 降低数值范围4. 方便参数估计公式详细解释结论 来自:https://zh-v2.d2l.ai/chapter_recurrent-neural-networks/language-model…

自动驾驶---Perception之视觉点云雷达点云

1 前言 在自动驾驶领域,点云技术的发展历程可以追溯到自动驾驶技术的早期阶段,特别是在环境感知和地图构建方面。 在自动驾驶技术的早期技术研究中,视觉点云和和雷达点云都有出现。20世纪60年代,美国MIT的Roberts从2D图像中提取3D…

避免在Homebrew更新时升级Maven

目录 一、简介二、问题背景三、解决步骤1. 查看当前安装的 Maven 版本2. 锁定 Maven 版本3. 验证 Maven 是否被锁定4. 忽略自动更新5. 解除 Maven 锁定(如果需要) 四、其他注意事项五、写在后面 一、简介 Homebrew 是 macOS 上一个非常流行的包管理器&a…

手把手教程本地调试Datax

背景:使用Datax做数仓同步数据得工具,有时需要自己开发或者修改某个reader或writer插件,那么本地调试就很重要。 一. 下载 从GitHub上下载或者clone下来Datax项目。 https://github.com/alibaba/DataX 找到Core模块,运行入口就…

上海市计算机学会竞赛平台2024年5月月赛丙组棋盘问题(二)

题目描述 给定一个 𝑛∗𝑚n∗m 的棋盘,你需要在棋盘上放置黑白两个不同的皇后,请问有多少种放置方法能够使两个皇后之间互相不能攻击对方? 象棋中的皇后可以沿所在行、列及对角线移动任意距离。 输入格式 输入共一…

React <> </>的用法

React &#xff1c;&#xff1e; &#xff1c;/&#xff1e;的用法 介绍为什么使用 <>&#xff1f;例子解释 关于顶级元素总结 介绍 在 React 中&#xff0c;使用 <> 表示一个空标签或片段&#xff08;Fragment&#xff09;&#xff0c;这是一个简洁的方式来包裹一…

黑苹果/Mac如何升级 Mac 新系统 Sequoia Beta 版

Mac升级教程 有必要提醒一下大家&#xff0c;开发者测试版系统一般是给开发者测试用的&#xff0c;可能存在功能不完善、部分软件不兼容的情况&#xff0c;所以不建议普通用户升级&#xff0c;如果实在忍不住&#xff0c;升级之前记得做好备份。 升级方法很简单&#xff1a; …

编程软件要怎么学好:深入剖析与高效学习之道

编程软件要怎么学好&#xff1a;深入剖析与高效学习之道 在数字化时代&#xff0c;编程技能已成为一项不可或缺的能力。而要学好编程软件&#xff0c;不仅需要扎实的编程基础&#xff0c;还需要掌握一定的学习策略和方法。本文将从四个方面、五个方面、六个方面和七个方面&…