skynet 中如何实现邮件达到通知服务

  • Post author:
  • Post category:IT
  • Post comments:0评论

skynet 中可以独立的业务都是以独立服务形式存在的。昨天和同事讨论如何实现一个邮件通知服务。 目前大概是这样的:有一个独立的邮件中心服务,它可以处理三条协议: 向一个 mailbox 投递一封邮件。 查询一个 mailbox 里有多少封邮件。 收取 mailbox 里指定的一封邮件。 用户读了多少邮件没有放在邮件中心,而是记在玩家数据里的。 用户的界面上需要显示是否有几封未读邮件,如果有新邮件达到,这个数字会自动变更。你可以想像成 iOS 上的那种带数字的小红点。 当然,在 skynet 的…

继续阅读skynet 中如何实现邮件达到通知服务

sproto 的实现与评测

  • Post author:
  • Post category:IT
  • Post comments:0评论

这个周末,我实现了上周设计的简化版 protocol buffers 协议,并重新命名为sproto。 在实现过程中,发现了许多编码格式上可以优化的地方,所以一边实现一边做调整,使结构更适合编码和解码,并且更紧凑。 做了如下改动: 由于这个东西主要 binding 到 lua 这样的动态语言中使用,所以我不需要按 Cap'n Proto 那样,直接访问编码后的数据结构(直接把数据结构映射为 C/C++ 对象),所以数据对齐是不必要的。 编码时的 tag 如果要求严格升序也可以更快的处理数据,减少…

继续阅读sproto 的实现与评测

以普通用户启动的Vim如何保存需要root权限的文件

  • Post author:
  • Post category:IT
  • Post comments:0评论

在Linux上工作的朋友很可能遇到过这样一种情况,当你用Vim编辑完一个文件时,运行:wq保存退出,突然蹦出一个错误: E45: 'readonly' option is set (add ! to override) 这表明文件是只读的,按照提示,加上!强制保存::w!,结果又一个错误出现: "readonly-file-name" E212: Can't open file for writing 文件明明存在,为何提示无法打开?这错误又代表什么呢?查看文档:help E…

继续阅读以普通用户启动的Vim如何保存需要root权限的文件

Ocotpress集成多说评论

  • Post author:
  • Post category:IT
  • Post comments:0评论

Octopress默认自带了DISQUS,但是对于国内不是很好用。于是一开始替换了国内的友言。但是后来发现用友言的人不多,而且感觉友言加载速度比较慢。然后就是到了今天的多说了。官方并没有给出具体针对Octopress的解决指导。我这里记录一下如何集成,并且解决一些常见的问题。 集成 来说评论框 这就是多说提供的通用代码中,其实理论上以下三个值通过javascript都可以得到的。 linenos:false1 2 3 <!-- 多说评论框 start --> <div clas…

继续阅读Ocotpress集成多说评论

如何让 PHP json_encode 函数不转义中文?

  • Post author:
  • Post category:IT
  • Post comments:0评论

如果你调用 PHP 自带的json_encode()函数, 碰到中文时, 中文会被转义掉. 例如: echo json_encode(array('你好')); // 输出: ["\u4f60\u597d"] 这非常恼人, 像是一堆乱码, JSON 标准从来没有说要把非 ASCII 字符转义, 标准说的是”Any UNICODE character”. 如何禁用掉这种转义呢? 答案是, PHP 自带的 json_encode() 不能禁用这个特性(在 5.4.0 版本之前),…

继续阅读如何让 PHP json_encode 函数不转义中文?

安装数据库软件时,找不到所有节点

  • Post author:
  • Post category:IT
  • Post comments:0评论

某客户用runInstaller安装RAC软件时,在勾选节点的窗口找不到任何的节点。我们可以参考mos上的这个文档进行修复。 Database runInstaller “Nodes Selection” Window Does not Show Cluster Nodes (Doc ID 1327486.1) ${clusterware-home}/oui/bin/runInstaller -silent -ignoreSysPrereqs -updateNodeList ORACLE_HOM…

继续阅读安装数据库软件时,找不到所有节点

tahiti已死,docs接班

  • Post author:
  • Post category:IT
  • Post comments:0评论

如果你近期访问著名的oracle在线文档的网站tahiti.oracle.com,你会发现这个网站已经不再提供服务,在网站上只留下一段话: Tahiti index no longer available   All Oracle documentation is at docs.oracle.com. 从改版到小清新,到停止服务,让不少老oracle玩家唏嘘不已,目前所有的在线文档,都转移新的docs.oracle.com进行访问。不过转移过去的文档,也只有从10g之后的文档,之前的文档你一般…

继续阅读tahiti已死,docs接班

搬家

  • Post author:
  • Post category:IT
  • Post comments:0评论

转自微博:IT土豪刘老师问我,你有没有一种感觉,就是其他人活的比你轻松幸福一些。我说嗯,常有,这一定是错觉对吧。他说,哦,那倒不是,应该都是真的。 我也时常这么感慨啊,可是感慨归感慨,自己还是要过自己的生活。 这两天在打包,准备搬家,为了陪伴孩子上小学,搬去小学附近租房,这一去不知何时还能搬回到这里、会不会再搬回到这里,但可以确定的一点是,即使能回来,到那一天,这里也必然不似今天这般模样了。 这个家承载着我们不多的6年多的时光,但它又那么难以释怀,它陪伴斯屹从十月怀胎一直到准小学生,又陪着斯诺走…

继续阅读搬家