vue3+TypeScript
1. Vue3简介
2020年9月18日,Vue.js发布版3.0版本,代号:One Piece(n
经历了:4800+次提交、40+个RFC、600+次PR、300+贡献者
官方发版地址:Release v3.0.0 One Piece · vuejs/core
截止2023年10月,最新的公开版本为:3.3.4
1.1. 【性能的提升】
打包大小减少41%。
初次渲染快55%, 更新渲染快133%。
内存减少54%。
1.2.【 源码的升级】
使用Proxy代替defineProperty实现响应式。
重写虚拟DOM的实现和Tree-Shaking。
1.3. 【拥抱TypeScript】
Vue3可以更好的支持TypeScript。
1.4. 【新的特性】
Composition API(组合API):
setup
ref与reactive
computed与watch
……
新的内置组件:
Fragment
Teleport
Suspense
……
其他改变:
新的生命周期钩子
data 选项应始终被声明为一个函数
移除 ...
YOLOv8 模型训练
1、模型训练1.1、安装anaconda或miniconda1、anaconda
下载anaconda,启动这个软件,新建一个虚拟环境:
地址: https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.0.0-Windows-x86_64.exe
2、miniconda
地址: https://repo.anaconda.com/miniconda/Miniconda3-latest-Windows-x86_64.exe环境变量:
123C:\ProgramData\miniconda3 C:\ProgramData\miniconda3\Scripts C:\ProgramData\miniconda3\Library\bin
1.2、创建虚拟环境123456789conda create -n yolo8 python==3.8 # 查看现有环境conda env list# 激活环境 conda activate yolo8# 激活失败 (执行该命令后重新进入cmd)conda init cmd.ex ...
kubernetes
1、kubernetes基础1.1、简介Kubernetes 是一个开源的容器编排引擎和容器集群管理工具,用来对容器化应用进行自动化部署、 扩缩和管理。Kubernetes 这个名字源于希腊语,意为“舵手”或“飞行员”。k8s 这个缩写是因为 k 和 s 之间有8个字符。 Google 在 2014 年开源了 Kubernetes 项目
从V1.24开始,kubernetes默认容器运行使用containerd,不再使用docker
1.2、云原生Kubernetes 是 CNCF 托管的第一个开源项目。因此现在提到云原生,往往我们都把它与kubernetes联系起来。使用Java、Go、PHP、Python等语言开发的应用我们称之为原生应用,在设计和开发这些应用时,使他们能够运行在云基础设施(或kubernetes)上,从而使应用具备可弹性扩展的能力,我们称之为云原生应用。我们可以将云原生理解为以容器技术为载体、基于微服务架构思想的一套技术体系和方法论
1.3、kubernetes架构一个Kubernetes集群至少包含一个控制平面(control plane),以及一个或多个工 ...
html + css
1、HTMLhtml:HyperTxt Markup Language 超文本标记语言
1.1、html文档声明html5
1<!DOCTYPE html>
html4
12<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
1.2、html字符编码1234 <head> <meta charset="UTF-8"> <title>标题</title> </head>
1.3、设置语言1<html lang="zh-CN"></html>
1.4、排版标签1.4.1、标题标签h1,h2,h3,h4,h5,h6一般一个页面h1只有一个h1-h6不允许嵌套
1.4.2、段落标签p :段落div : 容器
p ...
SpringCloud Alibaba
1、服务注册与发现 - nacos1.1、nacos注册中心部署单机模式 - 用于测试和单机试用。集群模式 - 用于生产环境,确保高可用。多集群模式 - 用于多数据中心场景
1.1.1、单机部署1、下载地址:https://nacos.io/,解压2、修改配置conf/spplication.properties
12345spring.datasource.platform=mysqldb.num=1db.url.0=jdbc:mysql://127.0.0.1:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTCdb.user.0=rootdb.password.0=root
3、初始化数据库
执行conf下 mysql-schema.sql 初始化数据库
4、修改bin/starup.c ...
docker
1、概念1.1、基本概念Docker本身是一个容器运行载体或称之为管理引擎。我们把引用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就是image镜像文件。只有通过这个镜像文件才能生成Docker容器实例
比较Docker和传统虚拟化方式的不同之处: 1.传统虚拟机技术是虚拟出一套硬件后,在其上运行一个完整操作系统,在该系统上再运行所需要应用进程; 2.容器内的应用进程直接运行于宿主的内核,容器内没有自己的内核且也没有进行硬件虚拟。因此容器要比传统虚拟机更为轻便; 3.每个容器之间互相隔离,每个容器有自己的文件系统,容器之间进程不会相互影响,能区分计算资源
1.2、Docker组成
们发现在安装docker时,不仅会安装docker engine与docker cli工具,而且还会安装containerd,这是为什么呢?
Docker最初是一个单体引擎,主要负责容器镜像的制作、上传、拉取及容器的运行及管理。随着容器技术的繁荣发展,为了促进容器技术相关的规范生成和Docker自身项目的发展,Docker将单体引擎拆分为三部分,分别为runC、containerd和 ...
Arthas调试线上代码技巧
1、背景1、测试没问题,但生产环境没有生效,需要查看生产环境代码是否更新上去(反编译)2、在没有日志的情况下,我们不知道客户端请求过来的参数是什么,临时加接口日志再发版是一件很复杂的事情(监视方法执行)3、有时候我们发现应用卡住了, 通常是由于某个线程拿住了某个锁, 并且其他线程都在等待这把锁造成的(thread -b)4、需要快速定位应用的热点,生成火焰图(profile)5、进行性能调优时需要在代码里添加大量计时器代码,还要重新部署,太麻烦(trace)
2、安装其实就是下载一个jar包
12curl -O https://arthas.aliyun.com/arthas-boot.jarjava -jar arthas-boot.jar
启动之后,就会列出当前系统上所有的java进程,输入进程前面的序号,连接到相应的应用进程。
3、反编译代码1jad --source-only com.controller.HomePageController getSaleData --lineNumber false
注意:访问类的静态成员时(属性或方法),才会进行类加载。所以想要反 ...
PBRTQC
1、基本概念1.1、PBRTQC基于患者样本的实时质量控制(patient-based real-time quality control,PBRTQC)系统是一种基于统计学以及数学模型的质量控制方法,是根据患者样本检测结果,利用统计学模型建立的一套以实时监测实验室检测质量的模型或者规则,是医学检验实验室提高质量控制体系的重要发展方向,最早由Hoffmann和Waid于1965年提出
1.2、PBRTQC模型
五个关键参数:上截断值(UTL)、下截断值(LTL)、浮动窗口大小(N)、上控制限(UCL)、下控制限(LCL)
排除规则:对于偏态分布以及存在极端值的分布数据,应选择一个适宜的截断值区间,将在截断值区间外的数据进行缩尾或者去除
SPC算法:浮动均值(MA)、浮动分位数(MQ)、指数加权移动平均值(EWMA)用于监测定值误差(CE)和百分比误差(PE);浮动标准差(MovSD)、浮动非正常值患者数(MovSO)用于监测随机误差(RE)
控制限:1. 分布法:通过分析历史数据生成的PBRTQC计算值,得出计算值的均值与标准差,根据正态分布或其它分布特征计算出对应的控制限 2. ...
spring(Boot)扩展点整理
SpringBoot的主要功能都是依靠它内部很多的扩展点来完成的,今天来做个总结和记录
1、SpringApplicationRunListener1.1、基本概念从命名我们就可以知道它是一个监听者,分析springboot启动流程我们会发现,它其实是用来在整个启动流程中接收不同执行点事件通知的监听者,SpringApplicationRunListener接口规定了SpringBoot的生命周期,在各个生命周期广播相应的事件,调用实际的ApplicationListener类。对于开发者来说,基本没有什么常见的场景要求我们必须实现一个自定义的SpringApplicationRunListener
12345678910111213public interface SpringApplicationRunListener { //刚执行run方法时 void started(); //环境建立好时候 void environmentPrepared(ConfigurableEnvironment environment); //上下文建立 ...
雪花算法(Snowflake)原理分析
1、概念雪花算法(Snowflake)是一种生成分布式全局唯一ID的算法,生成的ID称为Snowflake IDs或snowflakes。这种算法由Twitter创建,并用于推文的ID
雪花算法几个特性
生成的ID分布式唯一和按照时间递增有序,毫秒数在高位,自增序列在低位,整个ID都是趋势递增的。
不依赖数据库等三方系统,稳定性更高,性能非常高的。
可以根据自身业务特性分配bit位,非常灵活。
2、snowflake算法实现细节2.1、拆解64bit位snowflake生成的id通常是一个64bit数字,java中用long类型。
1、1bit-不用,因为二进制中最高位是符号位,1表示负数,0表示正数,生成的id一般都是用整数,所以最高位固定为0.2、41bit-用来记录时间戳(毫秒).41位可以表示2^41−1个数字,如果只用来表示正整数(计算机中正数包含0),可以表示的数值范围是:0 至 2^41-1,减1是因为可表示的数值范围是从0开始算的,而不是1。也就是说41位可以表示2^41-1个毫秒的值,转化成单位年则是:(2^41−1)/(1000∗60∗60∗24∗3 ...