XOR
在Vue3+TypeScript 前端项目中使用事件总线Mitt
事件总线Mitt使用非常简单,本篇随笔介绍在Vue3+TypeScript 前端项目中使用的一些场景和思路。我们在Vue 的项目中,经常会通过emits 触发事件来通知组件或者页面进行相应的处理,不过我们使用事件总线Mitt来操作一些事件的处理,也是非常方便的。 ......
设计模式(二十四)----行为型模式之迭代器模式
1 概述 定义: 提供一个对象来顺序访问聚合对象中的一系列数据,而不暴露聚合对象的内部表示。 2 结构 迭代器模式主要包含以下角色: 抽象聚合(Aggregate)角色:定义存储、添加、删除聚合元素以及创建迭代器对象的接口。 具体聚合(ConcreteAggregate)角色:实现抽象聚合类,返回一 ......
基于PaddleOCR的多视角集装箱箱号检测识别
本项目做了基于PaddleOCR的多视角集装箱箱号检测识别,使用少量数据分别训练检测、识别模型,最后将他们串联在一起实现集装箱箱号检测识别的任务。其中集装箱号是指装运出口货物集装箱的箱号,填写托运单时必填此项。标准箱号构成基本概念:采用ISO6346(1995)标准。 ......
机器学习算法(一): 基于逻辑回归的分类预测
逻辑回归(Logistic regression,简称LR)虽然其中带有"回归"两个字,但逻辑回归其实是一个分类模型,并且广泛应用于各个领域之中。虽然现在深度学习相对于这些传统方法更为火热,但实则这些传统方法由于其独特的优势依然广泛应用于各个领域中。 ......
windows 系统下 workerman 在同一个运行窗口中开启多个 websocket 服务
🎈 开启多个 ws 服务失败 正常情况下,如果你想开启多个 websocket 服务的话 只要在一个文件中,输入 new Worker 两次,监听不同端口,使用 Worker::runAll() 命令即可 但是你会发现在在 windows 中无法在一个文件中同时监听两个 websocket 服务, ......
StyleGAN 生成 AI 虚拟人脸,再也不怕侵犯肖像权
🎈 什么是 StyleGAN GAN 是机器学习中的生成性对抗网络,目标是合成与真实图像无法区分的人工样本,如图像。即改变人脸图像中的特定特征,如姿势、脸型和发型,GAN 的主要挑战就是如何图像变得更加逼真。 StyleGAN 是一种基于样式的 GAN 的生成器体系结构,是一个强大的可以控制生成图 ......
StyleGAN 调整面部表情,让虚拟人脸更生动
🎈 人脸表情 通过上一篇文章 StyleGAN 生成的人脸:https://www.cnblogs.com/tinygeeker/p/17236264.html 人脸图片都是比较中规中矩的,如果能够给人脸增加一些表情的话,会让人脸显得更加的自然和逼真 那么调整人脸的年龄、颜值、笑容、情绪等细节,就 ......
三天吃透Spring Cloud面试八股文
本文已经收录到Github仓库,该仓库包含计算机基础、Java基础、多线程、JVM、数据库、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服务、设计模式、架构、校招社招分享等核心知识点,欢迎star~ Github地址:https://github.c ......
vulnhub靶场之BLUESMOKE: DEVRANDOM2|bluesmoke
准备: 攻击机:虚拟机kali、本机win10。 靶机:Bluesmoke: devrandom2,下载地址:https://download.vulnhub.com/bluesmoke/Bluesmoke.ova,下载后直接vbox打开即可。 知识点:ssti注入漏洞、shell反弹、ffuf扫描 ......
文心一言,通营销之学,成一家之言,百度人工智能AI大数据模型文心一言Python3.10接入
“文心”取自《文心雕龙》一书的开篇,作者刘勰在书中引述了一个古代典故:春秋时期,鲁国有一位名叫孔文子的大夫,他在学问上非常有造诣,但是他的儿子却不学无术,孔文子非常痛心。 一天,孔文子在山上遇到了一位神仙,神仙告诉他:“你的儿子之所以不学无术,是因为你没有给他灌输文心,让他懂得文学的魅力和意义。”孔 ......
使用ASP.NET CORE SignalR实现APP扫描登录
使用signalr实现APP扫码登录 1. 背景介绍 在移动化时代,web开发很多时候都会带着移动端开发,这个时候为了减少重复输入账号密码以及安全性,很多APP端都会提供一个扫码登录功能,web端生成二维码,APP扫码直接登录web端,无需再次输入账号密码。 2. 实现流程图 3. 代码运行环境 A ......
ElasticSearch 实现分词全文检索 - 搜素关键字自动补全(Completion Suggest)
ES使用Completion Suggest 做关键字自动补全时,实际应用中搜索性能更加高效,建议多开一个子字段,如下示例,假设要根据title字段做关键字自动补全,不要改原字段的类型,多开一个子字段title.suggest,类型设置为completion,然后之后的suggest针对title.... ......
vivo 短视频用户访问体验优化实践
作者:vivo 互联网运维团队- Hu Tao 本文介绍了vivo短视频用户访问体验优化的实践思路,并简单讲解了实践背后的几点原理。 一、背景 我们平时在看抖音快手视频的时候,如果滑动到某个视频画面一直几s不动的时候,大概率就会划走了,所以在短视频项目中,画面卡顿是非常影响用户体验的,启播速度越快, ......
Tars-Java网络编程源码分析
作者:vivo 互联网服务器团队- Jin Kai 本文从Java NIO网络编程的基础知识讲到了Tars框架使用NIO进行网络编程的源码分析。 一、Tars框架基本介绍 Tars是腾讯开源的支持多语言的高性能RPC框架,起源于腾讯内部2008年至今一直使用的统一应用框架TAF(Total Appl ......
Go语言 :使用简单的 for 迭代语句进行 TDD 驱动测试开发与 benchmark 基准测试
前提准备与运行环境请参考:(新手向)在Linux中使用VScode编写 "Hello,world"程序,并编写测试-Ubuntu20.4 在 Go 中 for 用来循环和迭代, Go 语言没有 while,do,until 这几个关键字,我们只能使用 for。这也算是件好事! 让我们来为一个重复字符 ......
使用 GVM 搭建可维护的 Golang 开发环境
当你想完成 Golang 开发环境的便捷安装以及随时更新和保障多个版本的 Golang 共存的时候,就需要使用到 Golang 的专门版本管理工具 ——gvm 本篇随笔记录了在 Ubuntu 下安装使用 gvm 的过程 Gvm 的下载 我们可以使用国内镜像下载包含安装脚本的仓库代码,然后直接执行安装 ......
从头开始——重新布置渗透测试环境的过程记录(From Windows To Mac)
因为疫情和工作的原因,2022年整整一年我基本没有深度参与过网络安全和渗透测试相关的工作。 背景:之前因为使用习惯,一直使用的是ThinkPad X1 Extreme,可联想的品控实在拉胯,奈何ThinkPad使用了不到两年就出现了键盘失灵、间歇卡顿等等问题。后续购入了HP的暗影精灵8 Plus,可 ......
了解CSS Module作用域隔离原理
CSS Module出现的背景 我们知道,Javascript发展到现在出现了众多模块化规范,比如AMD、CMD、 Common JS、ESModule等,这些模块化规范能够让我们的JS实现作用域隔离。但CSS却并没有这么幸运,发展到现在却一直没有模块化规范,由于CSS是 根据选择器去全局匹配元素的 ......
手撸图片压缩工具
目前由于功能比较简单,没有进行前后端拆分,主要技术点:SpringBoot、WebSocket、webjars、Vue、Element-UI、axios、jszip,核心压缩库是 Thumbnailator 提供压缩支持。源代码已经在 码云 star 公开。欢迎各位大佬批评。 ......
一文了解清楚kafka消息丢失问题和解决方案
前言 今天分享一下kafka的消息丢失问题,kafka的消息丢失是一个很值得关注的问题,根据消息的重要性,消息丢失的严重性也会进行放大,如何从最大程度上保证消息不丢失,要从生产者,消费者,broker几个端来说。 消息发送和接收流程 kafka生产者生产好消息后,会将消息发送到broker节点,br ......
前端性能精进之浏览器(五)——JavaScript
JavaScript 是一种通过解释执行的高级编程语言,同时也是一门动态、弱类型的直译脚本语言,适合面向对象(基于原型)和函数式的编程风格。 直译语言可以直接在解释器中运行,而与直译语言相对应的编译语言(例如 C++),要先将代码编译为机器码,然后才能运行。 不过直译语言有一个弱点,就是如果有一条不 ......
Windows 系统下怎么获取 UDP 本机地址
Windows 系统下怎么获取 UDP 本机地址 我们知道 UDP 获取远端地址非常简单,通常接口 recvfrom 就可以直接获取到远端的地址和端口;如果获取 UDP 的本机地址就需要点特殊处理了,特别是本机有多网卡的情况下,我们想知道是那个 IP 接收的 UDP 包。对于 linux 我们知道, ......
.Net7 GC标记阶段代码的改变
前言 由于业务需求,在探究.Net7的CLR,发现了一个不通的地方,也就是通过GCInfo获取到了对象之后。它并没有在GcScanRoots(对象扫描标记)里面对它进行标记,那么如果没有标记这个对象如何被计划阶段构建呢?仔细研读,发现它跟之前的代码之所以不同,是因为它把标记抽取出来,另外形成一个数组 ......
【ASP.NET Core】在node.js上托管Blazor WebAssembly应用
由于 Blazor-WebAssembly 是在浏览器中运行的,通常不需要执行服务器代码,只要有个“窝”能托管并提供相关文件的下载即可。所以,当你有一个现成的 Blazor wasm 项目,没必要用其他语言重写,或者你不想用 ASP.NET Core 来托管(有些大材小用了),就可以试试用 node ......
我的十年程序员生涯--开篇
--以此纪念,我的青春十年,我的工作十年,我的程序员十年。 时间过得真快,转眼间来到了2023年,记得大学毕业是2012年,不用数就知道,过去十年了,我工作十年了,是一个职场老鸟了,我作为程序员十年了,是一个“资深”程序员了,细心的读者看到资深二字我加了引号,大家都知道是什么意思。 人生能有多少个十 ......
我的十年程序员生涯--考研失利,倒也还好
作为08届的本科生,我参加了12年的考研。 在参加考研的那一年,也就是2011年,曾经有过犹豫是选择考研还是选择直接就业,说实话当时没有经过认真的思考,没有考虑多久,就加入了考研大军,有跟大流的情况,因为周围人考研的太多。我记得当时我所在的班级,大约有50人左右,其中选择考研的人数占了三分之二,在当 ......
.NET应用系统的国际化-基于Roslyn抽取词条、更新代码
上篇文章我们介绍了 VUE+.NET应用系统的国际化-多语言词条服务 系统国际化改造整体设计思路如下: 提供一个工具,识别前后端代码中的中文,形成多语言词条,按语言、界面、模块统一管理多有的多语言词条 提供一个翻译服务,批量翻译多语言词条 提供一个词条服务,支持后端代码在运行时根据用户登录的语言,动 ......
.NET应用系统的国际化-多语言翻译服务
上篇文章我们介绍了 .NET应用系统的国际化-基于Roslyn抽取词条、更新代码 系统国际化改造整体设计思路如下: 提供一个工具,识别前后端代码中的中文,形成多语言词条,按语言、界面、模块统一管理多有的多语言词条 提供一个翻译服务,批量翻译多语言词条 提供一个词条服务,支持后端代码在运行时根据用户登 ......
前端设计模式——模板方法模式
模板方法模式(Template Method Pattern):定义一个行为的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个行为的结构即可重定义该行为的某些特定步骤。 这些步骤被称为“具体操作”(Concrete Operations),而整个行为的结构和顺序则被称为“模板方法”(T ......