Toggle navigation
码云博客
首页
Devops
PHP
Golang
数据库
Docker
K8s
Ai
杂项
Home
redis vs etcd 分布式锁实现
小码哥
2025-09-04 15:54:43
Golang
分布式锁
etcd
在构建分布式系统时,确保数据一致性和操作原子性至关重要。分布式锁是实现这一目标的关键工具,它允许多个节点在共享资源上进行互斥访问。本文将深入探讨两种主流的分布式锁实现:基于 Redis 的分布式锁和基于 etcd 的分布式锁,分析它们的原理、核心问题、解决方案,并提供相应的 Golang 代码示例。 Redis 分布式锁Redis 因其高性能、单线程执行命令的原子性以及丰富
阅读全文
NATS JetStream 介绍及实际应用
小码哥
2025-08-18 17:50:51
Golang
middleware
nats
前言在现代微服务架构中,消息队列扮演着至关重要的角色,它负责服务间的解耦、异步通信和流量削峰。NATS 是一个追求极致性能、简洁和可扩展性的消息系统。然而,核心 NATS (Core NATS) 是一个纯粹的内存消息总线,不提供消息持久化,这意味着如果服务下线或重启,消息就会丢失。为了解决这个问题,NATS 团队推出了 JetStream——一个内建于 NATS Server 的
阅读全文
使用Golang开发mcp-server服务
小码哥
2025-08-10 18:01:05
Ai
mcp
tools
1. MCP协议基础知识 什么是MCP?模型上下文协议(Model Context Protocol,简称 MCP)是一种开放标准,旨在标准化大型语言模型(LLM)与外部数据源和工具之间的交互方式。 由 Anthropic 于 2024 年 11 月推出,MCP 通过定义统一的接口,使 AI 应用能够安全、灵活地访问和操作本地及远程数据资源,提升模型的功能性和可扩展性。
阅读全文
使用n8n构建本地工作流
小码哥
2025-06-14 11:36:48
Ai
ai
n8n
简介n8n 是一个开源免费的自动化工作流平台,它提供了 200 多个不同的节点来自动化工作流程,通过编排,可以实现跨不同服务的自动化流程。它的优点是开源、可以自托管、下载安装方便、易于使用,可以互联的服务包括 Github、Google、RSS、Slack、Telegram、Gitlab、Redis、RabbitMq、数据库等等上百种服务。使用 n8n 可以方便地实现当 A 条件发生,触
阅读全文
AI智能体技术详解:从Agent到MCP的完整指南
小码哥
2025-05-23 16:59:08
Ai
agent
mcp
什么是Agent?Agent(智能体)是一个能够自主感知环境、制定决策并执行行动的智能实体。在AI领域,Agent通常以大语言模型为核心,结合外部工具和知识库,形成一个完整的问题解决系统。Agent的核心特征: 自主性:能够独立分析问题并制定解决方案 反应性:能够感知环境变化并做出相应反应 主动性:能够主动采取行动实现目标 社交性:能够与其他Agent或系
阅读全文
golang channel数据的接收发送流程
小码哥
2025-05-18 15:12:52
Golang
channel
Channel底层数据结构说明```gotype hchan struct { qcount uint // 用于记录当前通道队列中已有的数据元素数量 dataqsiz uint // 指定了通道的循环队列(缓冲区)的大小。也就是通道最多能容纳的数据元素数量 buf unsafe.Pointer // 指
阅读全文
Go 语言中 uintptr和unsafe.Pointer 的区别
小码哥
2025-04-28 19:35:39
Golang
golang
uintptr
`unsafe.Pointer`1. 定义: `unsafe.Pointer` 是一种特殊的指针类型。它可以指向任意类型的数据。你可以把它看作是 C 语言中的 `void`,但功能更受限,主要用于类型转换。2. 类型安全: 顾名思义,使用 `unsafe.Pointer` 会绕过 Go 的类型安全检查。编译器不会阻止你将一个 `int` 转换为 `unsafe.Pointer`,
阅读全文
为什么说golang参数传递皆是值传递?
小码哥
2025-04-22 15:12:19
Golang
值传递
什么是值传递 (PassbyValue)?值传递的核心思想是:当一个变量作为参数传递给函数时,函数接收到的是该变量的一个副本 (copy),而不是变量本身。 函数内部对这个副本的任何操作,都不会影响到函数外部的原始变量。 值类型 (Value Types) 的传递Go 中的基本类型(如 `int`, `float`, `string`, `bool`)、结构体 (`str
阅读全文
MySQL InnoDB 的双写策略
小码哥
2025-04-20 21:12:51
数据库
mysql
MySQL双写策略
双写的作用MySQL InnoDB 存储引擎中的双写策略(Doublewrite Buffer)是为了防止在将内存中的数据页(Page)写入磁盘时发生部分写失效(Partial Page Write / Torn Page)导致的数据损坏问题,从而提高数据在意外宕机(如操作系统崩溃、断电)后的恢复能力和数据一致性。 问题背景:部分写失效 (Partial Page Write)
阅读全文
人工智能中的“知识蒸馏”,到底是什么?
小码哥
2025-04-10 15:40:36
Ai
ai
蒸馏
随着 DeepSeek R1 的爆火,知识蒸馏这一人工智能中常用的技术进入大众视野。本篇面向对人工智能和机器学习感兴趣的初学者的科普性文章,主题聚焦于当前深度学习领域中被广泛应用的「知识蒸馏(Knowledge Distillation)」技术,希望能帮助读者快速了解它的概念、作用以及应用场景。 什么是知识蒸馏?在深度学习的发展过程中,模型的规模(参数量)越来越大,性能也随之提升。
阅读全文
上一页
1
2
3
4
5
6
7
8
9
10
下一页
热门标签
laravel (3)
Opentracing (3)
链路追踪 (2)
Jaeger (2)
golang (21)
helm (3)
CRI (1)
kubesphere (1)
k8s (9)
slices (1)
Ticker (1)
Timer (1)
mysql (9)
pattern (2)
golang迭代器 (1)
docker (3)
向量化 (1)
factory (4)
设计模式 (6)
kafka (1)
sync.Once (1)
docker-compose (1)
消息中间件 (2)
sync (3)
pool (1)
池 (1)
queue (1)
gc (1)
垃圾回收 (1)
cond (1)
test (1)
heap (1)
内存逃逸 (1)
算法 (1)
事务 (1)
Singleflight (1)
context (1)
Nginx (1)
mutex (1)
锁 (1)
ACID (1)
php (1)
udp (1)
channel (2)
并发 (1)
es (2)
HTTP (3)
tcp (2)
redis (2)
llm (1)
isito (1)
服务网格 (1)
linux (1)
云原生 (5)
rag (2)
ssh (1)
容器 (4)
devops (3)
gorm (4)
database (2)
gitlab (1)
ai (7)
chatgpt (1)
sd (1)
DB (1)
mcp (4)
量化 (1)
蒸馏 (1)
内存对齐 (1)
MySQL双写策略 (1)
值传递 (1)
uintptr (1)
WaitGroup (1)
agent (1)
map (1)
n8n (1)
tools (1)
nats (1)
middleware (1)
etcd (1)
分布式锁 (1)
置顶推荐
最新评论
友情链接
更多
×
无需注册,用以下帐号即可直接登录。
需要先增加第三方登录配置。
点击前往
最新评论