运维

分类下相关文章

微信小程序业务的云服务器 CPU 内存自动扩容

大年三十经历了一次人工职守的尴尬经历,用户量在那一天突然飙高。 首先,带宽用满。运维同事手动临时调高带宽两天,这点阿里云还是挺方便的。 但是,很快 CPU 不断飙高,从 20% 一路彪到 70%,随时可能抗不住。 而阿里云并没有自动单机扩容的机制,只能水平增加前端服务器,这对于我们的小业务来说并不适用。 阿里云的单机扩容,只有一个方案,就是在服务器购买期限内永久升级配置,这个费用非常高昂。特别是对于短期爆点的微信小程序而言,生命周期很可能就一两天,为此升级几个月甚至一年的配置,完全是在烧钱。 这一次我对阿里云非常失望。 因为浪费了我大年三十几乎整个一天。我随时在关注服务器的负载。而这完全可以通 ...

阅读全文...

定时同步服务器时间

$ which ntpdate /sbin/ntpdate $ crontab -e // 每隔一小时同步更新一次时间 0 */1 * * * /sbin/ntpdate pool.ntp.org >/dev/null 2>&1 阿里云服务器 而阿里云服务器内置了时间同步服务,参考 https://help.aliyun.com/zh/ecs/user-guide/alibaba-cloud-ntp-server ...

阅读全文...

Log Rotation with logrotate

Ubuntu 自带了 logrotate 程序,其他系统需要自己安装。 查看 /etc/logrotate.d/nginx 这个配置文件 # 测试方法 # /usr/sbin/logrotate -f /etc/logrotate.d/nginx /data/logs/*.log { # 每天 rotate daily # 忽略丢失的日志文件,处理下一个 missingok # 日志最多被 rotate 的次数 rotate 10 compress delaycomp ...

阅读全文...

新购了一台阿里云服务器

主要是手头有两张代金券马上过期,不用有点可惜。 代金券 101.60 云服务器ECS(按量付费),云服务器ECS(包年包月)续费 2017-04-12 00:00:00 至 2017-07-16 00:00:00 82.00 云服务器ECS(包月),云盘,增量带宽 新购,续费,升级 2017-02-27 04:27:25 至 2017-05-28 04:27:25 服务器选型 华北 1 可用区 B 系列一 1核1G 操作系统 Ubuntu 16.04 64 位 设置安全组 注意是公网入方向,开通 22, 80, 443 端口 授权类型:地址段访问 0.0.0.0/0 ...

阅读全文...

闲置服务器的裁撤问题

定期评估已有服务器的运行负载。 对于负载连续两个月过低的机器,应该考虑合并到其他服务器,以降低运营成本。 对于旧有服务可以使用公网免费服务的,例如,IP 查询接口,IFTTT 等。可以考虑下线这些过时服务。 或者迁移到性价比更高的 阿里云低配服务器 ...

阅读全文...

阿里云华北1地域云服务器预约迁移

凌晨3点爬了起来,趁着周末访问网站的人少把服务器进行迁移。当然,这不是我心血来潮,这次熬夜完全拜阿里云的 low b 技术能力所赐。 事情的起因,本月初收到了阿里云华北1地域云服务器预约迁移通知 重点内容概括: 您的服务器 IP 将发生变化 。。。 价格变贵 送一张代金券。已可以到这里领取阿里云服务器的优惠券。 服务器自动重启。。。可能重启失败 我只能说,阿里云非常 low, 升级服务居然要换 IP, 而且还要重启。最不要脸的是,升级完自动给你涨价格。 迁移这件事,体现了阿里云的技术非常渣,到了令人无语的地步。 通知全文如下 尊敬的用户您好: 您的以下实例,其所在物理机购置较早,为了提升 ...

阅读全文...

使用 vagrant 搭建 PHP 开发环境

历史项目代码是基于 PHP 5.2 的,在 Mac 系统上直接安装一套 PHP 5.2 的环境非常不现实 我担心会破坏我现有的 Laravel 5 / PHP 5.6 的开发环境 就算我不担心毁掉当前系统,也许我也根本安装不上 PHP 5.2 尝试了 docker 的方案,利用晚上睡前时间翻了几本电子书,结果以失败告终。我尝试将 PHP 5.2, Nginx, MySQL 置于不同的 container 中,死活关联不起来。感觉我还是太冒进,没有一点一点试验 docker, 上来就搞这么复杂的配置,得空找个靠谱的教程走一遍。 项目太紧,必须尽快在笔记本上搭建一套开发环境,没法子了,只能用传 ...

阅读全文...

HTTP/2

HTTP/2 会是移动时代的趋势,必须关注一下。 参考 Google性能工程师Ilya Grigorik谈HTTP/2 HTTPS、SPDY和HTTP/2的性能比较 http2 - server push 卡片 HTTP/2 frame format ...

阅读全文...

服务容灾

Harry, you cannot claim you are a Facebook engineer if you have never brought the site down! 亲历 Facebook 爆发的 5 年 服务容灾的目标是什么 当单点服务出现故障时,我们可以从容的睡一觉或者吃完饭再处理。 物理层的容灾 去单机 异地部署 分层容灾 经典的三层结构系统 | | 特点 | 请求量 | 常见容灾方案 | | -- | -- | -- | - ...

阅读全文...

如何管理程序的配置

我的生活经验使我深信,没有缺点的人往往优点也很少。 林肯 错综复杂的配置参数 通常习惯把程序的配置参数独立到一个 setting 的文件。在个人项目及小规模项目中,足矣。 但是接入了正规的研发流程之后,单单一个 setting 文件已经不能够解决问题。 本地开发环境 -> 联调环境 -> 提测环境 -> 预发布环境 -> 生产环境 当每个环境都有独立的数据库,依赖 web 接口时,配置文件就复杂了。 如果继续使用单个 setting 文件 配置文件就变得异常恶心 if env == "dev": db = "1.1.1 ...

阅读全文...

使用邮件构建数据统计系统

使用邮件作为用户入口 很多时候,我们构建的完善的内部统计系统根本没人访问,也许只有技术人员和 BOSS 才关心这些数据。 而提出需求的人,不管是产品还是其他部门的同事,在工作重心转移之后,往往没兴趣再登陆这些你用心血构建的统计系统。 我只是在抱怨自己的漂亮系统没人访问么?不是!其实我自己也不怎么访问。。。 我不开心是的根本原因是我错过了一些重要的数据。 也许你今天关注的数据,根本不如旧业务更有价值;也许你错过了基础业务的爆发增长机会,而你只关注无头产品分配给你的没有价值的工作。 微信和各种移动新闻客户端的流行,证明了一件事,大家更习惯于被推送,被灌输。 我的切身体会是,没有目标的时候以及没有目 ...

阅读全文...