AHdark

Senior high school student passionate about coding, focused on algorithms, skilled in TypeScript, Rust, and Golang.

Beijing, China
AHdark

Notes

为什么我使用 Golang 撰写容器化应用程序

在当前互联网架构圈子,容器化、微服务,是被主要讨论的话题。 显然,对于互联网的发展趋势来看,项目正在变得愈加庞大。单一的巨大的项目是不利于维护和开发的,开发者的电脑几乎难以直接承载阿里云、Azure这种巨大的项目,那我们就需要对其进行解耦。也就是说,应用的组件化、容器化、微服务化必将成为趋势。 在容器化应用程序开发这一点,我在之前的开发历程中有些许心得,在本文我将对其具体阐述。 先前的语言选用 在开始学习 Golang 之前,我曾尝试过很多语言。 就如我的个人简介所写的一样,较为经典的PHP、Java,较为复杂的CPP,较为有趣的Express.js、Koa.js、Next.js,我都曾使用过。即使是现在,你也可以在我的GitHub账号找到许多之前的练习品,如 AH-dark/bing-image-api。但这些语言或多或少都有一些不足之处,因而被我放弃。 Java Spring 全家桶在中国大陆被广泛地使用,特别是阿里巴巴,几乎可以算是 Spring 的最主要用户之一。 依靠阿里巴巴,SpringBoot

By AHdark

Notes

使用 Mailgun 用于邮件服务

在近期,我逐步将近乎所有的服务所使用的邮件服务都更换为 Mailgun,本文我将讲述我作出这一决定的原因和具体做法。 在确定使用 Mailgun 以前,我曾对SMTP邮件推送这一部分有过多种尝试。 曾用品 阿里/腾讯 企业邮箱(国内) 在我仍在职圆云的时候,我们依靠阿里云的企业邮箱进行企业事务处理。 企业邮箱同时兼具收发功能,具有较好的稳定性,但价格较高。对于个人服务来说,买五个账号起步,每年600元的企业邮箱,似乎毫无必要。 而腾讯企业邮箱等服务依赖企业微信,过于冗杂,对于个人来说过于麻烦,而且 Exchange 协议支持的不完善。 因此,我放弃这一想法。 阿里/腾讯 邮件推送 * 阿里云邮件推送:https://www.aliyun.com/product/directmail 我曾在圆云时期使用阿里云的邮件推送进行邮件通知。其好处在于,稳定性较高,且支持多域名多用户等情况。 但其只提供了邮件发送服务,完全不对邮件接收做支持,甚至不支持转发,因此在使用一段时间后我放弃了这一方案。 ahdark.com

By AHdark

Notes

Golang 使用 Wire 进行依赖注入

前言 在参与 Star Horizon 的一个项目时,我得到团队内同学的启发,发现了 Wire 这个神奇的东西。Wire 是 Google 研发并开源的一个 Golang 依赖注入解决方案,它通过解释原有文件生成新文件并用 Go Build Injector 实现编译环节的代码区分。 根据 Go Blog 所属,Wire 最先用于 Google 开源的 Go Cloud 项目中。 google/wire 应用 场景 我们通常会在构建 SDK 时在 Client 中嵌套 Services,在这种场景下 Client 依赖于 Services。 但常见的问题是:随着 Services 的增多,代码变得越来越冗杂,

By AHdark

Notes

记录一次自建短链接系统

4月9日,我注册了 ahd.im 域名并打算以此为基础搭建短链接系统。但当我在 GitHub 等平台搜索了一圈,却没有找到令我满意的作品。大多数UI丑陋或是算法效率低下,难以满足我的愿景,因此我决定着手写一套自己的短链接系统。 选择 这是我第一次独立完成一套全栈系统,其摸索的过程自然会为我全栈开发能力积累经验。因此,选择一套高效、高兼容、普适的技术栈自然是极为重要的一步。 后端 对于后端,最重要的是保证代码质量和执行效率。 PHP 效率太低,代码混乱,不被我欣赏。 ExpressJS 不适合写较大的系统应用,其并发也不强,且代码中同步异步容易混乱。 Golang 尽管性能较强,但不符合我的代码习惯。 C++ 应该就没有一个能用的Web开发框架。 最后,我选择了使用 Java Spring Boot 框架撰写后端功能,使用 MyBatis + MySQL 进行数据控制。 前端 前端便没有那么多选择了。 jQuery 我不是很熟悉,且当今时代高级前端框架林立,

By AHdark
如何有效地提高WordPress博客的访问速度

WordPress

如何有效地提高WordPress博客的访问速度

引言 WordPress 作为建站市场占比40%的庞然大物,确实可以称得上是一个时代之作。也正是因此,不少个人站长和企业都选择使用 WordPress 构建自己的站点。在本篇文章中,我便要简要叙述一下如何利用有限的服务器和网络资源提高 WordPress 站点的访问速度。 关于 WordPress 本章节将阐述有关 WordPress 的相关知识。 什么是 WordPress WordPress 是一个以 PHP 和 MySQL 为平台的自由开源的博客软件和内容管理系统。WordPress具有插件架构和模板系统。截至2018年4月,排名前1000万的网站中超过30.6%使用WordPress。WordPress是最受欢迎的网站内容管理系统。全球有大约40%的网站(7亿5000个)都是使用WordPress架设网站的。WordPress是目前Internet上最流行的博客系统。WordPress在最著名的网络发布阶段中脱颖而出。如今,它被使用在超过7000万个站点上。 材料引用自 Wikipedia https://en.wikipedia.org

By AHdark

Softwares

Cloudreve 安装部署详细教程

我编写了这篇关于 Cloudreve 安装和部署的详细教程,起因是我在 Cloudreve 论坛上对一篇教程提出批评后收到了反馈。这促使我反思,并决定贡献一份更全面、高效的指南。文章中,我详细介绍了多种部署方法,每种方法都附有详尽的操作步骤和优劣分析,这些都是基于我个人的实际测试和经验。我希望通过这篇文章,提供一个清晰、易于理解的指南,帮助读者有效地安装和部署 Cloudreve。我的目标是提供高质量、实用的信息,并通过这种方式向社区做出积极的贡献。

By AHdark