Docker 容器化多应用部署

对于云上部署一直没有找到一个比较简单舒服的方式,花了点时间终于把 Docker 常用的一个基本套路跑通了,本文结合 Docker + Nginx + Letsencrypt 在同一台 Linux 服务器上部署多个应用,让我们这些低流量单鸡也能轻松部署多个站点,并且让其支持 HTTPS 访问,文中以 Ruby/Sinatra 应用为例,当然不局限于此,你也可以用同样的方法来部署 Python、PHP 或者静态站点。

Swift Server-side

Swift 从苹果在 2015 年 WWDC 正式发布 Swift 起,大家冷嘲热讽的就是苹果爸爸一年出一个新语言,梗的来源其实是因为 Swift 早期几个版本 API 变化非常大,很多开发者对其吐槽。 随后在 16 年的时候苹果正式成立 swift-server 工作组,核心成员由几个主流 Swift Web Framework 核心开发者组成并且同样由社区驱动,主要目标是建立基于 Swift 的服务器基础功能,包括基础网络、安全和加密、HTTP 和 WebSocket。

招人了 - 杭州阿里国际无线 iOS / Android(可年后入职)

第一次在博客打小广告,年后想跳槽/不想跳槽的小伙伴们都注意啦!!! 可年后入职!!! HC 充足 部门:国际技术事业部-ICBU技术部 职位:iOS / Android 级别:P6、P7 坐标:杭州滨江 加分项:国际化背景、英语、算法、开源项目

SDWebImage 为什么无法读取 webpmux 生成的 WebP 动图?

前几天有个需求是需要把一些 JPG 图片转换成 WebP 然后放到客户端里播放动图,主要是想享受 WebP 格式带来的压缩率,生成更小的图片文件,节省带宽和下载时间。 webpmux 是什么? webpmux 是 Google 为其 WebP 出得附属配套工具,专门用来操作 WebP 动图,可以从 WebP 动图里抽出每一帧,也可以从一批图像帧合成成一张 WebP 动图,同时也支持设定循环次数、背景颜色,每一帧的播放时长、暂停时间等等。

[译] 探索 Swift 4 中新的 String API

原文:Exploring the new String API in Swift 4 — Swift by Sundell WWDC 已经结束了(我觉得是自 2014 年来最好的一场 WWDC),同时 Xcode 9 beta 版也发布了,很多开发者已经开始把玩 Swift 4 ,今年的新版本真心不错,这是一个改进版本而不是重构版本(像 Swift 2 和 3),因此大多数代码升级起来会更容易。

对一个 Django 站点做 ab 压力测试

今天想起来测测一个小 Django 站点的性能和压力,寻找一下看有没有内存泄漏,先介绍下服务器的信息,站点部署在 Google Cloud Platform,实例尺寸是微型(1 共享 vcpu, 0.6GB 内存),价格大致是($4.28/月 估算值),地区是 asia-east1-c,速度还是挺快,由于之前送的 300 刀还没用完,所以不用担心钱钱问题。 部署方式主要参照的这篇文章 《How To Set Up Django with Postgres, Nginx, and Gunicorn on CentOS 7》,大致内容如下:

fir-mac 开发笔记

练手 Cocoa 开发,开发并开源了一款 fir.im 的 Mac 客户端,此篇主要记录其开发历程,总结一下遇到的问题 缘由 某一天突然翻到自己 GitHub 下有一个空仓库,名字叫 fir-mac,提交时间在 2016 年 6 月 22 号,恍然大悟原来又是弃坑项目之一。 由于从事 iOS 开发后一直对 macOS 开发比较感兴趣,感觉 Mac 应用有一种天生的美感,更是在 OS X 10.

iOS10 Safari 引导用户信任企业签名

今天研究了一下企业应用分发,网络上有很多文章讲如何利用一个 Web 页面进行 iOS 企业应用分发下载安装,这里就不再赘述;这篇文章主要针对的是企业应用安装后如何在 Safari 中引导用户跳转到 [设置 - 通用 - 描述文件] 页面去,以便用户信任你的企业签名描述文件,在 iOS9 的时候是很方便的,无论是在应用内或者 Safari 中都可以直接唤起,但是从 iOS10 起,苹果禁止了一切对 [设置] 主动的跳转。

Swift Web 开发之 Vapor - 模版 Leaf(三)

模版引擎,对现在的 Web 开发极为重要,几乎所有主流 Web 框架都会支持一种或多种模版引擎,模版引擎可以分离用户界面和业务逻辑,工作原理主要是一种翻译,后端对特定的标记、语法、变量等渲染后再输送给浏览器,如今模版引擎已经非常强大,在相关领域可以帮助开发者节约很多时间精力,比如缓存、设计分层、插件化。不同的模版引擎千变万化,各种语言也是层出不穷,比如 PHP 模版引擎中的老大哥 *Smarty*,Python 的 *Jinja2*,也是 Flask 中内置的模版引擎,如今前端也有新生模版引擎,依赖前端的性能提升,像后端一样处理模版语言渲染数据。 Leaf 作为 Vapor 官方提供的组件之一原生集成在 Vapor 中,Leaf 模版文件以 .

Swift Web 开发之 Vapor - 路由(二)

上篇文章带大家基本了解了一下开始一个 Vapor 项目的流程,本篇紧接着来说说在所有 Web 框架中都最关键的 “路由”,因为 “路由” 模块在 Web 项目中担任很重要的角色,所以很多语言的 Web 框架都把 “路由” 抽离到框架层,从而减少开发者的工作量,一个设计得易用强大的 “路由” 系统也会给相应给框架增添不少色彩。