All Posts

gRPC Web Implementation

This article introduces the implementation of gRPC in the browser. As we all know, gRPC is a bidirectional streaming RPC protocol and library based on HTTP2, so how does gRPC achieve this feature in the browser scenario? This is worth learning, this article will introduce how gRPC is implemented.

KVM Qemu Libvirt introduce and operations

In this article, I will briefly introduce some virtualization concepts related to KVM. Since all of these concepts may have been heard before, but the lack of them is not clear about their specific differences, I will make a small summary in this article to help you understand them.

Install and Configure Go Env Via VSCode in Linux

Introduces the general Linux environment installation method of VSCode and the process of configuring a Go developer environment.

Managing multiple Go versions in a Mac environment

Since there are many projects to maintain, and since these projects have different histories, some may be written by myself, some may be taken over from others, one of the problems I am facing is that Go versions may not be consistent, but you dare not take the risk to upgrade to a consistent version, after all, the test coverage is not enough to give me confidence to do so. So, for now, I'm sticking with the Go version specified by the project, so I have the need to use multiple Go versions locally. This article is about the Mac environment, but it should actually work in the Linux environment as well.

How Https Handshake

This is a stock article that has been around for two or three years, but I haven't released it because there's nothing special about it. I recently came across this article because I used some HTTPS content when I was doing a requirement, so I simply summarised it and released it. I'll talk about it.

Export VM with Cloudflare Tunnel Service

I have already introduced how to create a VM through Vagrant, but generally speaking, home machines do not have public IPs, and even if they do, the operators will block the popular ports, so if you want to put the VM on the public network, then you need to use some additional technology, this article will introduce one of the free and convenient: Cloudflare Tunnel

Manager VM with Vagrant in Linux

If you want to create and manage some VMs like I did, but want to keep it simple and migratable, then consider the Vagrant tool I introduced you to in this article, a VM management tool from Hashicorp that lets you manage VMs like Docker manages containers.

Using Go Generate In Go

In Go, there is an unwritten habit that many people like to use generated code, for example, the directory structure of the project, the stub code of grpc are generated with tools, and for small things like static files embedded in the code, automatic generation of enum type String form, etc. Anyway, the pattern of generated code can always be seen.

Backup Bookmark in Jetbrains IDEs

When I use Jetbrains IDE, I like to use the bookmark feature, especially when I'm new to a project, I will use it to mark some key code, but the problem with this feature is that it can't be backed up, even I lost the bookmark of a project that I've been following for more than a week, it's very heartbreaking, so I'm looking for a way to save the bookmark.

Digital Ocean Function Develop

Recently I was experiencing some cloud products, and I wanted to try to put some lesser used projects on Digital Ocean Function (because I used VM before), but after experiencing one, I felt it was still not very good, so I gave up, but I can still share some of the records of some of the processes.