【狗哥——】Golang茶余饭后
文章平均质量分 79
基础+实战
鱼弦
【gzh:红尘灯塔,CSDN博客专家、内容合伙人、新星导师、全栈领域优质创作者
、51CTO(Top红人+专家博主)
】
展开
-
golang+http+mysql 客户端服务器传送图片数据存储设计
在 Go 语言中实现 HTTP 客户端和服务器之间传输图片数据,并使用 MySQL 存储图片数据,可以结合前面提到的示例代码进行操作。下面是一个完整的示例,包括客户端发送图片数据到服务器,服务器将图片数据存储到 MySQL 数据库,以及从数据库中获取图片数据并在服务器上显示的过程。根据图片的大小和实际需求,你可以选择适合的数据类型。函数中,我们从请求中获取图片数据,并将其保存到服务器端的文件中。数据类型来存储图片数据,具体选择哪种类型取决于图片的大小。函数将图片数据存储到 MySQL 数据库中。原创 2023-08-19 18:15:20 · 238 阅读 · 0 评论 -
golang +mysql 实现图片存储数据库和从数据库获取显示
在Go语言中实现图片存储到数据库和从数据库获取显示的原理是将图像数据以二进制格式存储在数据库中。这种方法可以将图像数据与其他数据一起保存在数据库记录中,方便管理和检索。要在 Go 语言中实现图片的存储到数据库和从数据库获取显示,你可以结合使用 MySQL 数据库和第三方库来实现。这种方法的好处是可以将图片与其他相关数据一起存储在数据库中,实现一对一或一对多的关联关系,从而方便数据管理和检索。代码中的数据库连接字符串、数据库表结构和路径等需要根据实际情况进行调整。上述代码演示了图片的存储和获取显示过程。原创 2023-08-19 17:21:59 · 430 阅读 · 0 评论 -
Go 设计模式中工厂方法模式应用
在工厂方法模式中,我们定义一个抽象的工厂接口,用于创建一系列相关或依赖的对象。具体的工厂实现了这个接口,并实现了工厂方法,用于创建具体的对象。这样做的好处在于,我们可以将对象的创建和使用解耦,并且能够更加灵活地管理对象的生命周期。工厂方法模式(Factory Method Pattern)是一种常见的设计模式,它属于创建型模式。在 Go 语言中,工厂方法模式经常被用于对象的创建和初始化。总体而言,工厂方法模式在 Go 语言中非常常见,它是一种简单而灵活的设计模式,可以帮助我们更好地管理对象的创建和初始化。原创 2023-05-27 13:04:46 · 2230 阅读 · 0 评论 -
Go 并发的 20+ 种踩坑案例
Go语言天生支持并发,这也是其广受欢迎的一个原因。原创 2023-05-27 13:05:13 · 2266 阅读 · 0 评论 -
基于Golang的分布式数据运营与流式计算实战
此外,Golang还提供了标准库中的encoding/json和encoding/gob包,可以方便地进行JSON和二进制数据的序列化和反序列化。在Golang中,我们可以使用各种分布式框架和工具,如etcd、consul、ZooKeeper等,来协调和管理分布式系统的节点和资源。基于Golang的分布式数据运营和流式计算系统具有高效、灵活和可伸缩的特点,可以帮助我们更好地处理大规模数据和实现业务需求。在实际开发中,我们需要结合具体业务场景和技术特点,进行合理的设计和优化,以达到最佳的性能和效果。原创 2023-05-26 09:18:04 · 1625 阅读 · 0 评论 -
详细介绍一下Go1.17 特性,优缺点以及需要改进的地方
Go1.17 对 runtime/debug 包进行了改进,使得其能够更加方便地对程序进行调试。新增的 ReadGCStats 函数能够读取当前 GC 的统计信息,而 SetGCPercent 函数则能够设置 GC 执行的频率。新的 AddInt64、LoadInt64、StoreInt64 等函数能够通过编译器进行内联,从而避免了使用锁带来的额外开销。Go1.17 对编译器进行了一系列优化,包括对函数内联的优化、对切片相关的优化以及对协程切换相关的优化等。这些优化能够使得程序的性能得到进一步提升。原创 2023-05-25 15:38:31 · 1066 阅读 · 0 评论 -
go-zero和dtm分布式事务实现
通过使用DTM的机制和go-zero提供的工具,你可以在go-zero的微服务架构中实现分布式事务,并保证事务的一致性和可靠性。go-zero是一个基于Go语言的微服务开发框架,而DTM(Distributed Transaction Manager)是一个分布式事务管理器,用于实现跨多个微服务的分布式事务。发起DTM事务:在需要进行分布式事务的地方,通过调用DTM提供的API发起一个DTM事务。注册TCC参与者:在适当的位置,通过调用DTM提供的API,将TCC参与者注册到DTM事务管理器中。原创 2023-05-16 14:35:21 · 881 阅读 · 0 评论 -
Go 设计模式中抽象工厂模式应用
当我们需要添加新的产品时,我们只需实现产品接口并创建新的具体工厂即可,而无需修改客户端代码。然而,使用抽象工厂模式也可能导致代码更加复杂,并且在需要添加新产品族时,可能需要修改接口。因此,我们需要在实践中仔细权衡使用抽象工厂模式的利弊。抽象工厂模式是一种创建型设计模式,旨在提供一种封装一组具有共同主题的单独工厂,而无需指定其具体类。在 Go 中,抽象工厂模式可以帮助我们创建一组相关的对象,而无需关心其具体实现。在 Go 中,我们可以使用接口来定义抽象工厂和具体工厂。原创 2023-03-27 16:16:58 · 130 阅读 · 0 评论 -
Go 设计模式中单例模式应用
由于单例对象被所有组件共享,因此对该对象的任何修改都可能会对应用程序的其他部分产生意外的影响。因此,在设计和使用单例模式时需要权衡利弊,确保它适用于特定的应用场景。单例模式(Singleton Pattern)是一种创建型设计模式,它保证一个类只有一个实例,并提供一个访问该实例的全局访问点。在 Go 语言中,可以通过结构体和函数的方式实现单例模式。通过单例模式可以确保在应用程序中只有一个实例对象被创建,并且可以在全局范围内访问该对象。函数用于获取单例对象的实例,如果实例尚未创建,则创建一个新的实例。原创 2023-03-27 16:19:58 · 114 阅读 · 0 评论 -
Go 设计模式中工厂方法模式应用
在工厂方法模式中,我们定义一个抽象的工厂接口,用于创建一系列相关或依赖的对象。具体的工厂实现了这个接口,并实现了工厂方法,用于创建具体的对象。这样做的好处在于,我们可以将对象的创建和使用解耦,并且能够更加灵活地管理对象的生命周期。工厂方法模式(Factory Method Pattern)是一种常见的设计模式,它属于创建型模式。在 Go 语言中,工厂方法模式经常被用于对象的创建和初始化。总体而言,工厂方法模式在 Go 语言中非常常见,它是一种简单而灵活的设计模式,可以帮助我们更好地管理对象的创建和初始化。原创 2023-03-27 16:13:49 · 354 阅读 · 1 评论 -
架构设计笔记一
链接:https://github.com/Peakchen/go-snake软件架构gate server (内、外网管)数据安全防护,负载均衡, 分发客户端消息 game server 消息处理,数据存储 login server 登录服(账号登录,微信登录...) robot server 客户端模拟器 db mysql 网络协议采用protobuf(后端:go,前端:js) simulation 服务器模拟器 etcd 服务发现 grpc 服务期间远程调用 nats 消息队原创 2021-03-31 17:51:13 · 89 阅读 · 0 评论 -
golang timewheel 时间轮定时器设计与实现
源码实现:https://github.com/Peakchen/akTimeWheel效果图:原创 2020-12-02 14:35:54 · 697 阅读 · 0 评论 -
Golang新开发者要注意的陷阱和常见错误
目录[−]初级开大括号不能放在单独的一行未使用的变量未使用的Imports简式的变量声明仅可以在函数内部使用使用简式声明重复声明变量偶然的变量隐藏Accidental Variable Shadowing不使用显式类型,无法使用“nil”来初始化变量使用“nil” Slices and MapsMap的容量字符串不会为nilArray函数的参数在Slice和Array使用“range”语句时的出转载 2018-01-19 16:10:25 · 2104 阅读 · 0 评论 -
【golang】解决 error: go get xxx time out
终端cmd:mkdir -p $GOPATH/src/xxxcd $GOPATH/src/xxxgit clone https://github.com/golang/net.git netgit clone https://github.com/golang/crypto.git cryptogit clone https://github.com/gola原创 2018-01-31 15:41:52 · 1002 阅读 · 0 评论