为什么要把类设置成密封?

前几天笔者提交了关于FasterKvCache的性能优化代码,其中有一个点就是我把一些后续不需要继承的类设置为了sealed密封类,然后就有小伙伴在问,为啥这个地方需要设置成sealed? 提交的代码如下所示: 一般业务开发的同学可能接触密封类比较少,密封类除了框架设计约束(不能被继承)以外,还有一

qiankun微前端实践

为什么要使用微前端 微前端架构具备以下几个核心价值: 技术栈无关 主框架不限制接入应用的技术栈,微应用具备完全自主权 独立开发、独立部署 微应用仓库独立,前后端可独立开发,部署完成后主框架自动完成同步更新 增量升级在面对各种复杂场景时,我们通常很难对一个已经存在的系统做全量的技术栈升级或重构,而微前

scanf、cin及其优化、快读性能测试

为了让大家了解C++各种IO方式的性能,于是就有了这篇文章。 本次测试采取的数据均为 \(10^6\) 个不超过 \(10^8\) 随机正整数。 测试代码: #include using namespace std; int x; int main(){ freopen

兼容sentry协议的轻量级监控,glitchtip

前言 上一篇文章说了重启 sentry 的事 因为过程太折腾了,一度想过放弃 sentry 换成其他比较轻量级的开源监控系统 这不就给我找到了另外俩个 https://glitchtip.com/ https://www.highlight.io/ 这次就来试试这个 glitchtip 用了之后才发

C# 开发技巧 轻松监控方法执行耗时

前言 MethodTimer.Fody 是一个功能强大的库,可以用于测量 .NET 应用程序中的方法的执行时间。允许你在不修改代码的情况下,自动地测量和记录方法的执行时间。 这个工具是基于.NET的 weaving 技术,通过修改IL(Intermediate Language,中间语言)代码来插入

周边上新,T恤上星:博客园T恤幸运闪系列,一款上架预售,一款上照预览

今天发布2款博客园T恤,一款上架预售,见上图中的前两张照片;一款上照预览,见上图中的后两张照片,未敢上架,先看看大家的评价。在第三版星星款设计被放弃后,我们痴星不改,还是想推出带星星的幸运闪系列T恤

KU FPGA FLASH boot失败debug

原因 新板子回来后,测试flash 烧录正常,但是无法BOOT,此时SPI设置为X4模式,使用内部时钟,速度90M。烧录过程不报错,校验也正常。 FLASH理论支持最大速度108M,90M应该还好。另外板卡预留了EMCCLK外部时钟模式,速率100M 也不可行。 此时约束如下: set_proper

前端开发个人职业发展的四个阶段,你处于哪里?

前言 前段时间跟一位前辈聊到前端职业发展该怎么去规划这个问题。他说到的其中几个点我觉得非常好: 第一是要有清晰的自我认知,知道自己在一个团队或者在一个项目中能发挥怎样的价值,不骄傲自大也不要妄自菲薄;

浅谈:HTTP 和 HTTPS 通信原理

1.HTTP基本概念 1.1 HTTP是什么? HTTP (超文本传输协议)协议被用于在 Web 浏览器和网站服务器之间传递信息, HTTP 协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了 Web 浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此, HTTP 协议

WPF使用AppBar实现窗口停靠,适配缩放、全屏响应和多窗口并列(附封装好即开即用的附加属性)

在吕毅大佬的文章中已经详细介绍了什么是AppBar: WPF 使用 AppBar 将窗口停靠在桌面上,让其他程序不占用此窗口的空间(附我封装的附加属性) - walterlv 即让窗口固定在屏幕某一边,并且保证其他窗口最大化后不会覆盖AppBar占据的区域(类似于Windows任务栏)。 但是在我的

设计模式之适配器模式(学习笔记)

定义 适配器模式是一种结构型设计模式,它允许将一个类的接口转换为客户端希望的另一个接口。适配器使得原本由于接口不兼容而不能一起工作的类可以协同工作。通过创建适配器类,可以将现有类的接口转换成目标接口,从而使这些类能够在一起工作。 为什么使用适配器模式 兼容性 适配器模式能够解决由于接口不兼容而无法直

设计模式之工厂模式(学习笔记)

定义 工厂方法模式是一种创建型设计模式,它定义了一个用于创建对象的接口,但由子类来决定实例化哪一个类。工厂方法使得类的实例化延迟到子类,这样可以让客户端在不需要知道具体类的情况下创建对象。工厂方法模式通过使用继承和多态性,允许子类来控制对象的创建方式,能够更好地应对对象创建的复杂性和变化性。 为什么

玄机-第一章 应急响应- Linux入侵排查

玄机-第一章 应急响应- Linux入侵排查 简介 账号:root 密码:linuxruqin ssh root@IP 1.web目录存在木马,请找到木马的密码提交 2.服务器疑似存在不死马,请找到不死马的密码提交 3.不死马是通过哪个文件生成的,请提交文件名 4.黑客留下了木马文件,请找出黑客的服...

SQL Thinking

s2下半年我在内部有一次部门级别的技术分享会,以本文内容分享为主。 其实有很多人问过我相同的问题,遇到需要改写的慢sql,不知道怎么改,改好了以后也不知道等不等价?不等价了也不知道错在哪?这个要怎么破? 其实都是因为绝大多数人没有做过开发,看不懂sql,不会写sql,没有sql思维,下面通过几个案例

K8S 中的 CRI、OCI、CRI shim、containerd

哈喽大家好,我是咸鱼。 好久没发文了,最近这段时间都在学 K8S。不知道大家是不是和咸鱼一样,刚开始学 K8S、Docker 的时候,往往被 CRI、OCI、CRI shim、containerd 这些名词搞得晕乎乎的,不清楚它们到底是干什么用的。所以今天,咸鱼打算借这篇文章来解释一下这些名词,帮助

Azure Function 时区设置

一,引言 Azure Function 上的默认使用UTC 运行程序,我们在获取时间,或者通过时间执行某些逻辑时,返回UTC 时间,导致业务数据不正常,由于 Azure Function 是微软提供的 IaaS 托管服务,我们无法登录服务器来修改时区,那么我们今天将来实践操作,如何通过配置达到更改

SMOTE与SMOGN算法R语言代码

本文介绍基于R语言中的UBL包,读取.csv格式的Excel表格文件,实现SMOTE算法与SMOGN算法,对机器学习、深度学习回归中,训练数据集不平衡的情况加以解决的具体方法~

SSRF结合Redis未授权的打法

目录SSRF + Redis未授权 案例怎么构造 redis 数据包?Reference SSRF不难理解,服务器端请求伪造(英语:Server-side Request Forgery,简称SSRF)是攻击者滥用服务器功能来访问或操作无法被直接访问的信息的方式之一。 服务器端请求伪造攻击将域中的不

Netcode for Entities里如何对Ghost进行可见性筛选(1.2.3版本)

一行代码省流:SystemAPI.GetSingleton() 当你需要按照区域、距离或者场景对Ghost进行筛选的时候,Netcode for Entities里并没有类似FishNet那样方便的过滤方式,需要获取一个过滤专用的组件:GhostRelevancy。 这个结构的内容不多,但功能很强大

使用libzip压缩文件和文件夹

简单说说自己遇到的坑: 分清楚三个组件:zlib、minizip和libzip。zlib是底层和最基础的C库,用于使用Deflate算法压缩和解压缩文件流或者单个文件,但是如果要压缩文件夹就很麻烦,主要是不知道如何归档,在zip内部形成对应的目录。这时就需要用更高级别的库,也就是minizip或li