深入浅出之ip2region实现

在移动互联网的应用中,经常需要根据用户的位置信息等做一些用户侧信息的统计分析。而要拿到用户的位置信息,一般有两个方法: GPS 定位的信息和用户 IP 地址。由于每个手机都不一定会打开 GPS,而且有时并不太需要太精确的位置(到城市这个级别即可),所以根据 IP 地址入手来分析用户位置是个不错的选择。 要做到这个功能得需要一个 IP 和地理位置的映射关系库,并依赖这个库启动一个 IP 转地理位置的服务。本文从需求入手,结合 Github 上拥有 8.4k 星的 ip2region 来分析映射关系库的设计以及 IP 如何快速转换成地理位置。

[阅读全文]
 |   

推荐算法深入浅出之协同过滤

相关推荐是一种常见的推荐场景,比如资讯流推荐中详情页下方的推荐列表(基于物品的相关推荐),微信看一看(基于用户的相关推荐)等。 在这个场景中必然绕不开一个算法:协同过滤算法。

[阅读全文]
 |   

深入了解SSH

SSH 是每一台电脑的标准配置,Linux 就不必说了,连 windows 也从 2018 年开始自带 OpenSSH 了。 它主要的用途是登陆到远程电脑中执行命令,在云开发的时代,它是每个程序每天都要用到的工具。本文将简单介绍一下它的原理, 基本用法以及端口转发和动态转发等高阶用法。

[阅读全文]
 |   

Markdown转conflunece

很多公司使用 Confluence 来构建企业的知识管理系统, 但是不得不说,文档的构建对程序员很不友好。对于用惯了 Markdown 这种轻量级标记语言的程序员来说,写文章半小时,排版半小时。于是乎就有了这篇将 Markdown 转换为 Confluence 格式文档的技巧文档。

[阅读全文]
 |   

云上开发之数据备份

Github 挂了,是的,你没有听错,背靠微软,坐拥 azure 的 Github 挂了。最近还看到近几年大火的 Docker 也开始限制 Docker 商业版及 Docker 的其它服务(像Docker Hub)对特定国家和公司的使用。这些都体现了数据备份的重要性,虽然上面的事件对我们小小个人影响不是很大,但覆巢之下,安有完卵。早点掌握数据备份的方法才能从容应对未来突发的“意外”。本文将介绍在 ECS 上搭建类 Github 服务 Gogs, 并且定期备份 ECS 上数据到 OSS上,有条件的可以再将 OSS上的数据备份到自己的群辉 NAS 上。

[阅读全文]
 |