NOT

SpringBoot线程池和Java线程池的实现原理

使用默认的线程池 方式一:通过@Async注解调用 public class AsyncTest { @Async public void async(String name) throws InterruptedException { System.out.println("async" + na ......
线程 SpringBoot 原理 Java

AOP底层原理-Cglib动态代理

public class App { public static void main(String[] args) { UserService userService = UserServiceCglibProxy.createUserServiceCglibProxy(UserServiceImp ......
底层 原理 动态 Cglib AOP

STAR WARS

挖坑:以此记录一下要看的和已经看了的星球大战及其衍生作品; 这玩意还是真是可以够我看好久,这学期前半段就是这样荒废的。 电影 前传 正传 后传 动画 剧 ......
STAR WARS

Nginx 通过 Cookie 做灰度就这么简单

由于业务需要,要做灰度发布测试,刚开始考虑通过 IP 来做判断,分发不同的后端,但是由于 IP 不好确定,有的客户端 IP 不固定,所以考虑用 cookie 来做 逻辑很简单,如下图: 在 nginx 做这个很简单,两个方法,map 或 if 首先看 map 怎么做 为了模拟环境,我又不想多开服务器 ......
灰度 Cookie Nginx

磁盘io问题

iotop可以看到磁盘io占用情况: sudo iotop -oaP (感觉是累计的)左右箭头用来改变排序,默认按照 IO 排序,可以切换为读或者写排序等等。 pidstat也可以实时: 按照读排序: sudo pidstat -d | sort -nr -k 4 | head -10 按照写排序: ......
磁盘 问题

C#数据序列化研究:改进版KLV

所谓KLV即Key-Length-Value,以【键-数据长度-数据】的形式将数据序列化成字节流, 这是一种高性能和兼容性的数据序列化方案,,缺点就是用起来很麻烦, 其出现的需求场景如下: 1,硬件和云端的数据交互,最开始是以流的形式顺序写入数据,但是由于版本迭代,数据字段难免出现新增插入更新移除等 ......
序列 数据 KLV

消息队列常见的问题

消息队列的用途 概要的说有三点 解耦 异步 错峰,但使用了消息队列会导致系统可用性降低和复杂性的增加。 常见的消息队列的特点 1、吞吐量 kafka和RocketMQ要比ActiveMQ和RabbitMQ高一个数量级。 2、时效性 RabbitMQ是基于erlang设计,并发能力很强,性能和延时都很 ......
队列 常见 消息 问题

在2023年的第一个100天之际,幡然醒悟(随笔)

我可能确实对编程有一定的兴趣,也确实对互联网的高薪有着极强的向往。 但我确实不太适合干程序员了。 所有的一切都是自己摸索是无法成为合格的程序员的。也实在向往更自由一点的人生了。 一开始我会抱怨实验室,抱怨导师,没能给我技术性的指导(我的导师给了我遥感方面技术的指导,但我们实验室目前主流使用深度学习方 ......
之际 随笔 2023 100

MySQL 5.6.39 修改 root 密码不生效

记一次MySQL 修改 root 密码不生效的问题,修改密码后新密码不生效,依旧只能使用旧密码登录,改了个寂寞。 一、版本 MySQL 5.6.39 二、问题 使用 update 命令修改密码: update user set password=password('新密码') where user= ......
密码 MySQL root 39

政企办公数字化转型为什么需要统一工作门户?

政府部门和企业在数字化转型后,内部都会使用多套不同的信息系统和应用,这些系统和应用相互之间都存在信息孤岛和数据孤岛的问题,政企内部人员在使用的时候不仅需要来回切换登录使用,还很容易出现信息遗漏和处理不及时的情况,不仅阻碍了办公效率的提升,也阻碍了政企数字化转型的步伐。基于以上问题,政企在办公数字化转 ......
政企 数字 门户

Javascript 原型与原型链

在Brendan Eich设计Javascript时,借鉴了Self和Smalltalk这两门基于原型的语言。之所以选择基于原型的面向对象系统,是因为Brendan Eich一开始没有打算在JavaScript中加入类的概念,其设计初衷是为非专业的开发人员提供一个方便的工具,使其使用尽可能简单、易学 ......
原型 Javascript

Node多版本安装一键切换

简介 GNVM 使用 Go 语言编写的 Node.js 多版本管理器。 是一个简单的 Node.js 多版本管理器,类似 nvm nvmw nodist 。 内容摘自官网,侵权联系删除 项目地址:https://github.com/kenshin/gnvm 官网:http://ksria.com/ ......
版本 Node

Go语言中协程(goroutine)的介绍和使用

Go 语言中协程(goroutine)的介绍和使用 Go 语言作为一种高效、简洁、并发的编程语言,其特色之一就是支持协程。协程是一种轻量级的线程,其优点在于占用资源少、切换成本低,能够高效地实现并发操作。在 Go 语言中,协程的使用非常方便,本文将介绍协程的基本概念和使用方法,以及如何通过协程实现高 ......
goroutine 语言

每日两题

2023.4.11 ......

解Bug之路-应用999线升高

前言 监控指标诚然是发现问题于微末之时的极佳手段,但指标往往有其表达的极限。在很多情况下,单独看一个黄金指标并不能表征系统的健康程度,反而有可能被其迷惑,进而忽略相关问题。(本文所提及的Linux Kernel源码版本为4.18.10) Bug现场 某天中午,某应用的999线突然升高。由于是个QPS ......
Bug 999

R语言基础

一、R初识 #R与Rstudio的关系#####电脑上先装R再装RStudio# --R是运行环境。某些包只能在特定的R版本上安装,所以有时要安装以前版本的R进行切换。# --RStudio是开发环境,推荐下载最新版本并及时更新。R版本切换:tools-global options-R versio ......
语言基础 语言 基础

结对编程——自定义四则运算测试

本次结对编程由本人和2152814陈嘉盛使用python共同完成。 程序代码: import random import operator def main(): global t ops = {'+': operator.add, '-': operator.sub, '*': operator. ......
四则

终于知道centernet的sigmoid为什么需要加clamp了

终于知道centernet的sigmoid为什么需要加clamp了, 由于我工程训练报错debug才知道,在计算focalloss的时候, model_out = model_out.sigmoid() pos_loss = -torch.log(model_out) * torch.pow(1 - ......
centernet sigmoid clamp

索引算法的应用

索引算法是计算机科学中常见的一类算法,旨在优化数据的查找和访问效率,从而提高计算机程序的性能。 通常情况下,当我们需要查找或获取某个数据时,如果数据量很大,那么在没有索引的情况下,需要遍历整个数据集才能找到所需的数据,这会导致查询时间过长和性能下降。而索引算法则是为了解决这个问题,通过构建和维护索引 ......
算法 索引

堆:剑指 Offer 40. 最小的k个数

题目描述: 输入整数数组 arr ,找出其中最小的 k 个数。例如,输入4、5、1、6、2、7、3、8这8个数字,则最小的4个数字是1、2、3、4。 限制: 0 <= k <= arr.length <= 10000 0 <= arr[i] <= 10000 题解:本题使用排序算法解决最直观,对数组 ......
个数 Offer 40

【IDA PRO权威指南】四

#IDA TIL文件 IDA当中所有数据类型和函数原型信息都存储在TIL文件中。 ##加载新的TIL文件 在types中按下insert,选择要加载的til文件,该文件包含的所有结构体定义都被添加到标准结构体列表当中。 ##共享TIL文件 前面提过,idb实际上是一个归档文件用于保存不使用的数据库组 ......
权威 指南 IDA PRO

65

60、HashMap和Hashtable的区别 (条理上还需要整理,也是先说相同点,再说不同点) HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,在只有一个线程访问的情况下,效率要 ......
65

71

66、Collection 和 Collections的区别。 Collection是集合类的上级接口,继承与他的接口主要有Set 和List. Collections是针对集合类的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。 67、Set里的元素是不能重复的,那么 ......
71

“西氢东送”,我国首个纯氢长输管道项目正式启动

今天,我国首个纯氢长输管道项目正式启动,这是全国最长距离的输氢管道。 4月10日,中国石化宣布,“西氢东送”输氢管道示范工程已被纳入《石油天然气“全国一张网”建设实施方案》,标志着我国氢气长距离输送管道进入新发展阶段。“西氢东送”起于内蒙古自治区乌兰察布市,终点位于北京市的燕山石化,管道全长400多 ......
管道 我国 项目

72、神奇的叠加-图层工具

一:图层缩略图 二:因为这里是背景层,有把锁的,所以这里是不能随便移动的 ......
工具

巧用Nginx配置解决跨域问题

页面nginx配置 1,前端页面放在域名根目录,比如,http://www.xuecheng.com/ ,对应的nginx配置: #门户 location / { alias D:/Z_lhy/SpringCloud/xuecheng_online/www/xc-ui-pc-static-porta ......
问题 Nginx

米思齐伴侣(高配版)驱动安装及使用

米思齐伴侣可以让我们方便的使用Mixly编程软件,只需要在电脑上安装新版微软edge浏览器或者谷歌浏览器或者其他谷歌内核的浏览器(360极速浏览器、华为浏览器等)即可。 用伴侣盒子里面自带的Type C数据线连接电脑(小的一端连接在伴侣三个Type C接口中间的那个,大的一端连接在电脑上),等待20 ......
伴侣

Linux 命令总结

基本命令 uname -m 显示机器的处理器架构 uname -r 显示正在使用的内核版本 dmidecode -q 显示硬件系统部件 (SMBIOS / DMI) hdparm -i /dev/hda 罗列一个磁盘的架构特性 hdparm -tT /dev/sda 在磁盘上执行测试性读取操作系统信 ......
命令 Linux

python项目-数据可视化-matplotlib和plotly绘图

matplotlib和plotly绘图 参考书籍《Python编程 从入门到实践》 折线图 15-1 立方:数字的三次方被称为其立方。请绘制一个图形,显示前5 个整数的立方 值,再绘制一个图形,显示前5000 个整数的立方值。 15-2 彩色立方:给你前面绘制的立方图指定颜色映射。 import m ......
matplotlib 项目 数据 python plotly

.NET周报 【4月第2期 2023-04-08】

国内文章 LRU缓存替换策略及C#实现 https://www.cnblogs.com/eventhorizon/p/17290125.html 这篇文章讲述了缓存替换策略,特别是LRU算法。LRU算法基于这样一个假设:如果数据最近被访问过,那么将来被访问的几率也更高。通常我们会用双向链表来实现这个 ......
周报 2023 NET 04 08