摘要:
💡 本文力求能让未接触过泛型编程的人也能较好理解Go的泛型,所以行文可能略显啰嗦。但是请相信我,看完这篇文章你能获得对Go泛型非常全面的了解 阅读全文
摘要:
引言 趁着最近休息写一篇关于微服务架构中特别重要一环服务注册与发现示例来互相探讨学习。 什么是微服务 传统服务 举个栗子: 传统服务就类似于你们家附近的商店,这个商店可以提供你基本日常所需。你可以在里面买牙膏、零食、饮料、袜子、充电器等。 优点: 产品固定的情况下方便打理 (开发/维护效率高) 。 阅读全文
摘要:
gRPC概述 RPC 说到gRPC就不得不提RPC,所谓RPC(remote procedure call 远程过程调用)框架实际是提供了一套机制,使得应用程序之间可以进行通信,简单点来说就是我A机器上写的函数可以在B机器上通过RPC协议直接调用。 它与http不同的是: RPC是基于TCP实现的, 阅读全文
摘要:
基础 并发:电脑同时听歌,看小说,打游戏。cpu根据时间片进行划分,交替执行这三个程序。我们可以感觉是同时产生的。 并行:多个cpu(多核)上述动作同时执行 C语言:,实现并发过程使用的是多线程(C++的最小资源单元) Golang:Golang中不是线程,而是Go程(goroutine),Go程是 阅读全文
摘要:
类的封装及方法绑定 Golang支持类的操作,但是没有class关键字,使用struct类模拟类 在struct中定义函数需要在外部绑定,通过在方法前面指定数据类型类绑定方法到指定类,有点类似于C#的扩展函数 package main import "fmt" // C++ 创建类的方式 /* cl 阅读全文
摘要:
变量定义 package main import "fmt" func main(){ // 变量定义:var // 常量定义:const // 变量定义的方式,1.先定义变量,再赋值 var name string name = "simple" fmt.Printf("name is :%s", 阅读全文
摘要:
Hello World // 每个go程序,都必须有一个package main // 每个go程序,都是.go结尾的 // 一个package(包名)相当于命名空间 package main // 这是导入一个标准包fmt(format),一般用于格式化输出 import "fmt" // 这是主 阅读全文
摘要:
Golang的诞生 计算机硬件技术更新频繁,性能提高很快。目前主流的编程语言发展明显落后于硬件,不能合理利用多核多CPU的优势提升软件系统性能。 软件系统复杂度越来越高,维护成本越来越高,目前缺乏一个足够简洁高效的编程语言。 企业运行维护很多c/c的项目,C/C程序运行速度虽然很快(因为采用静态编译 阅读全文
记一次.Net Core通过GDI+在CentOS 7(Docker)环境中绘图报错The type initializer for 'Gdip' threw an exception的问题及处理方式
摘要:
今天在AspNetCore3.1环境中做了一个用户登录页面,在登录页面中有一个功能就是需要后端动态绘制一个验证码图片,防止前端通过机器或爬虫工具模拟自动登录。
在开发机器上(windows10)调试正常,但是部署到centos7容器(容器基础环境mcr.microsoft.com/dotnet/aspnet:3.1)中,验证码一直显示不出来,通过前端调试发现请求500(服务器内部错误) 阅读全文