- 博客(47)
- 收藏
- 关注
原创 网络攻击DDOoS的原理、攻击手段及防范措施详解
DDoS(分布式拒绝服务攻击)是利用大量的僵尸主机对受害者发起攻击,从而造成受害者的资源被耗尽无法为合法用户提供服务。:使用流量清洗服务过滤恶意流量,确保正常流量通过。:利用CDN缓解攻击,通过分布式节点分散流量。:配置防火墙规则和入侵检测系统,阻止可疑流量。:限制单个IP地址的请求速率,防止流量激增。**8.及时更新:**及时更新系统,修复漏洞。:定期测试和更新防御措施,以应对新型攻击。:通过多个服务器分散流量,减少单点压力。:设置阈值,自动应对流量激增情况。
2024-09-29 09:02:07
779
1
原创 秋招力扣Hot100刷题总结——双指针
题目链接题目要求:给你一个按照非递减顺序排列的整数数组 nums,和一个目标值 target。请你找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值 target,返回 [-1, -1]。你必须设计并实现时间复杂度为 O(log n) 的算法解决此问题。代码及思路首先使用双指针找到指定元素的第一个位置然后分别循环找到该元素的左右边界代码int left=0;maxL--;maxR++;return res;left=mid+1;}else{
2024-08-23 09:30:05
866
原创 秋招力扣Hot100刷题总结——回溯
回溯问题通常应用于解决排列组合等问题,需要注意的是回溯函数中的参数、结束条件、遍历开始顺序等。(1)确定递归函数的参数。(2)确定递归函数的终止条件。(3)确定单层搜索的逻辑。
2024-08-21 10:14:53
1124
原创 秋招力扣Hot100刷题总结——动态规划
01背包问题中,遍历顺序可以是先物品后背包,也可以是先背包后物品,但是背包要。完全背包问题中,先遍历物品再遍历背包,且背包。:一定要判断dp[j-i。
2024-08-21 10:12:10
1148
原创 秋招Java后端开发——微服务基础篇(Docker)
1. DockerDocker是一组平台即服务(PaaS)的产品。它基于操作系统层级的虚拟化技术,将软件与其依赖项打包为容器。托管容器的软件称为Docker引擎。Docker能够帮助开发者在轻量级容器中自动部署应用程序,并使得不同容器中的应用程序彼此隔离,高效工作。2. 特点轻量级:Docker 容器共享主机操作系统内核,因此比传统虚拟机更轻量。容器的启动和停止非常快速。可移植性:Docker 容器可以在任何支持 Docker 的环境中运行,包括开发、测试和生产环境。
2024-07-18 15:55:45
975
原创 秋招Java后端开发——并发篇3(ThreadLocal、Future接口)
本文对ThreadLocal类和Future接口进行了总结概括,包括ThreadLocal类的原理、内存泄露等问题,和Future接口的使用等问题。
2024-07-09 16:37:42
1121
原创 秋招Java后端开发——并发篇2(JMM与锁机制)
本文对Java的内存管理模型、volatile关键字和锁机制进行详细阐述,包括synchronized关键字、Lock接口及其实现类ReentrantLock、AQS等的实现原理和常见方法。
2024-07-04 19:36:55
1398
原创 秋招力扣刷题——从前序与中序遍历序列构造二叉树
给定两个整数数组 preorder 和 inorder ,其中 preorder 是二叉树的先序遍历, inorder 是同一棵树的中序遍历,请构造二叉树并返回其根节点。:两种代码的结束条件以及分割的右区间处理方式不同,后者更容易理解一点。
2024-07-04 10:25:35
294
原创 秋招Java后端开发——并发篇1(线程与进程、多线程)
多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。进程是程序的一次动态执行过程,是操作系统资源分配的基本单位。(3) Synchronized 和 Lock 的区别。(1)死锁的产生:四个必要条件。(2)死锁的预防:破坏必要条件。
2024-07-02 14:32:54
1148
原创 秋招Java后端开发——基础篇5(String&集合)
Java中集合主要是由两大接口派生而来:一个是 Collection接口,主要用于存放单一元素;另一个是 Map 接口,主要用于存放键值对。
2024-07-01 16:40:46
1207
原创 秋招Java后端开发——基础篇4(Unsafe类详解)
Unsafe类主要用于执行低级别、不安全操作的方法,如直接访问系统内存资源、自主管理内存资源等,其实现依赖于本地方法(Native method,用其他语言(如C/C++/汇编)编写的)
2024-06-29 19:35:08
949
原创 秋招力扣刷题——数据流的中位数
使用了两个堆存储数据,一个最大堆用于存储较小的一半元素,另一个最小堆用于存储较大的一半元素,然后根据堆顶元素计算得到中位数。double findMedian() 返回到目前为止所有元素的中位数。// 返回 1.5 ((1 + 2) / 2)中位数是有序整数列表中的中间值。如果列表的大小是偶数,则没有中间值,中位数是两个中间值的平均值。void addNum(int num) 将数据流中的整数 num 添加到数据结构中。例如 arr = [2,3] 的中位数是 (2 + 3) / 2 = 2.5。
2024-06-29 14:26:15
384
原创 Java中比较运算符详解(==,equals,compareTo)
本文对Java中的相等判断进行详细解释,包括==,equals和compareTo等。
2024-06-28 17:44:43
487
原创 Elasticsearch倒排索引详解
1. 倒排索引常被称为反向索引、置入档案或反向档案,是一种索引方法,被用来存储在全文搜索下某个单词在一个文档或者一组文档中的存储位置的映射。它是文档检索系统中最常用的数据结构。通过倒排索引,可以根据单词快速获取包含这个单词的文档列表。2. 倒排索引 VS正排索引特性正排索引(Forward Index)倒排索引(Inverted Index)存储内容文档到词的映射关系词到文档的映射关系存储结构每个文档记录包含的所有词每个词记录包含它出现的所有文档 ID查询效率。
2024-06-28 15:27:57
2826
原创 力扣刷题——基本计算器
给定一个表达式如 expression = “e + 8 - a + 5” 和一个求值映射,如 {“e”: 1}(给定的形式为 evalvars = [“e”] 和 evalints = [1]),返回表示简化表达式的标记列表,例如 [“-1。请注意,变量可以是多个字母,并注意变量从不具有像 “2x” 或 “-x” 这样的前导系数或一元运算符。项的次数等于被乘的自变量的数目,并计算重复项。**题目要求:**给你一个字符串表达式 s ,请你实现一个基本计算器来计算并返回它的值。
2024-06-27 15:00:06
500
原创 秋招Java后端开发——非关系型数据库篇(MongoDB)
MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为WEB应用提供可扩展的高性能数据存储解决方案。
2024-06-26 14:32:53
1053
原创 数据结构——跳表Skip List
1.定义跳表(Skip List):是一种概率性数据结构,由William Pugh在1990年提出,主要用于在有序的元素集合上进行快速的搜索、插入和删除操作。跳表的效率与平衡树相当,但实现起来更简单,它通过维护多层链表来提高查找效率。2. 实现原理在原有的有序链表上面增加了多级索引,通过索引进行二分查找从而实现高效率查找,其每种操作(搜索、插入、删除)的平均复杂性均为O(logn)。3.特点特点描述结构多层链表,每层是下层的子集。查找效率。
2024-06-26 10:51:56
1513
原创 MangoDB索引
作用:索引类似于书本的目录,可以加速数据的查找和排序。类型:MongoDB 支持多种类型的索引,包括单字段索引、复合索引、地理空间索引、全文索引、哈希索引等。
2024-06-25 19:46:10
895
原创 秋招Java后端开发——非关系型数据库篇(Elasticsearch)
(1)查询 DSL(Domain Specific Language)是一种功能强大的 JSON 风格的查询语言,允许用户构建复杂的搜索请求。通过收集和分析应用程序的性能数据,Elasticsearch 帮助开发和运维团队监控应用程序性能,识别瓶颈并优化性能。Elasticsearch 被广泛应用于电子商务平台,提供强大的搜索和推荐功能,提升用户体验和转化率。每个分片本质上是一个独立的 Lucene 索引,可以存储在不同的节点上。(3)分片创建:在创建索引时,可以指定主分片和副本分片的数量。
2024-06-25 10:24:54
1023
原创 秋招Java后端开发——非关系型数据库篇(Redis)
五种基础数据类型包括:String(字符串)、List(列表)、Set(集合)、Hash(散列)、Zset(有序集合)包括:HyperLogLog(基数统计)、Bitmap (位图)、Geospatial (地理位置)包括: Bloom filter(布隆过滤器)、Bitfield(位域)(1)SETNX(SET if Not eXists)命令实现分布式锁。(1)Cache Aside Pattern(旁路缓存模式)(2)使用Redisson实现的分布式锁。(1)Redis 过期事件监听。
2024-06-24 16:07:27
2000
原创 秋招Java后端开发——关系型数据库篇(Mysql)
1. 数据库(Database, DB):是长期储存在计算机内的、有组织的、可共享的数据集合。2. 数据库管理系统(Database Management System, DBMS):是一种操纵和管理数据库的大型软件。3. 数据库系统(Database System, DBS):是计算机系统、数据库(DB)、数据库管理系统(DBMS)、应用软件、数据库管理员(DBA)和用户的全体(集合)。1. 创建、展示、删除、切换、修改数据库create database 数据库名称;
2024-06-24 13:04:22
1018
原创 牛客刷题——Java基础1
一、语法基础switch()中的参数类型1.7之前:byte、short、int、char及其包装类和枚举类型enum1.7之后,引入String标识符: 由数字、字母、下划线三部分组成,不能由数字开头、不能包含除_和$之外的字符、严格区分大小写、不能包含关键字静态域(静态方法,静态属性,静态代码块)静态代码块、静态属性按照顺序执行和声明静态方法最后执行例题:三元操作符类型的转换规则:若两个操作数不可转换,则不做转换,返回值为Object类型若两个操作数是明确类型
2024-06-21 20:00:48
369
原创 恶意域名检测论文阅读及代码复现——Heterogeneous Graph Attention Network for Malicious Domain Detection
DNS:作为互联网的基础,DNS 提供了域和 IP 地址之间的映射关系,以识别网络中的服务、设备或其他资源。同时,DNS也被攻击者滥用,如网络钓鱼、垃圾邮件、僵尸网络等,造成严重的经济损失。因此,如何有效检测恶意域名成为网络安全研究的热点。恶意域名检测方法方法分类优点缺点基于黑名单实现简单维护困难,且极易被绕过基于域名字符特征的方法有效应对Domain-Flux, Fast-Flux, Double-Flux等躲避技术手工提取特征难深度学习方法自动提取特征。
2024-06-21 16:43:44
1776
1
原创 秋招Java后端开发——基础篇1
注:Python开发使用简单,在快速开发原型和小规模项目方面表现出色;Java适用于大型商业性质和企业级应用的开发。
2024-06-17 16:56:38
446
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人