近期仍然在搭建完整的游戏服务器架构。基于atsf4g(asynchronously-tree server framework fo game)的完整解决方案终于接近完成。基本框架之前其实已经做完了,但是之前解决的只是基本的框架层代码,不包含任何特定的交互模型、协议模型、配置服务等等。这回就整理了一个只包含登入登出逻辑的完整工程,另外优化了一些小细节和周边工具的支持。

使用_Markdown_写blog已经很久了,近期接触并且看了下流传已久的gitbook平台,感觉做得确实不错。、

之前写blog的时候一直用得是stackedit,是因为stackedit的对_Markdown_做了很多扩展,功能很强大,有自动目录、流程图、时序图等等,然后可以浏览器直接开很方便。但实际上这些功能写出的东西虽然不错,但是放到比如github上的时候,github不支持。目前大多数平台对_Mardown_的扩展都只是到了和github差不多的地步,没有到stackedit的程度。这也导致同样写得东西,复制到github或者其他的平台的时候还得过一遍样式,比较麻烦。而且这些扩展的功能也用得不太多。另外stackedit时不时被墙然后访问很不稳定也是挺麻烦的一件事儿。

再来说这个gitbook,看中他是觉得它做了一个可持续集成的功能。就是github _push_完以后可以通知gitbook然后让gitbook自动构建文档内容。这点和比如jenkinstravis等等的CI系统很像。然后支持构建成pdf、epub(开源电子书格式)、mobi(kindle电子书格式)和在线书籍。然后版式也挺漂亮,还支持模板,引用等等,感觉确实蛮适合出版发行的。虽然目前为止_Markdown_的功能丰富程度比起Latex还差不少,但是上手难度也比Latex低不少。还是非常有潜力的,而且gitbook支持用javascript写得插件,以后变数也可以很多。

介于配置gitlab邮箱测试起来补交麻烦而且看日志还不明朗,这里记录一下成功配置好的企业邮箱方案。

模板如下:

    # mail config
    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
    gitlab_rails['smtp_port'] = 465
    gitlab_rails['smtp_user_name'] = "完整邮件账户"
    gitlab_rails['smtp_password'] = "密码"
    gitlab_rails['smtp_domain'] = "邮件账户所在域"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = true  # 这个很重要,而且是官方文档里没提及的 

    # If your SMTP server does not like the default 'From: gitlab@localhost' you
    # # can change the 'From' with this setting.
    gitlab_rails['gitlab_email_from'] = '完整邮件账户'
比如我的邮箱[email protected]

配置如下:
    # mail config
    gitlab_rails['smtp_enable'] = true
    gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
    gitlab_rails['smtp_port'] = 465
    gitlab_rails['smtp_user_name'] = "[email protected]"
    gitlab_rails['smtp_password'] = "[email protected]的密码"
    gitlab_rails['smtp_domain'] = "owent.net"
    gitlab_rails['smtp_authentication'] = "login"
    gitlab_rails['smtp_enable_starttls_auto'] = true
    gitlab_rails['smtp_tls'] = true

    # If your SMTP server does not like the default 'From: gitlab@localhost' you
    # # can change the 'From' with this setting.
    gitlab_rails['gitlab_email_from'] = '[email protected]'

done.

github是程序员经常上的网站,但如果是在一家苦逼不能访问外网的公司,那不能把自己的代码托管在github上绝对是一件非常痛苦的事情。如 果想要在公司内网也可以用github托管自己的代码,那就要自己搭建类似github的服务器,好在类似github的框架有很多,基本上都是基于 git的,可以无缝衔接github而无需额外学习其他技术。