【文星索引】搜索引擎项目测试报告
目录
- 一、项目背景
- 二、 项目功能
- 2.1 数据收集与索引
- 2.2 API搜索功能
- 2.3 用户体验与界面设计
- 2.4 性能优化与维护
- 三、测试报告
- 3.1 功能测试
- 3.2 界面测试
- 3.3 性能测试
- 3.4 兼容性测试
- 3.5 自动化测试
- 四、测试总结
- 4.1 功能测试方面
- 4.2 性能测试方面
- 4.3 用户界面测试方面

一、项目背景
搜索引擎的项目背景有以下几个方面:
-
随着互联网的发展,网页、文档等各种信息呈指数级增长。在海量的信息中,用户难以快速准确地找到自己需要的相关代码函数内容。例如,每天有大量的技术文章等发布到网上,人们如果没有有效的搜索工具,就会在信息海洋中迷失。
-
无论是个人用户查找Java中的信息资讯,还是用户寻找代码信息,都迫切需要一种能够高效筛选和定位信息的工具。
-
对于互联网公司来说,搜索引擎是一个重要的流量入口。通过提供高质量的搜索服务,吸引大量用户访问,例如,百度的搜索页面上会展示各种与用户搜索关键词相关的技术文章,根据点击量或展示量呈现给搜索引擎公司。
二、 项目功能
搜索引擎的项目功能可以从多个方面进行分析,以下是一些常见的功能:
2.1 数据收集与索引
数据收集:搜索引擎需要从各种数据源收集数据,如网页、文档、图片、视频等。这些数据可以通过爬虫程序自动抓取,也可以通过手动提交或其他方式获取。
- 数据清洗与预处理:在索引之前,需要对收集到的数据进行清洗和预处理,如去除噪声、标签、格式化等,以便提高搜索的准确性和效率。
- 索引构建:搜索引擎使用索引技术将数据进行结构化处理,以便快速检索。常见的索引结构包括倒排索引、正排索引等。
2.2 API搜索功能
关键词搜索:用户输入关键词后,搜索引擎能够快速返回与关键词相关的搜索结果。搜索结果通常包括网页标题、摘要、链接等信息。
- 模糊搜索与纠错:搜索引擎能够处理用户输入的模糊关键词,并提供纠错建议,以提高搜索的准确性和用户体验。
2.3 用户体验与界面设计
简洁的搜索界面:搜索界面设计简洁明了,方便用户输入关键词和查看搜索结果。搜索框通常放置在页面的显眼位置,并提供输入提示和自动补全功能。
- 搜索结果展示:搜索结果以清晰、易读的方式展示给用户,通常包括标题、摘要、链接等信息。搜索结果可以按照相关性、时间、热度等进行排序。
2.4 性能优化与维护
性能优化:搜索引擎需要不断优化其性能,以提高搜索速度和响应时间。这可以通过优化索引结构、查询算法等方式实现。
三、测试报告
3.1 功能测试
输入测试
因为该项目不支持模糊匹配,查找结果是根据查询词是否包含在文档内容中来筛选的,因此等价类的划分如下:
有效等价类 | 无效等价类 |
---|---|
英文字符 | 中文字符 |
数字字符 | 停用词字符 |
英文和数字混杂字符 | 其他特殊字符 |
测试输入数据:
测试用例 | 期望结果 |
---|---|
String(有效) | 能被查找到并正确显示 |
ArrayList(有效) | 能被查找到并正确显示 |
12(有效) | 能被查找到并正确显示 |
a123b(有效) | 能被查找到并正确显示 |
数组(无效) | 查找不到结果 |
,X,S,z(无效) | 查找不到结果 |
1=1,&&&%$23(无效) | 查找不到结果 |
空格(无效) | 查找不到结果 |
附上部分测试截图:
有效等价类:
- 输入字母
预期结果:搜索成功,显示与字母相关的结果.
实际结果:搜索成功,显示带有字母的结果.
- 输入数字
预期结果:搜索成功,显示与数字相关的结果.
实际结果:搜索成功,显示带有数字的结果.
无效等价类:
- 输入汉字
预期结果:搜索失败,查找不到结果
实际结果:搜索失败,查找不到结果
- 输入空格
预期结果:搜索失败,查找不到结果
实际结果:搜索失败,查找不到结果
3.2 界面测试
显示搜索结果总数是否和实际展示保持一致
这里搜索一个条目比较少的方便展示:如图可以看到确实保持一致
数量大之后就需要定位页面元素编写代码来统计具体实际展示出的结果总数,这里贴上部分代码:
private String parseHtmlContentByRegex(File file ){String content=readFile(file);//通过正则表达式去掉正文中的<script>标签content=content.replaceAll("<script.*?>(.*?)</script>"," ");//通过正则表达式去掉正文中的其它标签content=content.replaceAll("<.*?>"," ");通过正则表达式合并多个空格content = content.replaceAll("\\s+", " ");content.replaceAll(" "," ");content.replaceAll(" "," ");return content;}
标题、描述、URL是否正确显示
如图,可以看到三者正确显示:
3.3 性能测试
单线程构建正排和倒排索引
代码如下:
public void run(){List<File> fileList=new ArrayList<>();//枚举所有以.html结尾的文件enumFile(INPUT_FILE,fileList);long start=System.currentTimeMillis();//解析每一个html文件for(File file:fileList){//解析每一个html文件parseHtml(file);System.out.println(file.getName());if(file.getName().equals("ArrayList")){System.out.println("===============================================================");}}index.save();long end=System.currentTimeMillis();log.info("单线程所消耗的时间:"+(end-start)+"ms");}
单线程消耗时间如下图所示:
多线程构建正排和倒排索引
代码如下:
public void runByThread() throws InterruptedException {List<File> fileList=new ArrayList<>();//枚举所有以.html结尾的文件enumFile(INPUT_FILE,fileList);long start=System.currentTimeMillis();//创建一个包含10个线程的线程池ExecutorService executorService= Executors.newFixedThreadPool(10);//创建一个计数器来表示文件的数量CountDownLatch countDownLatch=new CountDownLatch(fileList.size());for(File file:fileList){executorService.submit(new Runnable() {@Overridepublic void run() {parseHtml(file);log.info("文件名:"+file.getName()+"文件路径:"+file.getAbsolutePath());countDownLatch.countDown();}});}countDownLatch.await();executorService.shutdown();index.save();long end=System.currentTimeMillis();log.info("多线程所消耗的时间:"+(end-start)+"ms");}
多线程消耗时间如下图所示:
这里可以看到多线程的处理速度比单线程快了许多,时间也大概快了一倍
下面是10个线程的处理性能:
10个线程短时间内的吞吐量:
多线程下单短时间响应时间折线图:
下图是界面的响应速度:
3.4 兼容性测试
![在Windows11环境下:
联想浏览器:正常运行]
![在Windows11环境下:
谷歌浏览器:正常运行、
![在Windows11环境下:
Edge浏览器:正常运行]
小米手机环境:
手机QQ浏览器:正常运行
3.5 自动化测试
自动化测试代码如下:
void searchResult() throws InterruptedException {//找到搜索框,输入查询词driver.findElement(By.cssSelector("body > div > div.header > input[type=text]")).sendKeys("static");//点击搜索按钮driver.findElement(By.cssSelector("#search-btn")).click();Thread.sleep(3000);//找到搜索结果的标题并进行点击driver.findElement(By.cssSelector("body > div > div.result > div:nth-child(2) > a")).click();//获取当前页面的句柄String curHandle=driver.getWindowHandle();Set<String> handles=driver.getWindowHandles();for (String handle:handles){if (handle!=curHandle){driver.switchTo().window(handle);}}Thread.sleep(3000);//查找在线文档页面的元素验证跳转成功driver.findElement(By.cssSelector("#allclasses_navbar_top > li > a"));}
如下效果图展示:
自动化视频 2025-01-26 145252
四、测试总结
以下是搜索引擎测试总结的结构化内容:
4.1 功能测试方面
- 搜索准确性
- 测试了不同类型的关键词,包括常见词汇、专业术语、模糊表述等。发现大部分常见词汇能准确找到相关结果,但对于一些非常模糊或者具有多义性的表述,搜索引擎的结果准确性会有所下降。例如,搜索“苹果”,除了水果类结果,还会出现苹果公司相关结果,在某些特定需求下可能不够精准。
- 搜索结果多样性
- 检查搜索结果是否涵盖了多种来源,如网页、新闻、学术论文、图片、视频等。总体上,现代搜索引擎在这方面表现较好,能提供较为丰富的结果类型。但在一些特定领域,如小众的学术研究方向,结果多样性可能会受到数据源数量的限制。
- 搜索排序合理性
- 评估搜索结果的排序是否符合相关性原则。一般来说,搜索引擎会根据关键词匹配度、网页权重等因素进行排序。然而,有时会发现商业推广内容的排序可能会影响到自然搜索结果的展示顺序,对用户体验有一定的干扰。
4.2 性能测试方面
- 响应速度
- 在不同网络环境下(如高速宽带、移动网络)测试搜索请求的响应时间。在良好网络环境下,响应速度较快,能在1 - 2秒内给出结果。但在网络信号较差的移动网络环境中,响应时间可能会延长到5 - 10秒甚至更久。
- 资源占用
- 监控搜索引擎在运行过程中对设备资源(如CPU、内存)的占用情况。在长时间使用或者进行大量搜索时,搜索引擎的客户端可能会占用较多内存,导致设备运行速度变慢,尤其是在配置较低的设备上。
4.3 用户界面测试方面
- 界面布局
- 检查搜索引擎界面的布局是否简洁、直观。良好的界面布局应该能够让用户快速找到搜索框、筛选工具等重要元素。部分搜索引擎在界面上存在广告位过多,影响用户对搜索结果的查看体验的问题。
- 易用性
- 测试用户操作的便捷性,如输入关键词、选择搜索结果、使用高级搜索功能等。一些搜索引擎的高级搜索功能隐藏较深,普通用户很难发现和使用,降低了搜索的精准性和效率。
相关文章:
【文星索引】搜索引擎项目测试报告
目录 一、项目背景二、 项目功能2.1 数据收集与索引2.2 API搜索功能2.3 用户体验与界面设计2.4 性能优化与维护 三、测试报告3.1 功能测试3.2 界面测试3.3 性能测试3.4 兼容性测试3.5 自动化测试 四、测试总结4.1 功能测试方面4.2 性能测试方面4.3 用户界面测试方面 一、项目背…...
【C++】特殊类设计、单例模式与类型转换
目录 一、设计一个类不能被拷贝 (一)C98 (二)C11 二、设计一个类只能在堆上创建对象 (一)将构造函数私有化,对外提供接口 (二)将析构函数私有化 三、设计一个类只…...
Nxopen 直齿轮参数化设计
NXUG1953 Visualstudio 2019 参考论文: A Method for Determining the AGMA Tooth Form Factor from Equations for the Generated Tooth Root Fillet //FullGear// Mandatory UF Includes #include <uf.h> #include <uf_object_types.h>// Internal I…...
Vue.js组件开发-实现HTML内容打印
在Vue项目中实现打印功能,可以借助vue-html-to-paper插件来完成。 步骤 创建Vue项目:如果还没有Vue项目,可以使用Vue CLI来创建一个新的项目。 npm install -g vue/cli vue create vue-print-template cd vue-print-template安装vue-html-…...
大模型GUI系列论文阅读 DAY4续:《Large Language Model Agent for Fake News Detection》
摘要 在当前的数字时代,在线平台上虚假信息的迅速传播对社会福祉、公众信任和民主进程构成了重大挑战,并影响着关键决策和公众舆论。为应对这些挑战,自动化假新闻检测机制的需求日益增长。 预训练的大型语言模型(LLMs࿰…...
Day27-【13003】短文,线性表两种基本实现方式空间效率、时间效率比较?兼顾优点的静态链表是什么?如何融入空闲单元链表来解决问题?
文章目录 本次内容总览第四节,两种基本实现方式概览两种基本实现方式的比较元素个数n大于多少时,使用顺序表存储的空间效率才会更高?时间效率比较?*、访问操作,也就是读运算,读操作1、插入,2、删…...
Scrapy如何设置iP,并实现IP重用, IP代理池重用
前置知识 1/3乐观锁 2/3 Scrapy流程(非全部) 3/3 关于付费代理 我用的"快代理", 1000个ip, 每个ip1min的有效期, 你用的时候, 把你的链接, 用户名填上去就行 设置代理IP 🔒 & 帮助文档: ①meta ②meta#proxy$ 语法: ①proxy的设置: Request对象中…...
动手学图神经网络(4):利用图神经网络进行图分类
利用图神经网络进行图分类:从理论到实践 引言 在之前的学习中,大家了解了如何使用图神经网络(GNNs)进行节点分类。本次教程将深入探讨如何运用 GNNs 解决图分类问题。图分类是指在给定一个图数据集的情况下,根据图的一些结构属性对整个图进行分类,而不是对图中的节点进…...
C++游戏开发深度解析
引言 在本篇文章中,我们将深入探讨C在游戏开发中的应用,包括内存管理、面向对象编程(OOP)、模板使用等,并通过实际代码示例来帮助理解。 内存管理与智能指针 cpp 深色版本 #include <iostream> #include <…...
ultralytics 是什么?
ultralytics 是一个用于计算机视觉任务的 Python 库,专注于提供高效、易用的目标检测、实例分割和图像分类工具。它最著名的功能是实现 YOLO(You Only Look Once) 系列模型,特别是最新的 YOLOv8。 1. YOLO 是什么? YO…...
【从零到一,C++项目实战】CineShare++(基于C++的视频点播系统)
🌈个人主页: 南桥几晴秋 🌈C专栏: 南桥谈C 🌈C语言专栏: C语言学习系列 🌈Linux学习专栏: 南桥谈Linux 🌈数据结构学习专栏: 数据结构杂谈 🌈数据…...
kaggle-ISIC 2024 - 使用 3D-TBP 检测皮肤癌-学习笔记
问题描述: 通过从 3D 全身照片 (TBP) 中裁剪出单个病变来识别经组织学确诊的皮肤癌病例 数据集描述: 图像临床文本信息 评价指标: pAUC,用于保证敏感性高于指定阈值下的AUC 主流方法分析(文本) 基于CatBoo…...
C语言深入解析 printf的底层源码实现
深入解析 printf 的底层源码实现 printf 是 C 标准库中最常用的函数之一,用于格式化输出字符串。它的底层实现复杂且高效,包含多个模块化的函数和机制。本文结合 GNU C Library(glibc)的源码,详细分析 printf 的实现原…...
IPhone14 Pro 设备详情
目录 产品宣传图内部图——后设备详细信息 产品宣传图 内部图——后 设备详细信息 信息收集于HubWeb.cn...
vim多文件操作如何同屏开多个文件
[rootxxx ~]# vimdiff aa.txt bb.txt cc.txt #带颜色比较的纵向排列打开的同屏多文件操作 示例: [rootxxx ~]# vimdiff -o aa.txt bb.txt cc.txt #带颜色比较的横向排列打开的同屏多文件操作 示例: [rootxxx ~]# vim -O aa.txt bb.txt c…...
18款炫酷烟花合集
系列专栏 《Python趣味编程》《C/C趣味编程》《HTML趣味编程》《Java趣味编程》 写在前面 Python、C/C、HTML、Java等4种语言实现18款炫酷烟花的代码。 Python Python烟花① 完整代码:Python动漫烟花(完整代码)-CSDN博客 Python烟…...
服务器虚拟化技术详解与实战:架构、部署与优化
📝个人主页🌹:一ge科研小菜鸡-CSDN博客 🌹🌹期待您的关注 🌹🌹 引言 在现代 IT 基础架构中,服务器虚拟化已成为提高资源利用率、降低运维成本、提升系统灵活性的重要手段。通过服务…...
01.双Android容器解决方案
目录 写在前面 一,容器 1.1 容器的原理 1.1.1 Namespace 1.1.2 Cgroups(Control Groups) 1.1.3 联合文件系统(Union File System) 1.2 容器的应用 1.2.1 微服务架构 1.2.2 持续集成和持续部署(CI/C…...
C++封装红黑树实现mymap和myset和模拟实现详解
文章目录 map和set的封装map和set的底层 map和set的模拟实现insertiterator实现的思路operatoroperator- - map和set的封装 介绍map和set的底层实现 map和set的底层 一份模版实例化出key的rb_tree和pair<k,v>的rb_tree rb_tree的Key和Value不是我们之前传统意义上的key/…...
嵌入式知识点总结 Linux驱动 (一)-指令-常用Linux指令 GCC指令 GDB调试指令 驱动开发指令
针对于嵌入式软件杂乱的知识点总结起来,提供给读者学习复习对下述内容的强化。 目录 1.怎么查看当前进程?怎么执行退出?怎么查看当前路径? 2.ls命令执行有什么功能?可以带哪些参数? 3.创建目录用什么命令…...
数字化创新者如何利用开源2+1链动模式AI智能名片S2B2C商城小程序源码重塑市场地位
摘要:在数字化转型的浪潮中,数字化创新者正通过整合前沿技术,重塑行业格局,引领市场变革。本文深入探讨了开源21链动模式、AI智能名片以及S2B2C商城小程序源码等技术在数字化创新中的应用,旨在揭示这些技术如何助力企业…...
以用户为中心,优化 B 端界面设计
在数字化转型的进程中,B 端产品已成为企业高效运营的关键支撑,而 B 端界面设计则是决定其成败的核心要素。以用户为中心优化 B 端界面,不仅能提升员工操作体验,还能为企业运营注入强大动力。 以用户为中心,意味着深入洞…...
微服务学习-服务调用组件 OpenFeign 实战
1. OpenFeign 接口方法编写规范 1.1. 在编写 OpenFeign 接口方法时,需要遵循以下规范 1.1.1.1. 接口中的方法必须使用 RequestMapping、GetMapping、PostMapping 等注解声明 HTTP 请求的类型。 1.1.1.2. 方法的参数可以使用 RequestParam、RequestHeader、PathVa…...
使用国内镜像加速器解决 Docker Hub 拉取镜像慢或被屏蔽的问题
一、问题背景 Docker Hub 是 Docker 默认的镜像仓库,但由于网络限制,国内用户直接拉取镜像可能面临以下问题: 下载速度极慢(尤其是大镜像)。连接超时或完全被屏蔽(部分网络环境)。依赖国外源的…...
反向代理模块。。
1 概念 1.1 反向代理概念 反向代理是指以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,将从服务器上得到的结果返回给客户端,此时代理服务器对外表现为一个反向代理服务器。 对于客户端来说,反向代理就相当于…...
《十七》浏览器基础
浏览器:是安装在电脑里面的一个软件,能够将页面内容渲染出来呈现给用户查看,并让用户与网页进行交互。 常见的主流浏览器: 常见的主流浏览器有:Chrome、Safari、Firefox、Opera、Edge 等。 输入 URL,浏览…...
飞致云开源社区月度动态报告(2025年1月)
自2023年6月起,中国领先的开源软件公司飞致云以月度为单位发布《飞致云开源社区月度动态报告》,旨在向广大社区用户同步飞致云旗下系列开源软件的发展情况,以及当月主要的产品新版本发布、社区运营成果等相关信息。 飞致云开源运营数据概览&…...
【PyQt5】数据库连接失败: Driver not loaded Driver not loaded
报错内容如下: 可以看到目前所支持的数据库驱动仅有[‘QSQLITE’, ‘QMARIADB’, ‘QODBC’, ‘QODBC3’, ‘QPSQL’, ‘QPSQL7’] 我在网上查找半天解决方法未果,其中有一篇看评论反馈是可以使用的,但是PyQt5的版本有点低,5.12…...
Linux之内存管理前世今生(一)
一个程序(如王者荣耀)平常是存储在硬盘上的,运行时才把这个程序载入内存,CPU才能执行。 问题: 这个程序载入内存的哪个位置呢?载入内核所在的空间吗?系统直接挂了。 一、虚拟内存 1.1 内存分…...
【cran Archive R包的安装方式】
cran Archive R包的安装方式 添加链接描述 1.包被cran移除 2.包要求的R语言版本与你电脑上的版本不相符 ad archive包的网址或者是下载到工作目录下,ad等于文件名 install,packages(ad repos NULL)...
Python中容器类型的数据(上)
若我们想将多个数据打包并且统一管理,应该怎么办? Python内置的数据类型如序列(列表、元组等)、集合和字典等可以容纳多项数据,我们称它们为容器类型的数据。 序列 序列 (sequence) 是一种可迭代的、元素有序的容器类型的数据。 序列包括列表 (list)…...
2025美赛美国大学生数学建模竞赛A题完整思路分析论文(43页)(含模型、可运行代码和运行结果)
2025美国大学生数学建模竞赛A题完整思路分析论文 目录 摘要 一、问题重述 二、 问题分析 三、模型假设 四、 模型建立与求解 4.1问题1 4.1.1问题1思路分析 4.1.2问题1模型建立 4.1.3问题1样例代码(仅供参考) 4.1.4问题1样例代码运行结果&…...
OneDrive同步桌面 实现文件备份
Target 将笔记本桌面与OneDrive同步,当Desktop的文件发生变动时,自动更新到OneDrive。 取消旧的OneDrive账号与本机的关联 点击logo,弹出界面,点击设置。 随后打开OneDrive界面,点击“同步与备份”,“备…...
14.模型,纹理,着色器
模型、纹理和着色器是计算机图形学中的三个核心概念,用通俗易懂的方式来解释: 1. 模型:3D物体的骨架 通俗解释: 模型就像3D物体的骨架,定义了物体的形状和结构。 比如,一个房子的模型包括墙、屋顶、窗户等…...
用C++编写一个2048的小游戏
以下是一个简单的2048游戏的实现。这个实现使用了控制台输入和输出,适合在终端或命令行环境中运行。 2048游戏的实现 1.游戏逻辑 2048游戏的核心逻辑包括: • 初始化一个4x4的网格。 • 随机生成2或4。 • 处理玩家的移动操作(上、下、左、…...
python -m pip和pip的主要区别
python -m pip和pip的主要区别在于它们与Python环境的关联方式和安装路径。 与Python环境的关联方式: pip 是直接使用命令行工具来安装Python包,不指定特定的Python解释器。如果系统中存在多个Python版本,可能会导致安装的包被安装到…...
linux监控脚本+自动触发邮件发送
linux脚本 需求: CPU 负载:使用 uptime 命令,我们可以清楚地了解系统的 CPU 负载情况。这个命令会显示系统在过去 1 分钟、5 分钟和 15 分钟的平均负载。高负载可能意味着系统正在处理大量的任务,可能会导致性能下降或服务响应延迟…...
Mybaties缓存机制
Mybatis缓存机制 在 MyBatis 中,缓存机制是用来提高查询效率的一种方式。MyBatis 提供了两种内置的缓存机制:一级缓存和二级缓存。 1. 一级缓存(Local Cache) 一级缓存是基于 SqlSession 的。当你在同一个 SqlSession 中执行相…...
面试题-Java集合框架
前言 Java集合框架(Java Collections Framework)是Java平台提供的一套用于表示和操作集合的统一架构。它位于java.util包中,并且自Java 1.2(也称为Java 2平台,标准版,即Java SE 2)起成为Java平…...
半波整流和全波整流电路汇总及电路仿真
0 前言 0.1 引言 整流电路是将交流电(AC)转换为直流电(DC)的电路,广泛应用于电源设计、信号处理和电力电子等领域。整流电路的基本功能是将交流电的正半周或负半周转换为直流电,从而为电子设备提供稳定的直流电源。本文将详细介绍半波整流和全波整流电路的工作原理、电…...
04-机器学习-网页数据抓取
网络爬取(Web Scraping)深度指南 1. 网络爬取全流程设计 一个完整的网络爬取项目通常包含以下步骤: 目标分析: 明确需求:需要哪些数据(如商品价格、评论、图片)?网站结构分析&…...
豆包MarsCode:前缀和计算问题
问题描述 思路分析 问题理解 小S的任务是计算一个整数数组 nums 的前缀和。前缀和是指从数组开始到某个位置的所有元素的累加值,形成一个新数组。例如: 输入数组:nums [4, 5, 1, 6]前缀和数组:[4, 9, 10, 16] 4 49 4 510 …...
MySQL中InnoDB逻辑存储结构
在MySQL中,InnoDB是最常用的存储引擎之一,它具有高度的事务支持、行级锁、ACID特性以及自动崩溃恢复等特性。InnoDB的逻辑存储结构可以分为多个层次,下面是详细的解析。 1. 表空间 (Tablespace) InnoDB的物理存储结构以表空间为基础。表空间…...
如何提高新产品研发效率
优化研发流程、采用先进工具、提升团队协作、持续学习与改进,是提高新产品研发效率的关键。其中,优化研发流程尤为重要。通过简化流程,减少不必要的环节和复杂性,企业可以显著提升研发效率。例如,采用自动化测试工具和…...
可扩展架构:如何打造一个善变的柔性系统?
系统的构成:模块 + 关系 我们天天和系统打交道,但你有没想过系统到底是什么?在我看来,系统内部是有明确结构 的,它可以简化表达为: 系统 = 模块 + 关系 在这里,模块是系统的基本组成部分,它泛指子系统、应用、服务或功能模块。关系指模块 之间的依赖关系,简单…...
使用大语言模型在表格化网络安全数据中进行高效异常检测
论文链接 Efficient anomaly detection in tabular cybersecurity data using large language models 论文主要内容 这篇论文介绍了一种基于大型语言模型(LLMs)的创新方法,用于表格网络安全数据中的异常检测,称为“基于引导式提…...
BUUCTF 蜘蛛侠呀 1
BUUCTF:https://buuoj.cn/challenges 文章目录 题目描述:密文:解题思路:flag: 相关阅读 CTF Wiki Hello CTF NewStar CTF buuctf-蜘蛛侠呀 BUUCTF:蜘蛛侠呀 MISC(时间隐写)蜘蛛侠呀 题目描述&am…...
eVTOL的航空电子设备漫谈
电动垂直起降(eVTOL),也统称为城市空中交通(UAM),是民用航空平台发展的新方向之一。随着它们在市场上成为现实,它们将对所使用的航空电子设备有其自身的要求.. eVTOL概念 eVTOL领域的发展才刚…...
SpringCloudAlibaba 服务保护 Sentinel 项目集成实践
目录 一、简介1.1、服务保护的基本概念1.1.1、服务限流/熔断1.1.2、服务降级1.1.3、服务的雪崩效应1.1.4、服务的隔离的机制 1.2、Sentinel的主要特性1.3、Sentinel整体架构1.4、Sentinel 与 Hystrix 对比 二、Sentinel控制台部署3.1、版本选择和适配3.2、本文使用各组件版本3.…...
【深度学习|DenseNet-121】Densely Connected Convolutional Networks内部结构和参数设置
【深度学习|DenseNet-121】Densely Connected Convolutional Networks内部结构和参数设置 【深度学习|DenseNet-121】Densely Connected Convolutional Networks内部结构和参数设置 文章目录 【深度学习|DenseNet-121】Densely Connected Convolutional Networks内部结构和参数…...