分类2017年下的文章
Firekylin 是基于 ThinkJS 开发的一套高效简洁的动态博客系统,数据库使用 MySQL,安装配置非常简单方便。
关于 Firekylin 的安装方式在 wiki 上已经有很详细的说明,以下本文主要说下在 Docker 中安装运行 Firekylin 的方式。
一般来说,在 docker 中运行网站会有两种常用的方式。即一种是把代码作为卷挂载到容器中运行,好处是方便代码的版本控制和更新;另一种方式是把代码和运行时环境同时打包到容器中,好处是方便随处运行。以下会分别就这两种运行方式做说明。
另外以下内容只谈及 Firekylin 的安装和运行,不涉及到 Nginx 和 MySQL。数据库之类的敏感内容(...
入手树莓派
Polyfills 和 Ponyfills 的区别
Yarn vs npm: 你需要知道的一切
高性能服务器架构思路(五)——分布式缓存
本文分享自腾云阁
作者介绍:韩伟,1999年大学实习期加入初创期的网易,成为第30号员工,8年间从程序员开始,历任项目经理、产品总监。2007年后创业4年,开发过视频直播社区,及多款页游产品。2011年后就职于腾讯游戏研发部公共技术中心架构规划组,专注于通用游戏技术底层的研发。
在分布式程序架构中,如果我们需要整个体系有更高的稳定性,能够对进程容灾或者动态扩容提供支持,那么最难解决的问题,就是每个进程中的内存状态。因为进程一旦毁灭,内存中的状态会消失,这就很难不影响提供的服务。所以我们需要一种方法,让进程的内存状态,不太影响整体服务,甚至最好能变成“无状态”的服务。当然“状态”如果不写入磁盘,始终还是需要某些进程来承载的。在现在流行的 WEB 开发模式中,很多人会使用 PHP+Memcached+MySQL 这种模型,在这里,PHP 就是无状态的,因为状态都是放在 Memcached 里面。这种做法对于 PHP 来说,是可以随时动态的毁灭或者新建,但是 Memcached 进程就要保证稳定才行;而且 Memcached 作为一个额外的进程,和它通信本身也会消耗更多的延迟时间。因此我们需要一种更灵活和通用的进程状态保存方案,我们把这种任务叫做“分布式缓存”的策略。我们希望进程在读取数据的时候,能有最高的性能,最好能和在堆内存中读写类似,又希望这些缓存数据,能被放在多个进程内,以分布式的形态提供高吞吐的服务,其中最关键的问题,就是缓存数据的同步。
高性能服务器架构思路(四)——编码复杂度和通信
高性能服务器架构思路(三)——分布式系统概念
高性能服务器架构思路(二)——缓冲清理策略
高性能服务器架构思路(一)——缓冲策略
【分享】HTTP 状态码 451:基于法律上的原因,我不能向你展示网页内容
几天前GitHub一个repo由于某个原因而无法从国内访问,当我打开ChromeDevTools时,发现了一个新的HTTP状态码——451。我们先看看维基百科对这个状态码的介绍:在电脑网络领域中,HTTP451因法律原因不可用(英语:HTTP451UnavailableForLegalReasons)是一种HTTP协议的错误状态代码,当用户请求访问某个经政府审核等查核方法后认定不合法的来源时,就会显示这个错误代码。451数字来源于1953年由美国作家雷·布莱伯利所著的反乌托邦小说《华氏451度》。故事叙述了一个压制自由的近未来世界,禁止人们阅读、拥有书籍,所谓的消防员的工作不是灭火,而是焚书。文中的主人公,盖·蒙...