摘要:
问题背景 前几天突然收到Redis内存超标的报警,赶紧看了下监控,看到这个曲线吸了一口凉气,这增长速度也太快了,需要快速定位出问题,不然就要爆了。 这个Redis由多个应用共享,我们就有2个问题需要解决: 首先要找出是哪个应用在占用Redis内存; 其次是到底是某个key值太大,还是数量太多引起的? 阅读全文
摘要:
2天的Qcon 会议昨天结束了,门票比看演唱会还贵,不做点总结觉得有点对不起门票。 我关注的议题在3个方面:云原生、DevOps和技术团队管理。就从3个方面谈谈自己的感受。 云原生:最初是想收获具体技术实施层面的改进思路,以加速推进我们在云原生的实践,没有达到预期,最大的收获反而是在信心上——看到阿 阅读全文
摘要:
故障现象 昨天同事反馈一个奇怪的问题,Laravel的队列整个挂住了,任务都有设置超时,但是超时以后,任务并不会被自动终止,导致后续的任务一直得不到处理。 故障重现 最初我的反应是队列任务配置不正确导致超时机制失效,但是经过同事的验证,大部分的情况任务超时会被正常终止,只有通过Guzzle发API请 阅读全文
摘要:
背景 网络上已经有很多关于Let's encrypt免费申请证书的文章,但是基本只谈最基础用法,立刻用起来是没问题了。但是在实际使用中,碰到了一些问题则比较头疼。整理以后,大概出在以下几个方面: 单域名和泛域名的申请方式上有区别; 单域名和泛域名的证书如何自动续期; 如果提前验证自动续期是正常的; 阅读全文
摘要:
简介 大部分的WEB网站,主要的流量都是静态资源,用户首次访问的大部分时间都在等待静态资源的下载,越大的带宽,访问速度就越快。但是我们购买的服务器,一般都是小水管(1~5M),毕竟国内的带宽贵得很。相比于通过加大带宽加快访问速度,直接让用户通过CDN访问静态资源不仅更快,而且便宜。 为了防止CDN回 阅读全文
摘要:
对读者的要求 后端开发基础知识 掌握Docker基础用法以及docker compose用法(有laradock使用经验为佳) Laravel基础 简介 在第一篇文章《纯前端项目的Docker镜像打包》中,提到后端项目的镜像打包方面比较复杂,需要独立一篇。我们的目标仍然是执行一条命令就要能完成应用的 阅读全文
摘要:
对读者的要求 掌握nginx基本用法 掌握Docker基础用法 Linux 命令行基本操作(Windows下则是掌握 这个工具) 简介 所有的项目最终都要布署到线上才能对外提供服务,在布署方案上,之前主要采用 拉取的方式,而现在则主要使用 直接启动镜像的方式,或者通过云容器 ,`aws ecs Do 阅读全文
摘要:
简介 布署到生产环境跟开发环境有显著的区别,一个关注性能和安全,一个关注开发效率。如果将开发环境直接布署到线上,常常会出现敏感信息泄露和性能低下的问题。因此这里简单介绍布署到生产环境的一些基础检查点,分成以下几部分讨论: 1. nginx配置 2. php.ini配置 3. Laravel应用配置 阅读全文
摘要:
面向读者 有一定Laravel经验的开发者 背景 在许多应用场景中,如航班查询、跨境电商领域,跨时区是开发中一定会碰到的问题。以跨境电商为例,最常见的场景就是商家在管理后台查阅订单数据时,希望订单时间都按北京时间,而美国客户和英国客户在下单时更想看到他们的订单上显示的是当地时间。另外一种常见场景是, 阅读全文
摘要:
背景 在使用Ant Design Pro开发时,如果是组件渲染出错,生产环境下会直接导致整个页面白屏,造成了非常差的用户体验。一般来说,当页面出错时,提示这个页面出错就行了,左边的菜单栏应该还要能够正常使用,这样的用户体验会好一些。 但是组件渲染时由于不能在父组件使用try...catch捕获,因此 阅读全文