golang

2501_9318037519 分钟前
golang
深入理解 GORM:从模型定义到关联查询的核心原理GORM 是 Go 语言中最流行的 ORM 框架。它的强大之处不仅在于能自动生成 SQL,更在于它遵循“约定优于配置”的设计哲学,让开发者可以用操作 Go 对象的方式来操作数据库。
似璟如你1 小时前
java·开发语言·后端·golang·go·编程语言
Java 开发者的 Go 语法基础:从 0 开始快速上手 GoJava 和 Go 都是静态类型、编译型语言,都支持并发、接口和垃圾回收。因此,Java 开发者学习 Go 的难点通常不是看不懂代码,而是要适应几种不同的设计:
microrain20 小时前
物联网·golang·开源·sagooiot
从监控孤岛到视联一体:SagooIoT视频监控中心的设计实践当工厂里的海康摄像头、大华NVR、RTSP流媒体、GB28181平台各自为政时,运维人员要在四五个系统之间来回切换——这篇文章聊聊SagooIoT是怎么把视频监控和物联网数据打通,做成一件事的。
GoFly开发者1 天前
物联网·mqtt·golang·mqtt broker·mqtt私有化部署
GoFly 社区 GMQT|国产自研 MQTT‑Broker,打造私有化物联网消息底座做物联网开发的同学基本都绕不开 MQTT 消息服务器。选型的时候我们通常面临两个选择:公有云 MQTT 服务,或是开源 Broker。
刘步权1 天前
golang·hla·rti·高层体系结构·多语言仿真
KY-RTI分布仿真技术:第十四章 Go程序设计本章介绍如何使用Go语言设计基于HLA/RTI标准的聊天仿真程序,详细讲解了程序设计思路、代码实现及运行测试,展示了KY-RTI在Go语言仿真领域的应用,并演示了Go与C++、Java、Python、C#、Rust语言的互操作。
microrain2 天前
物联网·golang·开源·sagooiot
从数据烟囱到融合中心:SagooIoT统一数据处理平台的设计实践去年冬天的一个凌晨,我被一阵急促的手机铃声吵醒。电话那头是某汽车零部件工厂的王工,声音里带着焦虑:“老赵,我们的MES系统又读不到设备数据了。产线停了快半个小时,生产总监已经在拍桌子了。”
DLYSB_2 天前
开发语言·后端·golang·报警灯
API 网关流量洪峰与突发 CC 攻击:我用 Go 写了个“现场物理防御哨兵”,把故障响应压缩到秒级在现代云原生架构中,API 网关(如 Istio Envoy、APISIX、Kong)作为核心流量入口,承载着路由转发、鉴权限流与熔断降级(Circuit Breaking)的重任。然而,当遭遇突发流量洪峰、恶意 CC 攻击或下游微服务雪崩触发大面积熔断时,通常会伴随 503 错误率飙升 与 API 延迟陡增。
朋克洛德的码农2 天前
golang
反射是什么?我们都知道Go是静态类型语言,即如 int、float32、[]string,等等,变量的静态类型在编译期就已经确定;而反射不同,它能在程序运行时动态的检查、修改或操作变量类型与值。
北冥you鱼3 天前
开发语言·后端·golang
Go语言大数(big.Int)比较大小:原理、方法与最佳实践在常规编程中,我们使用 int、int64 等内置整数类型进行数值运算和比较。然而,这些类型有固定的位数限制(例如 int64 的范围是 -2^63 到 2^63-1)。当我们需要处理超出此范围的整数时,例如在密码学、金融计算、科学模拟或处理区块链交易哈希等场景,就必须使用“大整数”(Big Integer)。
xcLeigh3 天前
开发语言·后端·golang
Go入门:零值与变量默认初始化机制大家好,我是你们的Go语言向导。上一篇文章我们学习了变量声明的五种方式,其中提到了一个重要概念——零值。今天我们就来深入探讨Go语言的零值机制和默认初始化原理。
DLYSB_3 天前
数据库·golang·钉钉·报警灯
数据库连接池爆满导致全线宕机:我用 Go 写了个“现场声光报警器”,比钉钉快了 10 倍在高并发微服务与分布式数据库架构中,当遭遇慢 SQL 堆积、缓存击穿或连接池(Connection Pool)爆满时,往往会触发严重的**“级联雪崩”**。传统的 Prometheus + Alertmanager 或 Log 检索系统,在面对秒级爆发的连接数风暴时,往往因 “告警积压延迟” 与 “信息过载” 错失最佳止血时机。
Awna4 天前
开发语言·后端·golang
Golang 大小写可见性规范在 Go 中,首字母大小写决定标识符能否被包外访问,这是语言内置的可见性规则。Go 没有 public、private、protected 关键字,全靠首字母控制。
进击的程序猿~4 天前
开发语言·后端·golang
Go 内存分配与垃圾回收源码深度学习手册本文档基于 Go 1.27+ 源码,深入解析内存分配与垃圾回收的底层实现原理,适合中高级 Go 开发者、架构师及大厂面试准备。
geovindu4 天前
开发语言·后端·算法·golang·位运算法
go:Bit Operation Algorithm调用:输出:
北冥you鱼5 天前
开发语言·后端·golang
Go语言四则运算实战:从基础类型到big包的深度解析在Go语言开发中,四则运算是最基础也是最常用的操作之一。然而,Go语言在数值运算方面有着独特的设计哲学:基本类型支持直接运算符操作,而大数运算则需要通过big包的方法调用。这种设计既保证了简单场景的便捷性,又为高精度计算提供了可靠支持。
Wang's Blog6 天前
开发语言·微服务·golang
Go-Zero 项目开发47:自研微服务框架的必要性与核心结构设计在微服务开发领域,Go 语言生态已经涌现出大量成熟框架,如 go-zero、go-micro、kratos、tarsgo、dubbo-go 等。这些框架各有侧重,有的绑定特定公司基础设施,有的追求极简与高性能。即便如此,仍有许多团队选择自研微服务框架。这并非重复造轮子,而是基于对技术深度、业务定制和长期演进的综合考量。本文将结合实际项目经验,从需求出发,探讨自研框架的价值,并以 go-zero@latest 的设计哲学为参考,设计一款微服务框架的核心目录结构,并给出可运行的代码骨架。
名字还没想好☜6 天前
开发语言·后端·golang·go
Go 用 bufio.Scanner 读大文件踩坑:默认 64KB 行上限、Buffer 扩容与按 Token 切分用 Go 逐行读文件,几乎所有人第一反应都是 bufio.Scanner,写法也确实优雅:小文件跑得好好的,直到某天你的程序读一个日志文件突然「读一半就停了」,还不报 panic。你以为文件读完了,其实是撞上了 bufio.Scanner 一个藏得很深的默认限制:单行超过 64KB 它就悄悄停下,而且默认吞掉错误。这篇我们把这个坑和相关的用法讲透。
techdashen6 天前
开发语言·后端·golang
Go设计取舍之六: sync.Mutex正常模式与饥饿模式2023 年 6 月 3 日,在 golang-nuts 询问了 sync.Mutex 源码注释中的 waiter 和饥饿模式。Ian Lance Taylor 参与回复,共有 6 封邮件。完整讨论:Can we further optimize the scheduling order of goroutines in sync.Mutex?。