阳光七十米
码龄15年
求更新 关注
提问 私信
  • 博客:56,852
    社区:227
    问答:4,784
    61,863
    总访问量
  • 31
    原创
  • 170
    粉丝
  • 34
    关注
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:上海市
加入CSDN时间: 2011-07-21

个人简介:后台开发

博客简介:

lifugui001的专栏

博客描述:
阳光七十米
查看详细资料
个人成就
  • 获得159次点赞
  • 内容获得4次评论
  • 获得374次收藏
  • 博客总排名44,344名
  • 原力等级
    原力等级
    2
    原力分
    136
    本月获得
    0
创作历程
  • 1篇
    2026年
  • 1篇
    2025年
  • 5篇
    2024年
  • 1篇
    2023年
  • 11篇
    2021年
  • 2篇
    2020年
  • 8篇
    2018年
  • 1篇
    2016年
  • 1篇
    2013年
成就勋章
TA的专栏
  • 网络
    1篇
  • git
    1篇
  • Java
    1篇
  • Redis
    4篇
  • C#
    2篇
  • WPF
    1篇
  • Winform
    1篇
  • JavaScript
    3篇
  • Node
    9篇
  • docker
    4篇
  • Kubernetes
    1篇

TA关注的专栏 1

TA关注的收藏夹 0

TA关注的社区 0

TA参与的活动 0

兴趣领域 设置
  • 编程语言
    java
  • 后端
    springspring boot
  • 服务器
    linux
创作活动更多

「谁说嵌入式只是调包和焊板子?」—— 2026嵌入式全栈技术征锋令

谁说嵌入式只会“Ctrl+C 调包”和“拿电烙铁焊板子”?2026嵌入式全栈技术征锋令正式启幕! 本次活动专为硬核硬件/软件开发者打造,无论你是刚玩转裸机外设的萌新,还是精通RTOS调度、死磕底层驱动的行业老手,亦或是执掌系统架构的大神,这里都是你证明实力的舞台! 拒绝表面功夫,每一行代码,都有撬动硬件的力量!晒出你的硬核工程实战,为嵌入式开发者的全栈硬实力正名!

212人参与 去参加
  • 最近
  • 文章
  • 专栏
  • 代码仓
  • 资源
  • 收藏
  • 关注/订阅/互动
更多
  • 最近

  • 文章

  • 专栏

  • 代码仓

  • 资源

  • 收藏

  • 关注/订阅/互动

  • 社区

  • 帖子

  • 问答

  • 课程

  • 视频

搜索 取消

Nodejs中exec调用ssh的坑

部分 Windows 电脑 SSH 连接失败。经排查,问题根源有三层:(1) Node.js exec() 执行命令时引号丢失,特殊字符被本地 CMD 解析;(2) 改用 spawn() 后仍失败,因其默认 stdin 为管道,SSH 无法访问 TTY 读取密码;(3) OpenSSH 版本差异——新版本(10.2p1)对 TTY 要求更严格,旧版本(9.5p1)兼容性更好。解决方案是将 exec() 改为 spawn(),并配置 stdio: ['inherit', 'pipe', 'p
原创
博文更新于 2026.03.06 ·
411 阅读 ·
5 点赞 ·
0 评论 ·
6 收藏

基于dmp和pdb文件快速定位Nodejs C++ Addon程序崩溃问题

本文介绍了利用dmp和pdb文件分析Nodejs C++ Addon程序崩溃问题的方法。通过生成pdb符号文件,使用procdump捕获崩溃时的dmp文件,再利用Visual Studio或windbg工具结合符号文件进行分析,可以准确定位崩溃原因。文中以实际案例展示了如何发现空指针访问问题,相比传统打log方式更高效,特别适合解决多线程环境下的复杂崩溃问题。该方法为Windows平台下Nodejs C++扩展开发提供了有效的调试手段。
原创
博文更新于 2025.07.02 ·
457 阅读 ·
5 点赞 ·
0 评论 ·
9 收藏

离线环境玩转 Tauri

Tauri 是一个用于构建跨平台桌面应用程序的框架,它允许开发者使用前端技术(如 React、Vue、Svelte 等)来构建桌面应用程序,同时提供高性能和低资源消耗的特性。Tauri 的核心思想是使用前端技术来构建桌面应用程序,将前端代码打包成一个独立的可执行文件,并使用 Rust 来提供后端功能,从而实现了高性能和低资源消耗的特性。而且,打包之后的可执行文件和安装包大小远小于Electron,并且运行速度更快。Tauri 的主要特点包括:高性能、低资源消耗、跨平台支持、安全性高、易于集成等。
原创
博文更新于 2024.08.28 ·
2273 阅读 ·
19 点赞 ·
0 评论 ·
24 收藏

TCP/IP超全笔记 - TCP篇

TCP(Transmission Control Protocol,传输控制协议)是一种的通信协议。
原创
博文更新于 2024.03.06 ·
662 阅读 ·
7 点赞 ·
0 评论 ·
8 收藏

Node.js Addon编译调试教程(一次成功版)

NodeJs Addon 编译和调试教程,按照文章操作,保证成功!!
原创
博文更新于 2024.02.27 ·
1422 阅读 ·
9 点赞 ·
0 评论 ·
6 收藏

基于Mocha的typescript调试教程

编写单元测试时,不可避免的会出现难以一眼看出的问题,这个时候就需要debug了。以下是基于mocha的typescript调试配置信息,保证成功!!
原创
博文更新于 2024.02.22 ·
600 阅读 ·
10 点赞 ·
0 评论 ·
8 收藏

MongoDB莫名崩溃的问题定位与解决纪实

国庆之前发布的软件版本一直运行正常,国庆之后,测试同事跑自动化测试脚本,发现该软件频繁异常,通过查看log发现,该软件使用的MongoDB崩溃了。该软件是个Windows的桌面软件,由于需要存储大量数据,会后台启动MongoDB,并以此作为数据存储库。
原创
博文更新于 2024.01.25 ·
2800 阅读 ·
13 点赞 ·
0 评论 ·
23 收藏

git子模块使用关键命令

部分仓库很大,尤其是有大量历史遗留分支,直接clone时间很长,clone完之后切换分支也很久,因此可以只clone某个分支。
原创
博文更新于 2023.12.26 ·
813 阅读 ·
13 点赞 ·
2 评论 ·
9 收藏

LCD1602显示日期时间

发布资源 2013.12.16 ·
zip

Java源码阅读笔记 - stream

Java源码阅读笔记 - stream为啥要学习stream在Java编程中,ArrayList估计是最常用的类之一,日常当作数组来用。对于数组的操作,进行会涉及遍历、过滤数据、修改数据等操作,这些操作最简单的就是for循环遍历了,然而却不够优雅。常规模式下最简单的遍历方式,如下所示。ArrayList<String> arr = new ArrayList<>();for (String str : arr) { System.out.println(str);}
原创
博文更新于 2021.11.06 ·
455 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

MongoDB权威指南--索引

mongoDBMongoDB:The Definitive Guide V2 阅读笔记索引学习mongodb索引之前,需要先了解下explain函数,这个函数会告诉你mongoDB语句的执行过程。explain 支持分析find、aggregate、count、group、count、distinct、remove以及update方法用法如下:db.collection.explain().find({})explain 支持三种模式:queryPlanner (默认模式),执行“查询优
原创
博文更新于 2021.10.10 ·
480 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

如何设计副本集

如何设计副本集为了保证数据写入的一致性,MongoDB只允许一个primary节点,以及n个secondary节点。那么选择多少个节点比较合适呢?primary 选举多数同意原则必须要求多数节点同意选举,某节点才可能被选举成为primary,多数节点 = n / 2 +1;例如 3个节点,最少2个,4个节点最少3个为什么需要多数同意原则?因为需要保证primary只有一个!一票否决只要有一个节点否决,那么此次选举则失败,重新选举。自我申请选举节点连接不上primary时,就会
原创
博文更新于 2021.09.05 ·
264 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

mongoDB最佳实践

大概任何事物都有优缺点,尤其是在不同场景之下。所以,我们要做的是让这些工具在最佳的场景下被使用,发挥出它们的特长,尽量避免不擅长的地方,所谓扬长避短。mongoDB作为一种NoSql数据库,有很多优点,也有很多缺点。那么,MongoDB在应该在什么场景下使用呢?怎样使用它才能发挥出它的最大威力?规范化VS反规范化(Normalization versus Denormalization)规范化:即把数据根据不同属性拆分开来,以便权责清晰,不耦合,通过部分字段进行关联(Refrence)。这样相关.
原创
博文更新于 2021.08.15 ·
561 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

如何快速提高小孩心算能力

背景家里有几个小孩,心算能力不怎么好,特意写了个工具,随机出口算题,自动判分,计时。再也不用买习题册,也不用手写出题目啦。。。。数学训练营先上网址:数学训练营使用超级简单,先选择题目类型,即可无限刷题,每20个小题一个回合。开始答题。。。。一个回合结束,看看得多少分,用了多少时间。。。。再来一局,无限刷题,,还愁心算能力提不高吗,哈哈哈哈哈哈...
原创
博文更新于 2021.07.10 ·
996 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Redis Lua脚本

Redis Lua脚本EVAL script numkeys key [key …] arg [arg …]script: 一段Lua 5.1 脚本程序,这段脚本不必定义为一个Lua函数numkeys:键名参数的个数要求使用正确的形式来传递键(key)是有原因的,因为不仅仅是 EVAL 这个命令,所有的 Redis 命令,在执行之前都会被分析,籍此来确定命令会对哪些键进行操作。示例:eval "return {KEYS[1],KEYS[2],ARGV[1],ARGV[2]}" 2 key1
原创
博文更新于 2021.07.04 ·
314 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Redis持久化

Redis持久化RDB在指定的时间间隔内生成数据集的时间点快照,简单来说就是完整备份一份数据到磁盘,这样恢复数据的时候,直接加载到内存即可。备份机制Redis 调用 fork() ,同时拥有父进程和子进程。子进程将数据集写入到一个临时 RDB 文件中。当子进程完成对新 RDB 文件的写入时,Redis 用新 RDB 文件替换原来的 RDB 文件,并删除旧的 RDB 文件。用法# 60 秒内有至少1000个键被改动,则自动保存一次save 60 100优点RDB是个非常紧凑的文件
原创
博文更新于 2021.07.04 ·
148 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

nodejs Module加载机制

Require加在module机制详解加载文件类型加载流程图加载文件加载module加载文件类型node中的文件和模块是一一对应的。一个node.js文件就是一个模块,但是这个文件可能是js代码,JSON或者编译过的C/C++拓展加载流程图加载顺序和流程如下图所示,已经加载过的文件会直接缓存起来,下次再require会直接从缓存加载。加载文件加载module如果 X 是内置模块a. 返回内置模块b. 停止执行如果 X 以 ‘/’ 开头a. 设置 Y 为文件根路径如果 X 以
原创
博文更新于 2021.07.03 ·
495 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Redis分布式锁

Redis分布式锁基于单Redis节点的分布式锁标准实现方式获取锁SET resource_name my_random_value NX PX 30000释放锁,通过lua脚本释放,保证原子性// 必须判断是自己加的锁,即随机数是自己产生的,不然就有可能把别人的锁给释放了if redis.call("get",KEYS[1]) == ARGV[1] then return redis.call("del",KEYS[1])else return 0end几
原创
博文更新于 2021.07.03 ·
843 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

Redis数据结构学习笔记

Redis数据结构学习笔记常见的数据结构有数组、链表、集合、哈希表、二叉树、跳表等等,那么Redis里面有多少种数据类型,又是怎么实现的呢?Redis的特点存储效率高。Redis是对于计算机资源的主要消耗就在于内存,而且内存成本较高,因此节省内存是它非常非常重要的一个方面。这意味着Redis一定是非常精细地考虑了压缩数据、减少内存碎片等问题。快速响应。与快速响应时间相对的,是高吞吐量。Redis是用于提供在线访问的,对于单个请求的响应时间要求很高,因此,快速响应时间是比高吞吐量更重要的目标。
原创
博文更新于 2021.07.03 ·
212 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

NodeJS的this指针解析

NodeJS 的this指针解析话说用了这么久的NodeJS,别问细问this指针的指向问题,还是会有点懵逼,下面来研究下这种情况下的this指针到底指向哪?文件内this指针直接上代码,打印出来看看// 全局this 指向module.exportsconsole.log(this); // {}this.num = 2;console.log(this.num); // 2console.log(module.exports.num); // 2console.log(global.n
原创
博文更新于 2021.06.26 ·
633 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏
加载更多