Redis常见异常及处理方案
Redis 是高性能内存键值数据库,支持字符串、哈希等多结构,兼具缓存与持久化能力,广泛用于实时数据处理场景。本文主要介绍 Redis 常见的异常及处理方案。
Redis 是高性能内存键值数据库,支持字符串、哈希等多结构,兼具缓存与持久化能力,广泛用于实时数据处理场景。本文主要介绍 Redis 常见的异常及处理方案。
本文使用的工具都是 Windows SDK 自带的,可以采用单独安装 Windows SDK的方式,也可以通过安装 Visual Studio 来附带安装 Windows SDK。
1 | # 在弹出界面设置密码123456 |
使用 SignTool 工具对 EXE 文件签名:
1 | signtool.exe sign /f test.pfx /p 123456 Setup.exe |
选择一项事业(或者找一条能够载渡精神的船)的时候,应该想起兵书上的一句话:知己知彼,百战不殆。没有谁是为了失败而工作的,因为注定的失败不能引导出一个如醉如痴的过程。
所谓知己,就是要知道自己的兴趣何在?自己的禀赋何在?如果你喜欢文学,可你偏偏不肯舍弃一个学化学的机会,且不说没有兴趣你的化学很难学好,即便你小有成就那也是你的悲剧。如果你是一个数学天才,比如说是一个潜在的陈景润,可你对此昏然不知偏要去当一个写小说的,结果多半不妙。
所谓知彼,就是得知道客观条件允许你干什么。如果你热爱起足球的时候已经 40 多岁,你最好安心作一个球迷,千万别学马拉多纳了。如果你羡慕三毛,你也有文学才能,但是你的双腿一动都不能动,你就不要向往撒哈拉,你不如写一写自己心中的沙漠。
我一贯相信,每个人都有自己的所长,倘能扬长避短谁都能有所作为;相反如果弃长取短,天才也能成为蠢才,不信让陈景润与托尔斯泰调换一下工作试试看。对事业的选择,要根据“知己知彼”的原则,可别为“热门”或时髦所左右。
本文介绍如何根据进程 ID 获取进程命令行参数,使用 Windows NTDLL 提供的未公开 API 实现。
由于需要使用到 Windows 应用层未公开的 API,而且这些 API 在 Windows 头文件中未提供函数定义,因此我们需要使用 GetProcessAddress 动态地从 ntdll.dll 中获取函数地址。
动态获取函数地址本不是一件困难的事情,但是当涉及调用函数比较多时,这个操作就显得比较繁琐了,我们可以直接使用下面的库来简化上述操作。
https://github.com/winsoft666/ntdll
rpclib是一个 C++的 RPC 库,基于 MessagePack 进行二进制序列化和反序列化,底层使用 TCP 进行进程间通信。其功能与 Facebook 的 Thrift、Google 的 Protocol Buffers 相似,但 rpclib 更加轻量级,不需要依赖 Boost,而且不用声明接口描述文件。
Visual Studio Code(简称 VSCode)是由微软开发的一个开源的、跨平台的代码编辑器。Visual Studio Code 的优势就是有丰富的扩展包,大多数功能都可以通过安装扩展包的方式来实现。
打开 Visual Studio Code 官网https://code.visualstudio.com/,根据系统选择对应的版本进行安装:
本文不是一个完整的正则表达式的教程,仅适用于已掌握正则表达式语法,需要进行规则速查的开发人员。
桌面客户端也叫 PC 客户端,桌面操作系统(如Windows、MacOS、Ubuntu 等系统)上的软件都可以称为桌面客户端软件,客户端软件的开发有多种技术选型方式,而且每种方式各有优劣。
采用不同的方式通常会导致在开发周期、技术人员招聘、软件性能、安装包体积等方面有比较大的差别。本文结合我这些年的客户端开发经验,聊一聊在客户端开发方面的各种技术选型以及他们的优劣。