不为无益之事,何遣有涯之生

当代编程语言简评

著名大喷子王垠最喜欢点评各种语言的优缺点(当然基本上都是缺点居多),作为技术人也写一篇东西表达一下自己的看法。

原初

C和Lisp是流行至今的最古老的两门编程语言,从一开始就走向了不同的道路。

并发编程模型浅谈

当我们设计一个业务模型的代码架构时,不同语言的选择对我们的思维有很大的影响。本文根据个人经验,以设计斗地主服务器为例,试图总结一下其中的区别。

Leaf框架代码解析和改造

在接游戏外包的一段时间里,选型了golang的leaf框架作为游戏开发的基础框架,但是进行了一系列改造以更好的完成业务需求。简单记录如下:

基本思路

leaf本质上其实不是一个游戏框架,而是一个网络工程的脚手架,换句话来说你可以用它来写任何服务端而不仅仅是游戏。

微服务设计迷思 数据存储

概述

后台数据的存储,其演变路线是非常明晰的。从全部用传统DBMS(oracle/mysql)到NoSQL配合db,直到现在的分布式数据库(NewSQL)。对应的,后台服务的主流架构也由单体式到SOA到微服务。当然,OLAP还引入了hbase,hive等大数据分析系统;然后各专业领域还有es或者neo4j之类的数据库,这里先不讨论这个。

Docker常见命令

日志类

1
2
docker logs -f <container> # 查看日志
journalctl

容器类

1
2
3
4
5
6
7
8
docker ps # 查看正在运行的容器
docker ps -a -q # 查看全部容器和信息
docker ps top
docker pull/commit/tag/push/diff/attach
docker create/build/run/rm
docker start/stop/pause
docker  exec -it {{containerName or containerID}} bash  # 进入容器交互
docker cp

镜像

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 列出本地所有镜像
docker images
# 本地镜像名为 ubuntu 的所有镜像
docker images ubuntu
# 查看指定镜像的创建历史
docker history [id]
# 本地移除一个或多个指定的镜像
docker rmi
# 移除本地全部镜像
docker rmi `docker images -a -q`
# 指定镜像保存成 tar 归档文件, docker load 的逆操作
docker save
# 将镜像 ubuntu:14.04 保存为 ubuntu14.04.tar 文件
docker save -o ubuntu14.04.tar ubuntu:14.04
# 从 tar 镜像归档中载入镜像, docker save 的逆操作
docker load
# 上面命令的意思是将 ubuntu14.04.tar 文件载入镜像中
docker load -i ubuntu14.04.tar
docker load < /home/save.tar
# 构建自己的镜像
docker build -t <镜像名> <Dockerfile路径>
docker build -t xx/gitlab .
0%