Archive

2024

2024-07-23

MagicOnion 结合 Orleans

书接上回,上一篇文章介绍了怎么利用 MagicOnion 搭建实时通信程序,这一篇将扩展服务端,结合 Orleans 创建一个分布式的系统,突破单台机器的上限,可服务海量用户。 Orleans 项目分为几个部分:Grain Interface / Grain / Silo / Client Grain Interface : 定义接口,用于 Silo 和 …
阅读全文

2024-07-19

C# 使用 MagicOnion + MessagePack + YetAnotherHttpHandler 进行实时通信

本文用机器翻译 MagicOnion + MessagePack + YetAnotherHttpHandler でリアルタイム通信を行う实际操作中某些步骤遇到问题,因此本文有所修正; 以及机器翻译不顺畅的地方,做了一些修改; 另外补充一些细节,避免读者实操遇到困难。 以下是正文,文中的“我”是原作者 概述 我在2024年使用最新版本的MagicOnion …
阅读全文

2024-03-02

protobuf 编码

引言 假设有如下的消息定义 message Person { string name = 1; uint32 age = 2; uint32 height = 3; uint32 weight = 4; } 有如下数据: const person = { name: 'kobe', age: 18, height: 198, weight: …
阅读全文

2024-01-07

Electron 入门

没想到 2024 年了,创建一个 electron 项目还是那么困难,本文记录可顺利创建 electron 项目的方法,避免后来者浪费时间。 创建 electron 项目 首先是使用 electron forge 创建项目 npm init electron-app@latest demo-electron -- …
阅读全文

Archive

2023

2023-08-18

Nestjs 项目中如何统计接口的耗时,并且打印请求和响应的数据

在项目中统计耗时和打印日志是非常常见的需求, Nestjs 项目中可以利用 Interceptor 非常方便的做到这一点, 本文就一步一步的记录其实现方法 首先打开终端,进入你的工作目录,创建一个全新的 Nestjs 项目 执行: npx @nestjs/cli new demo-nestjs 随即根据提示选择包管理器,再等待一段时间安装依赖,项目就创建好了 …
阅读全文

2023-04-20

李想2020演讲实录:从三次创业看专业CEO的认知方法论

Note1: 原视频地址:bilibili这是2020年中旬,理想汽车CEO李想在线上的一个演讲 李想在这场演讲中,罕见地系统梳理了20年创业心法:从泡泡网、汽车之家到理想汽车,如何用‘认知-战略-业务’三层体系打破行业常识。本文完整还原演讲中关于投资本质、行业破局、人机结合的深度思考。 Part 1 演讲实录 一、投资的终极悖论:赛道易判,人性难测 汽车之 …
阅读全文

2023-04-03

Sign in with Apple

概述 我在实现 Sign in with Apple 时查看了很多文档,越看疑问越多 为什么苹果设备上实现的流程和 WEB 端如此不同 服务端验证时为什么除了 id token,还有一个 auth code,到底是干嘛用的 什么是 nonce ,如何验证 nonce 为什么要获取 refresh token 和 access token,我似乎用不到它们 直 …
阅读全文

Archive

2022

2022-12-19

使用 pinus-http-plugin

引言 pinus-http-plugin 是为了让 pinus 进程可以处理 http 协议而做的一个插件 然而文档较少,具体使用步骤如下 创建新项目 通过以下命令来初始化项目 # 创建目录并进入目录 mkdir demo cd demo # 创建 pinus 项目 pinus init # 安装依赖 cd game-server yarn install …
阅读全文

2022-11-12

网件 r6400 变砖

本篇记录一次r6400变砖后的救机过程 之前刷机玩,刷错固件,导致路由变砖 一度以为没救了 实际是因为搜索的质量不高,没有按照正确的做法来操作 只要按照 nmrpflash 所教的方法来操作,救砖是很轻松的,而且不需要别的工具,只要一根网线把路由器跟电脑连起来就可以 准备的软件: windows 系统(其实 Mac 和 Linux 都是可以的,由于我是在 …
阅读全文

2022-11-12

将 js 对象设置为只读

在日常开发中,经常遇到一种情况,就是读配置 然而有时可能不小心会在业务逻辑中把配置给改了,导致之后的读取出现异常 使用 Proxy 要避免这类问题,使用 js 的 Proxy 将配置设置为只读是一个很好的办法 话不多说,上代码 const handler = { get: function (target, key) { if ( typeof …
阅读全文