logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

高性能 C++ 社交平台4:基于 Boost.Beast 的 WebSocket 网关实现

本文介绍了实时社交系统 SwiftChatSystem 的接入层网关 GateSvr 的设计与实现。GateSvr 作为客户端统一接入点,采用 WebSocket 管理长连接(端口 9090),通过 gRPC(端口 9091)与 ZoneSvr 交互。核心功能包括:连接生命周期管理、协议解析(基于 cmd+payload 的 Protobuf 信封格式)、心跳检测和登录绑定机制(建立 conn_i

文章图片
#c++#websocket#微服务
高性能 C++ 社交平台3:Protobuf 协议统一设计实践

本文介绍了社交系统后端 Protobuf 协议的统一设计实践。主要内容包括: 协议设计必要性:统一协议可避免重复劳动、便于排查错误、简化升级维护 文件组织架构: 按服务划分 proto 文件 公共类型放在 common.proto 业务 proto 按需引用公共 proto 通用类型设计: CommonResponse 包装简单结果 标准化分页和时间戳格式 统一错误码处理 命名规范: 请求/响应命

文章图片
#c++#开发语言#微服务
高性能 C++ 社交平台7:JWT 签发、会话存储与单设备策略

摘要 本文介绍了SwiftChatSystem后端中OnlineSvr服务的核心功能与实现细节,重点阐述了登录态管理机制。OnlineSvr主要负责JWT令牌的签发、会话存储和单设备登录策略,与AuthSvr形成职责分离。系统采用RocksDB存储会话数据,通过SessionStore接口管理用户会话状态。关键特性包括:1)单设备策略确保同一用户只能在一个设备保持活跃会话;2)区分JwtVerif

文章图片
#c++#微服务#websocket
高性能 C++ 社交平台12:ZoneSvr 中的 gRPC Client 封装与 RPC 调用模式

摘要:ZoneSvr中的RPC客户端封装与调用机制 ZoneSvr作为API网关,采用RpcClientBase基类统一管理gRPC连接、超时和Token注入等通用功能,各业务RPC客户端(如FriendRpcClient、ChatRpcClient)只需专注请求/响应处理。RpcClientBase实现了连接管理(支持异步等待就绪)、消息大小配置(64MB限制)以及带超时和JWT注入的Conte

文章图片
#c++#rpc#微服务
pytorch深度学习——dataset(附数据集下载)

我们创建一个新文件,起名为demo1.pyimport os我们通过查看文档可知,所有的数据集都应该继承Dataset类,并且子类都必须重写__getitem__方法,该方法的主要作用是获取每一个数据以及其label,也可以选择性重写__len__方法,获取数据集的大小。所以我们定义一个类MyData#构造方法,将文件夹名称以及子文件夹传入#获取数据集中第idx个数据以及其label,我们可以通过

文章图片
#深度学习#pytorch#人工智能 +1
高性能 C++ 社交平台14:项目部署

本文是 SwiftChatSystem 后端系列博客的第十四篇(末篇),介绍本地部署的配置与启动顺序、端口规划、Docker Compose 构建与运行、Minikube 下的 K8s 部署(ConfigMap、PV/PVC、Deployment、Service)、环境变量约定,以及未来可扩展方向(MySQL、Redis、MinIO、HPA、Prometheus)。

文章图片
#c++#微服务#rpc
高性能 C++ 社交平台1:微服务架构设计

本文介绍了SwiftChatSystem高性能C++社交平台微服务架构的设计思路。该系统采用分层架构,包括接入层(GateSvr)、路由层(ZoneSvr)和业务服务层,通过Zone-System模式实现统一入口和业务分发。后端服务采用Handler→Service→Store三层结构,支持私聊、群聊、好友等完整社交功能。系统使用C++17开发,基于gRPC通信,采用RocksDB存储,并预留云原

文章图片
#c++#微服务#开发语言
pytorch深度学习——dataset(附数据集下载)

我们创建一个新文件,起名为demo1.pyimport os我们通过查看文档可知,所有的数据集都应该继承Dataset类,并且子类都必须重写__getitem__方法,该方法的主要作用是获取每一个数据以及其label,也可以选择性重写__len__方法,获取数据集的大小。所以我们定义一个类MyData#构造方法,将文件夹名称以及子文件夹传入#获取数据集中第idx个数据以及其label,我们可以通过

文章图片
#深度学习#pytorch#人工智能 +1
pytorch深度学习——dataset(附数据集下载)

我们创建一个新文件,起名为demo1.pyimport os我们通过查看文档可知,所有的数据集都应该继承Dataset类,并且子类都必须重写__getitem__方法,该方法的主要作用是获取每一个数据以及其label,也可以选择性重写__len__方法,获取数据集的大小。所以我们定义一个类MyData#构造方法,将文件夹名称以及子文件夹传入#获取数据集中第idx个数据以及其label,我们可以通过

文章图片
#深度学习#pytorch#人工智能 +1
数据结构——顺序表(C++)

顺序表的本质其实就是使用一个数组对数据进行存储,我们在此博客中,基于C++的类与对象来实现顺序表。

文章图片
#数据结构#c++#开发语言
    共 13 条
  • 1
  • 2
  • 请选择