算法 安全性 原理ripemd

每个Java程序员都必须知道的四种负载均衡算法

前言 一般来说,我们在设计系统的时候,为了系统的高扩展性,会尽可能的创建无状态的系统,这样我们就可以采用集群的方式部署,最终很方便的根据需要动态增减服务器数量。但是,要使系统具有更好的可扩展性,除了无状态设计之外,还要考虑采用什么负载均衡算法,本文就带领大家认识以下常见的4种负载均衡算法。 欢迎关注 ......
程序员 算法 程序 Java

动态范围控制原理

DRC介绍 开门见山,动态范围的定义就是信号的最大幅值和最小幅值比值的对数(单位dB), 动态范围会受到系统中各个环节的影响。例如同样是这段音乐,在一个40dB背景噪声的环境中播放,那么由于掩蔽效应等因素的影响,最终实际听到的音乐动态范围实际上是50dB。 动态范围会受到系统中各个环节的影响。例如同 ......
原理 范围 动态

滑动窗口滤波器原理分析及详细代码讲解实现

前言 在嵌入式开发程序中涉及数据采样如传感器采样,AD采样等如果直接读取信号后,将信号值直接参与后续逻辑处理,若程序无软件滤波,会导致静态或者动态采样时: 1、信号曲线相对没有那么平滑。 2、同时可能存在脉冲干扰导致逻辑判断错误。 在信号处理系统中,输入信号通常含有各种噪声和干扰。为对信号进行准确的 ......
滤波器 原理 代码

微机原理与系统设计笔记1 | 绪论与数制表示

打算整理汇编语言与接口微机这方面的学习记录。 参考资料 西电《微机原理与系统设计》周佳社 西交《微机原理与接口技术》 课本《汇编语言与接口技术》王让定 小甲鱼《汇编语言》 1. 介绍 2022年春学习了MIPS视角下的计算机体系结构与组成原理,同年夏自学了操作系统(科普级别的了解),汇编语言是学习操 ......
绪论 微机 原理 笔记 系统

初探富文本之OT协同算法

初探富文本之OT协同算法 OT的英文全称是Operational Transformation,是一种处理协同编辑的算法。当前OT算法用的比较多的地方就是富文本编辑器领域了,常用于作为实现文档协同的底层算法,支持多个用户同时编辑文档,不会因为用户并发修改导致冲突,而导致结果不一致甚至数据丢失的问题。 ......
算法 文本

把KMP算法嚼碎!(C++)

相信不少人在学数据结构的时候都被KMP算法搞的迷迷糊糊的,原理看的似懂非懂,代码写不出来,或者写出来了也不知道为什么就可以这么写。本文力求尽可能通俗详细的讲解KMP算法,让你不再受到KMP算法的困扰。 暴力匹配的痛点 所谓暴力匹配,就是从文本串的首端开始依次检查子串是否与模式串匹配,如果不匹配就将模 ......
算法 KMP

[数据结构]KMP算法(含next数组详解)

#字符串匹配问题 给定一个字符串 s 和一个要匹配的模式串 p。模式串 p 有可能在 s 中多次出现,请求出模式串 p 在 s 中所有出现的起始位置。 #暴力匹配算法 BF ##算法思路 在面对字符串匹配问题时,很容易想到暴力求解。字符串匹配的暴力算法思路很简单,即在 s 中枚举起点 i,对于每个起 ......
数据结构 数组 算法 结构 数据

TiDB 底层存储结构 LSM 树原理介绍

随着数据量的增大,传统关系型数据库越来越不能满足对于海量数据存储的需求。对于分布式关系型数据库,我们了解其底层存储结构是非常重要的。本文将介绍下分布式关系型数据库 TiDB 所采用的底层存储结构 LSM 树的原理。 ......
底层 原理 结构 TiDB LSM

Squirrel状态机-从原理探究到最佳实践

作者:京东物流 郑朋辉 1 简介 Squirrel状态机是一种用来进行对象行为建模的工具,主要描述对象在它的生命周期内所经历的状态,以及如何响应来自外界的各种事件。比如订单的创建、已支付、发货、收获、取消等等状态、状态之间的控制、触发事件的监听,可以用该框架进行清晰的管理实现。使用状态机来管理对象生 ......
Squirrel 原理 状态

跳跃表数据结构与算法分析

目前市面上充斥着大量关于跳跃表结构与Redis的源码解析,但是经过长期观察后发现大都只是在停留在代码的表面,而没有系统性地介绍跳跃表的由来以及各种常量的由来。作为一种概率数据结构,理解各种常量的由来可以更好地进行变化并应用到高性能功能开发中。本文没有重复地以对现有优秀实现进行代码分析,而是通过对跳跃... ......
数据结构 算法 结构 数据

Java安全之JDBC Attacks学习记录

Java安全之JDBC Attacks 写在前面 很早就看到了Make JDBC Attacks Brilliant Again议题,一直想分析学习下,但是太懒。 MySQL 原理概述 "扩展参数" 就是本次导致安全漏洞的一个重要的部分。 Mysql JDBC 中包含一个危险的扩展参数: ”auto ......
Attacks Java JDBC

OpenMP Parallel Construct 实现原理与源码分析

在本篇文章当中我们将主要分析 OpenMP 当中的 parallel construct 具体时如何实现的,以及这个 construct 调用了哪些运行时库函数,并且详细分析这期间的参数传递! ......
Construct 源码 Parallel 原理 OpenMP

OpenMP 线程同步 Construct 实现原理以及源码分析(上)

在本篇文章当中主要给大家介绍了 flush, master 和 critical 指令的实现细节和他的调用的库函数,并且深入分析了这几个 construct 当中设计的库函数的源代码,希望大家有所收获。 ......
线程 Construct 源码 原理 OpenMP

Openmp Runtime 库函数汇总(下)——深入剖析锁🔒原理与实现

在本篇文章当中主要给大家分析了 OpenMP 当中两种主要的锁的实现,分别是 omp_lock_t 和 omp_nest_lock_t,一种是简单的锁实现,另外一种是可重入锁的实现。其实 critical 子句在 OpenMP 内部的也是利用上面的锁实现的。整个锁的实现还是非常复杂的,里面有很多耐人... ......
函数 原理 Runtime Openmp 128274

WebGoat-8.2.2靶场之不安全的反序列化漏洞

前言 序列化是将变量或对象转换成字符串的过程 反序列化就是把一个对象变成可以传输的字符串,目的就是为了方便传输 而反序列化漏洞就是,假设,我们写了一个class,这个class里面存有一些变量。当这个class被实例化了之后,在使用过程中里面的一些变量值发生了改变,之所以会产生反序列化漏洞是因为应用 ......
靶场 序列 漏洞 WebGoat

2023牛客寒假算法基础集训营3 A-I+K

比赛链接 A 题解 知识点:贪心。 把所有正偶数除成奇数,即可。 (人傻了没加 $x>0$ WA2 时间复杂度 $O(n)$ 空间复杂度 $O(1)$ 代码 #include <bits/stdc++.h> using ll = long long; using namespace std; int ......
算法 基础 2023 A-I

C++可执行文件绝对路径获取与屏蔽VS安全检查

前言 前几天写新项目需要用到程序所在绝对路径的时候,发现网上居然一点相关分享都没有。 > _pgmptr 翻箱倒柜找出了几本教程,发现了一个叫_pgmptr的东西。 进去看了一下,在stdlib.h里拓展到了函数__p__pgmptr(),函数原型: _CRT_INSECURE_DEPRECATE_ ......
路径 文件

道长的算法笔记:状态机模型之股票系列问题

(一) 股票系列问题 所谓的股票问题,是一个动态规划状态机模型的系列问题,这些题目来自于LeetCode社区,这些问题非常经典,能够帮助我们理解动态规划的本质,这些问题大多初看之下会令人感觉无从下手,但是一旦掌握相应的方法划分状态之后,很快即可举一反三的写出相应的代码。 股票系列问题合集 LC121 ......
道长 算法 模型 状态 笔记

周而复始,往复循环,递归、尾递归算法与无限极层级结构的探究和使用(Golang1.18)

所有人都听过这样一个歌谣:从前有座山,山里有座庙,庙里有个和尚在讲故事:从前有座山。。。。,虽然这个歌谣并没有一个递归边界条件跳出循环,但无疑地,这是递归算法最朴素的落地实现,本次我们使用Golang1.18回溯递归与迭代算法的落地场景应用。 递归思想与实现 递归思想并非是鲜为人知的高级概念,只不过 ......
层级 周而复始 算法 Golang1 结构

DevSecOps 需要知道的十大 K8s 安全风险及建议

Kubernetes (K8s)是现代云原生世界中的容器管理平台。它实现了灵活、可扩展地开发、部署和管理微服务。K8s 能够与各种云提供商、容器运行时接口、身份验证提供商和可扩展集成点一起工作。然而 K8s 的集成方法可以在任何基础设施上运行任何容器化应用程序,这使得围绕 K8s 和其上的应用程序堆 ......
DevSecOps 风险 建议 K8s 8s

一篇文章带你了解设计模式原理——UML图和软件设计原则

一篇文章带你了解设计模式原理——UML图和软件设计原则 我们在学习过程中可能并不会关心设计模式,但一旦牵扯到项目和面试,设计模式就成了我们的短板 这篇文章并不会讲到二十三种设计模式,但是会讲解设计模式的设计原则以及设计依据和最明显的图形表示 或许我们只有先去了解设计模式的来源才能真正理解设计模式吧 ......
设计模式 篇文章 原理 原则 模式

【深入浅出Sentinel原理及实战】「基础实战专题」零基础实现服务流量控制实战开发指南(2)

你若要喜爱你自己的价值,你就得给世界创造价值。 Sentinel的组成部分 Sentinel 主要由以下两个部分组成。 Sentinel核心库(Java客户端) :Sentinel的核心库不依赖任何框架或库,能够运行于Java 8及以上的版本的运行时环境中,同时对 Spring Cloud、Dubb ......

【Java技术专题】「原理专题」深入分析Java中finalize方法的作用和底层原理

finalize方法是什么 finalize方法是Object的protected方法,Object的子类们可以覆盖该方法以实现资源清理工作,GC在首次回收对象之前调用该方法。 finalize方法与C++的析构函数的区别 finalize方法与C++中的析构函数不是对应的,C++中的析构函数调用的 ......
原理 专题 Java 底层 finalize

【世界杯黑技术专题】「原理探索专题」一文解读一下“卡塔尔世界杯”的先进技术之半自动越位技术SAOT+比赛用球Al Rihla

盘点卡塔尔世界杯的先进黑科技 归纳总结一下目前世界杯的先进的黑科技有哪些?大致可以划分为以下几点。 半自动化越位技术 比赛用球Al Rihla 球场智能空调 可持续利用的体育场 便利的数字设施和App 针对于黑科技太多了,所以本文主要是侧重点去讲述分析一下【半自动化越位技术】与【比赛用球Al Rih ......
技术 专题 用球 世界 原理

一文掌握MyBatis的动态SQL使用与原理

摘要:使用动态 SQL 并非一件易事,但借助可用于任何 SQL 映射语句中的强大的动态 SQL 语言,MyBatis 显著地提升了这一特性的易用性。 本文分享自华为云社区《MyBatis详解 - 动态SQL使用与原理》,作者:龙哥手记 。 动态 SQL 是 MyBatis 的强大特性之一。如果你使用 ......
原理 MyBatis 动态 SQL

做算法的这一年——2022年个人年终总结

做算法的这一年——2022年个人年终总结 前言 ​ 按照往年的惯例和园子的规矩,随着网易云音乐以及众多App的个人使用报告陆续出来,也到了自己该做个全年复盘总结的时候了。 这一年想起来好像是做了很多事情,但又好像什么都没有做,对着电脑想了许久,要怎么用一句话或者一个字来概括这一整年的过往与历程,奈何 ......
算法 个人 2022

基于K-means聚类算法进行客户人群分析

摘要:在本案例中,我们使用人工智能技术的聚类算法去分析超市购物中心客户的一些基本数据,把客户分成不同的群体,供营销团队参考并相应地制定营销策略。 本文分享自华为云社区《基于K-means聚类算法进行客户人群分析》,作者:HWCloudAI 。 实验目标 掌握如何通过机器学习算法进行用户群体分析; 掌 ......
算法 人群 K-means 客户 means

贪心算法Dijkstra

Dijkstra 最短路径问题 : 给定一个带权有向图 G = (V, E, W),同时给定一个源点 u (u ∈ V),我们要找出从源点 u 出发到其它各点的最短路径距离,并得出这些最短路径的具体路径有哪些边构成。 其实我们要求的就是从 源点 u 出发到 其它各点 str的最短路径所组成的路线网络 ......
算法 Dijkstra

基于 Traefik 的激进 TLS 安全配置实践

前言 Traefik是一个现代的HTTP反向代理和负载均衡器,使部署微服务变得容易。 Traefik可以与现有的多种基础设施组件(Docker、Swarm模式、Kubernetes、Marathon、Consul、Etcd、Rancher、Amazon ECS...)集成,并自动和动态地配置自己。 ......
Traefik TLS

遗传算法解决函数优化问题

遗传算法解决函数优化问题 作者: Cukor丘克 环境: MatlabR2020a + vscode 为什么要学习遗传算法 为什么要学习遗传算法,或者说遗传算法有什么厉害的地方。例如求解以下函数优化问题: $min f(x_1, x_2)=x^2_1+x^2_1+25*(sin^2x_1+sin^2 ......
算法 函数 问题