读书笔记

2025

使用 `huggingface-cli` 下载 GGUF 格式模型给 Ollama 运行

前提条件: 安装 huggingface-cli: pip install huggingface_hub 了解模型在 Hugging Face Hub 上的位置: 你需要知道模型仓库名称和 GGUF 文件名。GGUF 文件通常以 .gguf 结尾。 步骤: …
Read more
2024

React Native

使用 Gemini 学习新知识效率真的很高
Read more

Mysql Explain

在 MySQL 中,EXPLAIN 命令是一个非常有用的工具,它可以帮助我们深入了解 MySQL 执行一条 SQL 语句时的优化过程。 type 列和 extra 列是 EXPLAIN 结果中两个最重要的列,它们能提供关于查询执行方式的详细信息。 注意: EXPLAIN 提供的信 …
Read more

Casbin

Casbin是一个强大且高效的开源访问控制库,支持各种访问控制模型,用于在全局范围内执行授权。 执行一组规则就像在策略文件中列出主题、对象和期望的允许操作(或根据您的需要的任何其他格式)一样简单。 这在所有使用Casbin的流程中都是同义的。 开发者/管理员对布局、执行和授权条件 …
Read more

Svelte With JSDoc and Typescript

在一些情况下(如小项目等),我更喜欢用 Javascript ,同时也不介意使用 Typescript, 特别在一些较大的项目,特别是在使用 Svelte 进行表单验证的时候。 在使用 Svelte 不涉及表单验证等复杂场景的时候, 直接使用 Javascript 和 JSDoc …
Read more

Svelte UI Components

Svelte 有 React 模块化,但程序体积更小,也有Vue 的简单,但我觉得Svelte 更新简洁。Svelte 是一种编译型框架,构建时将组件的逻辑转换为高效的原生JavaScript代码。 由于不使用虚拟DOM,Svelte具有卓越的性能表现,这点和React 、 …
Read more

[Rust]thiserror错误处理

thiserror库提供了方便的派生宏,简化了Rust中自定义错误的创建和处理。
Read more
2023

Vite 加载 wasm-pack 构建ES模块

学习rust 构建 WebAssembly 的官方教程,教程中是使用 webpack 作为 Javascript 打包器和开发服务器的(注意,使用 Rust 和 WebAssembly 不要求 webpack 或者其他类似工具,只是为了开发方便)。但不太喜欢 webpack 配置 …
Read more

Zig_allcator

Zig 语言不干预堆内存分配, 没有隐藏的内存分配,没有new关键字或其他任何使用堆分配器的语言功能,整个堆都是由库或者用户代码而非语言本身所管理的。 Zig 标准库提供了一中分配内存的模式,这允许程序员精准选择标准库中内存如何完成分配,在标准库中不会背着你偷偷分配内存。 Zig …
Read more

Zig Wasm Memory Canvas

展示HTML canvas、wasm memory 和 zig 交互的一个小示例。
Read more

Zig in Webassembly

Zig 是一种通用编程语言和工具链,用于维护健壮、优化和可重用的软件,Zig 支持开箱即用的 Webassembly 构建,Zig 的实现是通过使用 LLVM 来提供编译目标,对Webassembly System Interface(WASI) 的支持尚处于积极开发中,可以参见 …
Read more

Znap + ohmyzsh

⚡️ Znap! Fast, easy-to-use tools for Zsh dotfiles & plugins, plus git repos
Read more

Zig初体验

遇到一个小众而又趣的开发语言Zig,目前还在开发中,初步实现自举,目前没有发布1.0版本,当前发布的最新版本是0.10.1。
Read more

SSH端口转发

安全外壳协议(Secure Shell Protocol,简称SSH)是一种加密的网络传输协议,可在不安全的网络中为网络服务提供安全的传输环境。SSH通过在网络中创建安全隧道来实现SSH客户端与服务器之间的连接。SSH最常见的用途是远程登录系统,人们通常利用SSH来传输命令行界面 …
Read more
2022

Neovim拼写检查

这里记录如何在Neovim启用内置的拼写检查功能。
Read more

Go中的数据竞争和竞争条件

并发是一个有趣的词,同时我们还可能听过其他词,如:“并行”,“串行”,“线程”,“多线程”等。在计算机科学中,并发是一个宽泛的话题,涉及到许多的主题。很有必要弄清楚他们的定义和区别。
Read more

Golang性能分析-pprof

遵从代码最佳实践或者代码规范指导,可以避免一些参见的坑,但在运行代码时遇到各种问题后,还是需要深入代码了解代码性能和瓶颈, 以便能够发现问题、解决问题和做出相应的优化。
Read more

Awk文本处理语言

AWK是一种处理文本文件的语言。它将文件作为记录序列处理。在一般情况下,文件内容的每行都是一个记录。每行内容都会被分割成一系列的域,因此,我们可以认为一行的第一个词为第一个域,第二个词为第二个,以此类推。AWK程序是由一些处理特定模式的语句块构成的。AWK一次可以读取一个输入 …
Read more

学习Sed文本编辑器

Sed 代表 Strem Editor(流编辑器),是操作、过滤和转换文本内容的强大工具。 它最初是为 AT&T 最初的 Unix 操作系统第 7 版创建的,此后可能每一个 Unix 和 Linux 操作系统都包含了它。 sed 以行为处理单位,针对每一行进行处理。 功能 …
Read more

初次登录服务器的那些事

经常需要在Linux服务器上进行一些操作,这里记录一些有用的知识,帮助我更好的观察、理解以及使用服务器。
Read more

Bash

Shell 和 Bash 很有趣,可以让很多事情变得更好高效,这里留下一个索引,不时回顾。
Read more
2021

Python爬虫

Read more

Docker网络

Docker使用Linux桥接,在主机构建了一个特殊的、可定制的虚拟网络拓扑结构,Docker网桥接口路由,这个网桥接口被成为docker0。 每一个容器都被赋予一个唯一的私有IP地址,从外部的网络是不能直接连接到该私有IP。主机上的每个容器都会连接到docker0,构成一个网 …
Read more

grpc SSL/TLS

gRPC提供了内置的授权机制(Authorization),也提供接口用于扩展自定义授权验证。gRPC旨在和多种身份验证(Authentication)机制配合使用,可以轻松安全的使用gRPC同其他系统进行通信。 gRPC支持下面几种机制: SSL/TLS:gRPC集成 …
Read more

创建型模式

1 创建型模式 简单工厂模式(Simple Factory) 单例模式(Singleton) 工厂方法模式(Factory Method) 抽象工厂模式(Abstract Factory) 创建者模式(Builder) 原型模式(Prototype)
Read more

设计模式:Options Pattern In Golang

下面将记录函数可选(functional options)模式在golang中的实现。
Read more

Apple Login

概述 这里记录了,接入AppleID登录,服务端的实现。 针对后端验证苹果提供了两种验证方式: 一种是 基于JWT的算法验证 一种是 基于授权码的验证
Read more

依赖注入wire

wire是Google开源的一款代码生成工具,通过依赖注入来自动链接不同的组件。
Read more

Go标准库atomic

在 Go 语言标准库中,sync/atomic包将底层硬件提供的原子操作封装成了 Go 的函数。但这些操作只支持几种基本数据类型,Go 语言在 1.4 版本的时候向sync/atomic包中添加了一个新的类型Value。此类型的值相当于一个容器,可以被用来“原子地"存 …
Read more

Use Go Embed

Go1.16引入新的//go:embed指令,可以在编译时嵌入文件和目录,并对其进行访问。通过它,真正做到部署时只有一个二进制文件。 背景:2021-02-16,Go Team正式发布了Go1.16。该版本包含下面的一些重要变化: embed 包和 //go:embed 指令 增 …
Read more
2020

区分换行符

CRLF, LF 是用来表示文本换行的方式。CR(Carriage Return) 代表回车,对应字符 '\r';LF(Line Feed) 代表换行,对应字符 '\n'。不同的操作系统文本使用的换行符各不相同。 Windows 系统使用的是 CRLF, Unix系统(包 …
Read more

Mysqldump

Mysql的mysqldump详解 抄录自:https://www.cnblogs.com/flagsky/p/9762726.html
Read more

Dead_lock

并发通常是指与一个或者多个进程同时发生的过程,通常这也意味着所有这些进程在同一个时间取得进展。并发的代码很难构建,通常需要几个迭代才能,让它按照预期的方式运行。而在并发编程时,都会遇到同样的问题,计算机的科学家已经对共同的问题进行了标记。
Read more

Docker

Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 是一个工具,可以帮助解决如安装、拆卸、升级、分发、信任和管理软件等常用问题。Docker包含一个命令行程序、一个后台守护进程和一组远程服务。
Read more

Mysql_kill_process

使用kill命令可以杀掉等待msyql线程。
Read more
2019

Kubernetes常用命令

Kubernetes集群常用命令
Read more

GRPC系列 简述

1、简述 gRPC是可以在任何环境中运行的现代开源高性能RPC框架。与许多 RPC 系统类似,gRPC 也是基于以下理念:定义一个服务,指定其能够被远程调用的方法(包含参数和返回类型)。在服务端实现这个接口,并运行一个 gRPC 服务器来处理客户端调用。在客户端拥有一个存根能够像 …
Read more

gRPC系列-开端

简述 gRPC 是一个高性能、开源和通用的 RPC 框架,面向移动和 HTTP/2 设计。目前提供 C、Java 和 Go 语言版本,分别是:grpc, grpc-java, grpc-go. 其中 C 版本支持 C, C++, Node.js, Python, Ruby, …
Read more

Redis使用事务

Redis事务同传统关系数据库事务不相同。关系数据库,首先向数据库发送事务开始BEGIN,然后执行读写操作,最后发送COMMIT提交事务,或者通过ROLLBACK回滚放弃事务的修改。
Read more

Http和golang

Read more

Context包

在Go 1.7中,context包被引入到标准库中。 context是处理并发问题的一个标准风格。 context包内容很简单: var Canceled = errors.New("context canceled") var DeadlineExceeded …
Read more

Golang和假共享(false sharing)

Golang和假共享(false sharing) 多核处理器(SMP)系统中, 每一个处理器都有一个本地高速缓存。内存系统必须保证高速缓存的一致性。当不同处理器上的线程修改驻留再同一高速缓存中的变量时就会发生假共享(false sharing),结果导致高速缓存无效,并强制更 …
Read more

本地Docker加载阿里Mysql物理备份

前言 将阿里云数据库物理备份的数据下载到本地,使用Docker来加载,来做数据升级和迁移的本地测试。 HOW TO 将线上数据库物理备份,并下载到本地 如下载后放置在~/Downloads/hins4577021_data_20181203163125.tar 将数据库备份文件解 …
Read more

kubectl集群访问环境配置

kubectl访问集群环境配置
Read more

Git_emoji

在git commit信息中使用emoji,提供一种简单的方法来识别提交的目的或意图: 只需要查看使用的emoji符号。在提交的历史中也更容易区分和查找。更多信息参见gitmoji。
Read more

Docker运行cron

有时只需要运行最简单的单命令cron任务。alpine Docker镜像提供了一个很好的选择,这个镜像通过busybox提供了一个简单灵活的cron包。
Read more

Docker常用命令

Read more

Kubernetes搭建本地实验环境

为了方便大家本地开发和体验Kubernetes,社区提供了可以在本机部署的Minikube, 此外, Docker社区版也已经提供了对Kubernetes的支持。
Read more
2018

Flutter初体验-VS Code环境搭建

Flutter是Fuchsia的开发框架,是一套移动UI框架,可以快速在iOS、Android以及Fuchsia上构建高质量的原生用户界面。 目前Flutter是完全免费、开源的,GitHub地址。其官方编程语言为Dart,也是一门全新的语言。Flutter Live 2018 …
Read more

Golang排序

1、基础类型排序 官方package: sort, 提供了对int,float,string的排序 sort.Ints sort.Floats sort.Strings
Read more

Nginx配置https

1、安装Nginx 在centos上,直接使用yum安装Nginx yum install nginx -y
Read more

Kuberneter无法创建pod

环境 腾讯云CentOS7.3 使用yum安装etcd和Kubernetes软件 yum install -y ectd kubernetes 按顺序启动所有的服务
Read more

Pyton生成标定板

做一个和Opencv相关的项目调研,这里留下些记录…. 使用Opencv进行图摄像头标定时,要用到标定板。下面用Python开始生成一个标定板:
Read more

相机坐标

1、相机坐标系 图像处理、立体视觉等等方向常常涉及到四个坐标系:世界坐标系、相机(摄像机)坐标系、图像坐标系、像素坐标系: 通过如下图的转换,可以将世界坐标中点的坐标(Xw, Yw, Zw),同二维图像中的像素坐标(u,v)对应起来。
Read more

conda管理Python环境

序 近期做一个项目的调研,需要使用到OpenCV、Python,这里记录anaconda进行Python环境配置管理过程。 Python常用环境管理工具 virtualenv,用于在一台机器上创建多个独立的Python虚拟运行环境,多个Python环境相互独立, …
Read more

[Go]Deferred函数案例

package main func main() { println(DeferFunc1(1)) println(DeferFunc2(1)) println(DeferFunc3(1)) } func DeferFunc1(i int) (t int) { t = i …
Read more

Mac配置Selenium + Python3

Selenium也是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE、Mozilla Firefox、Mozilla Suite等。这个工具的主要功能包括:测试与浏览器的兼容性——测试你的应用程序看是否能够 …
Read more

使用Homebrew安装Golang

1、安装Homebrew 安装步骤,参考Homebew 2、安装Golang $ brew install go 2.1、查看Golang安装信息 $ brew info go
Read more
2017

(Mac)PIP使用国内镜像

(Mac)PIP使用国内镜像 PIP使用国外源安装软件包,下载速度非常慢,将PIP安装源头替换为国内镜像,可以大幅提高下载速度,提高安装成功率。
Read more

Git基本使用

团队开发中,遵循一个合理、清晰的Git使用流程,是非常重要的。 否则,每个人都提交一堆杂乱无章的commit,项目很快就会变得难以协调和维护。 第一步:新建分支 首先,每次开发新功能,都应该新建一个单独的分支(这方面可以参考《Git分支管理策略》)。 # 获取主干最新代码 $ …
Read more

React.js 使用小结(开篇)

React.js 使用小结—-序 生命不止,奋斗不息 最近三个月,参与了一个企业后台管理系统的小项目,采用前后端分离架构。前端实现技术选型时,选择了React.js。因为之前由大量使用WPF,也接触函数式编程(F#)的经历,所以第一次接触到React.js时就感觉非常 …
Read more

希望的博客

我的博客 生命不止,折腾不息; 还是按捺不住爱折腾的心,搭建自己的博客。总感觉在博客园或者CSDN里写博客,少些什么似乎的,总觉得缺点什么。 寻寻觅觅,有许多可选的方案(Hexo,WordPress,Jekyll…),因为喜欢Golang的缘故,所以对Hugo有种特 …
Read more