Reclamation of Idle Compute Instances
Idle Always Free compute instances may be reclaimed by Oracle. Oracle will deem virtual machine and bare metal compute instances as idle if, during a 7-day period, the following are true:
来源于: https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm
所以说我做了这个小工具, 可以智能的稳定你的内存在一个可被设置的百分比, 默认是 25%-35%区间每隔几分钟随机调整 (虽然说没有证据表明甲骨文会回收内存占用极其稳定的服务器, 但是故意制造随机的浮动看起来更安全点). 并且有高级的策略智能地释放和填补内存, 尽可能让它完全不真正"浪费"任何内存.
项目地址:
https://github.com/bOOOOcG/nerdy-holder
使用方法:
对于 Ubuntu/Debian 你只需要一条指令即可完成部署:
# 安装 (Ubuntu/Debian)
curl -fsSL https://raw.githubusercontent.com/bOOOOcG/nerdy-holder/main/remote-install.sh | sudo bash
# 卸载 (Ubuntu/Debian)
curl -fsSL https://raw.githubusercontent.com/bOOOOcG/nerdy-holder/main/remote-uninstall.sh | sudo bash
# 查看状态 (Ubuntu/Debian)
curl -fsSL https://raw.githubusercontent.com/bOOOOcG/nerdy-holder/main/deployment/monitor.sh | bash
对于 Oracle Linux / CentOS / Rocky Linux 😅:
# 1. 安装依赖
sudo yum install -y python3 python3-pip git
# 2. 克隆项目
git clone https://github.com/bOOOOcG/nerdy-holder.git
cd nerdy-holder
# 3. 安装 Python 依赖
sudo pip3 install -r requirements.txt
# 4. 创建安装目录
sudo mkdir -p /opt/nerdy-holder
sudo cp -r nerdy_holder/ /opt/nerdy-holder/
sudo cp run_holder.py /opt/nerdy-holder/
sudo cp requirements.txt /opt/nerdy-holder/
# 5. 创建 systemd 服务
sudo tee /etc/systemd/system/nerdy-holder.service > /dev/null
Important: Oracle 可能会时不时更改判定规则, 比如说之前最开始是 10%, 然后提升到 15% 现在是 20%, 所以说你可能需要关注最新政策来配置你的 nerdy-holder.
FAQ
Q: 你可以提供 docker 吗😥?你可以提供 docker 吗😫?你可以提供 docker 吗😭?
A: 说真的, 你不应该用 Docker 运行它 🤓☝
Q: 为什么它叫 nerdy-holder
A: 因为我们采用了大量的酷算法让他更好的完成这个水多加面, 面多加水的简单工作! 包括 PID 控制算法 EMA 指数算法 成本-收益分析 非对称策略算法, 因为算法太多导致需要的参数变量太多 所以说甚至有一个自我学习优化参数算法自动优化所有的策略, 所以说你完全不需要为了每个环境配置精心调配任何参数, 它就可以自我学习适配到任何的环境任何的服务器完美工作, 甚至有一个 benchmark.
Q: 为什么需要 PID,EMA,成本-收益分析,非对称策略,自我学习,benchmark?
A: 因为过度设计很酷, 而且可以学习到很多东西.
Q: 我没有抢到 Oracle 的 A1 实例怎么办????
A: 你可以在你的个人电脑运行这个 nerdy-holder 让微软不会回收你的个人电脑.
Q: 我可以用于其他的场景吗, 我没有 oracle 服务器, 但是我看最近又涨价的金子内存条被我花钱买过来 天天占用极其低让我心里非常不舒服, 我想让他占用高的同时又不影响我日常使用, 我可以用这个 nerdy-holder 配置为固定占用内存到 100%吗?
A: 当然可以, 不过我建议设置为 80% 到 90%, 100% 可能会影响你的正常使用.
Q: 它会浪费我的 RAM 吗?
A: 我们有非对称策略, 在你需要用到内存时 他可以智能的秒级释放内存.
Q: 这违反任何 ToS 吗?
A: 这不违反任何的 ToS, 本质上和你故意运行一些服务试图让 Oracle 判定你的服务器并不是闲置的原理一样, 只是这个会更智能和适合长期作为服务运行
nerdy-holder, 内存调度, Oracle, A1

