[转载]反射的规则-golang

转载自邢星的博客 [翻译]反射的规则

第一次知道反射的时候还是许多年前在学校里玩 C# 的时候。那时总是弄不清楚这个复杂的玩意能有什么实际用途……然后发现 Java 有这个,后来发现 PHP 也有了,再后来 Objective-C、Python 什么的也都有……甚至连 Delphi 也有 TRttiContext……反射无处不在!!!
Go 作为一个集大成的现代系统级语言,当然也需要有,必须的!
大牛 Rob Pike 的这篇文章相对全面的介绍了 Go 语言中的反射的机制已经使用。觉得值得研读,于是翻译于此。

- 阅读剩余部分 -

利用expect修改Git的hooks更新的文件归属

上次利用Git的hooks实现了更新同步文件到web目录,又出了个问题,网站访问的用户是www用户组,而更新后文件的用户组变成了用户组git,导致访问无权限。

重新修改了更新脚本post-receive,实现跟新文件后再把web目录的用户组更改为www,最主要的是使用expect来完成。

post-receive脚本中增加一行:

    #!/bin/bash
    GIT_WORK_TREE=/home/project/servers/web git checkout -f
    ./chgrp-expect root 123456

- 阅读剩余部分 -

基于Swoole的高可用分布式Soket服务器系统搭建v2.0

enter image description here

昨天初步实现了不同聊天服务器消息互发,但效率不好,且有性能瓶颈,Swoole的作者韩天峰提醒可以使用长连接转发消息,今天测试了一遍,效果不错。

上一篇的逻辑讲的不是很清楚,这次清楚的描述下:现有AB两台消息服务器,用户1连接在服务器A用户2连接在服务器B,而用户1需要给用户2发送消息,由于Socket连接在不同服务器,无法直接互通。现有两种办法解决:

- 阅读剩余部分 -