02 2017 档案
摘要:其实从上学开始就一直想写一个im。 最近深入go,真是学会了太多,感觉人森虽然苦短,但是也不能只用python。很多知识是不用编译型语言无法了解的。 该来的还是会来,现在会一步一步用go把这个服务器完善起来 先从这个demo开始。 这个demo 我们要求所有连上服务器的用户都会知道有用户的离开,有用
阅读全文
摘要:在学习《The Go Programming Language》第八章并发单元的时候还是遭遇了不少问题,和值得总结思考和记录的地方。 做一个类似于unix du命令的工具。但是阉割了一些功能,这里应该只实现-c(统计total大小) 和-h(以human比较容易辨识的显示出来)的功能。 首先我们需要
阅读全文
摘要:最近都在通过完成一些列功能强化自己对常用api的熟悉。 然而关于时间的api几乎是最常用的api类型,所以总结一些常用的。 以YY-mm-dd HH:MM:SS.9位 输出当前时间: 获取时间戳: 给定一个时间戳,返回一个标准datetime时间: 指定一个时间: 这里注意,Date初始化的时候最后
阅读全文
摘要:在benchmarked写的服务器的时候就遇到了too many file open 这个报错。 由于遇到过很多次了,所以知道应该是单机fd打满了。 首先来看看 机器最多支持多少fd 通过上面的命令可以看到机器现在一个session 最多可以支持打开多少fd。我的机器上现在能看到的最大值是6w多个
阅读全文
摘要:看到有个例子实现了一个类似于核弹发射装置,在发射之前还是需要随时能输入终止发射。 这里就可以用到cahnnel 配合select 实现多路复用。 select的写法用法有点像switch。但是和switch不同的是,select的一个case代表一个通信操作(在某个channel上进行发送或者接收)
阅读全文
摘要:Reference: https://gobyexample.com/string-formatting Go by Example: String Formatting https://play.golang.org/p/1-9cY_Q5eM
阅读全文
摘要:写久了web倦了,第n次开始尝试网络开发,于是熟悉一下常用工具。 尝试了一下netcat来测试服务器,或者充当客户端都异常好用。于是记录一下常用的一下命令 1. 充当服务器,或者客户端进行访问 通过nc建立一台服务器用于监听端口: nc -l 9999 此时nc处于了监听状态, 我们可以开启一台客户
阅读全文
摘要:最近在系统的学习go的语法,一切都弄好了之后准备弄个im项目出来玩。在这个过程中会把看到有趣的写法和语法啥的拿出来分析一下。 我一直以为go语言对面向对象没有支持,但是后面看到了类似类的概念,method特性以及其接受参数的reciver。 使用method就可以将不同的函数和结构体联系起来。 其实
阅读全文
摘要:今天在生成数据的时候遇到了这个需求,其实写一个for循环可以很容易解决这个问题,但是无论是性能还是酷炫程度上都不行 所以顺手搜索了一下。 例子是将 变成 plan1: 使用列表推导式 plan2: 使用reduce plan3: 使用itertool plan4: 使用sum 那么,哪种方法最快呢?
阅读全文
摘要:功能性的文章直接用几个最简单的实现表达: xlsxwriter库的核心就是其Workbook对象。 创建一个指定名字的xlsx文件: 创建一个Workbook的实例对象。可以传入一个文件名字,如果不想生成的文件在当前路径下面,可以在文件名字前面带上绝对路径。 add_worksheet()就是增加一
阅读全文
摘要:接上文,再介绍最后几个常用的魔法方法。 关于__dict__: 先上个例子: __dict__魔法方法可以被称为系统,他是存储各分层属性的魔法方法。__dict__中,键为属性名,值为属性本身。可以这样理解,在平时我们给类和实例定义的那些属性,都会被存储到__dict__方法中用于读取。而我们平时使
阅读全文