惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
C
Cisco Blogs
Cloudbric
Cloudbric
The Last Watchdog
The Last Watchdog
L
LINUX DO - 热门话题
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
Application and Cybersecurity Blog
Application and Cybersecurity Blog
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Security Archives - TechRepublic
Security Archives - TechRepublic
TaoSecurity Blog
TaoSecurity Blog
V2EX - 技术
V2EX - 技术
H
Heimdal Security Blog
S
Security Affairs
L
Lohrmann on Cybersecurity
Hacker News - Newest:
Hacker News - Newest: "LLM"
Simon Willison's Weblog
Simon Willison's Weblog
WordPress大学
WordPress大学
小众软件
小众软件
Security Latest
Security Latest
AWS News Blog
AWS News Blog
Apple Machine Learning Research
Apple Machine Learning Research
GbyAI
GbyAI
Engineering at Meta
Engineering at Meta
阮一峰的网络日志
阮一峰的网络日志
罗磊的独立博客
F
Full Disclosure
S
Schneier on Security
L
LangChain Blog
MyScale Blog
MyScale Blog
Know Your Adversary
Know Your Adversary
P
Privacy International News Feed
Google Online Security Blog
Google Online Security Blog
Scott Helme
Scott Helme
Stack Overflow Blog
Stack Overflow Blog
爱范儿
爱范儿
A
Arctic Wolf
Martin Fowler
Martin Fowler
B
Blog RSS Feed
大猫的无限游戏
大猫的无限游戏
博客园 - 三生石上(FineUI控件)
The Register - Security
The Register - Security
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园_首页
Latest news
Latest news
F
Fortinet All Blogs
G
GRAHAM CLULEY
T
The Exploit Database - CXSecurity.com
Hacker News: Ask HN
Hacker News: Ask HN

Guyskk的博客

AI 编程=控制系统:BeecodeAI 的设计原理 把大模型当成晶体管:从阻抗匹配到集成运放的思维实验 控制论视角下的 AI 编码:二阶系统、放大器与注意力的最优分配 AI Coding 验证系统的第一性原理 AI Coding Team 管理笔记 从文本补全到状态机循环:重定义 AI Agent 的操作系统架构 分析 Claude Code 提示词的方法 - mitmproxy Claude Code 监督器:让 AI 主动把事情做好 我的AI大模型技术分享2025 三十而砺 - 反思我的创业 自宅创业 - #34 宝贝女儿出生,我当爸爸了 自宅创业 - #33 继续聊聊自媒体AI副业工具 自宅创业 - #32 新产品-自媒体副业工具 自宅创业 - #31 APP上架了,路在何方? 自宅创业 - #30 人机交互,打造AI写作神器 自宅创业 - #29 经验分享: 让AI输出结构化JSON数据 2023自宅创业年终总结 自宅创业 - #28 我在ChatGPT风口的创业总结 2022自宅创业总结,进入创业新阶段 自宅创业 - #27 蹭热点的ChatGPT小程序 自宅创业 - #26 开发果蔬时节APP 自宅创业 - #25 驾照到手 & 买车 自宅创业 - #24 继续独立开发艺爪付费 自宅创业 - #23 考驾照、忙碌的一个月 自宅创业 - #22 艺爪付费迭代 & 重回赣州 自宅创业 - #21 新产品艺爪付费上线内测 自宅创业 - #20 付费订阅后端完成 & 商标注册 自宅创业 - #19 继续开发,为网站App提供付费订阅 自宅创业 - #18 开始新产品,为网站App提供付费订阅 2021自宅创业10个月总结,我会再次挑战 Hami-Vuex开源了,哈密瓜味的Vuex! 自宅创业 - #16 半独立开发的第一个月 自宅创业 - #15 开始远程兼职 自宅创业 - #14 写订单系统后台 自宅创业 - #13 创业半年回顾 自宅创业 - #12 专注和效率问题 自宅创业 - 小程序迭代延期 + 卖猕猴桃 自宅创业 - The Mom Test 自宅创业 - 水果直销自营模式
自宅创业 - #17 代码重构,以及蚁阅的更新
2022-01-13 · via Guyskk的博客

感觉时间过的飞快,先记录一下这个月的事情,年终总结要等过年前更新了。

代码重构

这个月前期主要在做代码重构,提高项目的开发效率。

首先是开源了 Hami-Vuex 这个库,我也将蚁阅和果蔬时节两个项目的前端状态管理换成了 Hami-Vuex。重构之后代码更加模块化了,代码提示也非常友好,可以参考 PR#11

其实很早在蚁阅的前端代码中就有部分模块化的尝试,但写法算不上优雅,在果蔬时节中把这个尝试继续完善,最终抽象成了一个完整的库。

另一个重构是把果蔬时节的小程序端和后台管理界面代码拆分,原本是写在一起,类似这样:

src/
    pages/
        admin/
            xxx.vue
        app/
            xxx.vue
    store/
        admin/
            xxx.js
        app/
            xxx.js
package.json

当初用了很取巧的办法(条件编译)在一套代码里运行不同的界面。为了方便修改和部署,决定拆分成两个独立的目录,可以分别打包部署:

admin/
    src/
        pages/
        store/
    package.json

app/
    src/
        pages/
        store/
    package.json

shared/
    components/
    package.json

其中有部分代码需要复用,放在 shared/ 目录中。为了复用代码,尝试了 Monorepo 的模式,例如 yarn workspace, pnpm workspace, npm link,踩了一堆坑。最后发现解决办法是修改一个不起眼的 Webpack配置,这样文件软链接(符号链接)才能正常使用。

蚁阅图片代理更新

在12月底的一个下午,连续收到阿里云的几条告警短信,当时我被吓到了。

CDN告警短信

检查了一下违规URL发现都是色图,阿里云检测到之后主动屏蔽了。幸好只是屏蔽了几个URL,没有直接屏蔽我的主域名,收到短信我马上就去把蚁阅图片代理功能关闭了。

估计是有用户订阅了奇奇怪怪的网站,然后图片被缓存到了阿里云CDN上,被阿里云的鉴黄程序扫描到了。为了更彻底的解决这个问题,必须把图片代理功能和主站隔离,这样万一图片域名被屏蔽也不会影响蚁阅其他功能。

具体做法是把图片代理功能单独部署在阿里云-云函数上,用独立子域名,所有图片请求不经过CDN和缓存,另外图片代理链接设置30分钟有效期,避免被分享传播。目前蚁阅图片代理已经更新好了,功能也已经恢复了。

蚁阅的经营情况

访问量统计,基于自建的 Plausible 服务,每天大约是 200 个活跃用户。

蚁阅2021年访问量

收入统计,基于 Beancount介绍),蚁阅 2021 全年收入是 1905 元,大致可以负担服务器开支。

蚁阅2021年收入

对于蚁阅这个产品,我希望保持小众,稳定运行下去,但不太会加新功能了。等其他产品赚到钱了,再考虑把蚁阅做大,目前蚁阅做的越大风险越大。

最后

通过「RSS阅读器」或者关注公众号「自宅创业」可以订阅博客更新,也可以在 关于我 页面找到我的联系方式,欢迎交流!