摘要:
CentOS 7.9.2009上Python 3.12.3的一键安装脚本 #!/bin/bash # 定义Python版本号和目录变量 PYTHON_VERSION="3.12.3" PYTHON_BIN="3.12" PYTHON_CURRENT_VERSION_DIR="/usr/local/p 阅读全文
摘要:
Centos 配置国内yum源及epel源 一、备份原有的yum源配置文件 在进行任何更改之前,建议先备份原有的yum源配置文件,以防止配置过程中出现问题。可以使用以下命令备份CentOS-Base.repo文件: [root@localhost ~]# cat /etc/redhat-releas 阅读全文
摘要:
远程过程调用RPC——优化RPC调用, 缓解频繁请求导致的GC压力 在Go语言的高并发和微服务架构中, 远程过程调用(RPC)是一种常用的通信机制。然而, 当频繁发送RPC请求时, 不断创建Request和Response结构体可能会带来额外的垃圾收集(GC)压力, 进而影响应用的性能和响应时间。为 阅读全文
摘要:
远程过程调用 RPC——客户端处理RPC请求的原理及源代码分析 客户端无论是同步调用还是异步调用, 每次RPC请求都会生成一个Call对象, 并使用seq作为key保存在map中, 服务端返回响应值时再根据响应值中的seq从map中取出Call, 进行相应处理。 客户端发起RPC调用的过程大致如下所 阅读全文
摘要:
远程过程调用 RPC——服务端处理RPC请求的原理及源代码分析 RPC网络调用会使用到Request和Response两个结构体,分别是请求参数和返回参数,通过编解码器(gob/json)实现二进制和结构体的互相转换,它们的定义如下所示: 在Go语言的RPC服务端,一个持续运行的循环不断地监听并接收 阅读全文
摘要:
远程过程调用 RPC——服务端注册源代码实现原理分析 rpc server demo代码参考我前一篇博文:https://www.cnblogs.com/zuoyang/p/18146870 RPC Server端的RPC代码架构主要由两大部分构成: 第一部分是服务方法的注册过程。在这个过程中, 我 阅读全文
摘要:
远程过程调用 RPC —— 实践案例:Go语言RPC过程调用实践 Go语言的官方RPC库net/rpc为开发者提供了实现远程过程调用的强大功能,使得通过网络访问对象的方法成为可能。这种机制极大地促进了分布式系统的构建,让不同的服务能够轻松地进行相互通信和协作。 在使用Go的RPC库时,服务器需要注册 阅读全文
摘要:
远程过程调用 RPC——RPC相关的基础知识和原理 在微服务架构中,各个服务实例专注于处理特定业务领域的逻辑。为了实现整体业务流程,这些服务实例之间必须进行频繁的交互。它们之间的通信依赖于轻量级的远程调用方式,如RPC(远程过程调用)和HTTP。尽管HTTP是应用层协议,但RPC在网络协议方面具有更 阅读全文