摘要: 最近,在网上出现了一本名为《Go Web编程》的书籍,里面详细地讲述了使用Go语言进行Web编程的各个方面。很特别的是,这本书是在GitHub上以开源的方式撰写的。日前,InfoQ采访了这本书的作者谢孟军先生,请他来和大家谈谈Go语言以及他撰写的开源书籍。InfoQ:请您先简单和大家介绍一下自己。谢孟军:大家好,我叫谢孟军,可以叫我Asta,目前就职于盛大云,负责盛大云分发产品的研发。云分发就是我们平常所谓的CDN系统。InfoQ:是什么原因促使您撰写《Go Web编程》这本书呢?谢孟军:我以前主要从事PHP、Python等Web方面的开发,后来到了盛大云之后接触比较多C++等底层的东西,就想 阅读全文
posted @ 2013-02-18 12:04 网恋被骗5元 阅读(588) 评论(0) 推荐(0) 编辑
摘要: sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10Create a/etc/apt/sources.list.d/10gen.listfile and include the following line for the 10gen repository.deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10genNow issue the following command to reload your repository:sudo 阅读全文
posted @ 2013-02-03 00:28 网恋被骗5元 阅读(165) 评论(0) 推荐(0) 编辑
摘要: 1.mongodb 表名和字段名统一用小写字母 2.尽可能的缩短字段名的长度 3.记住,mongodb 的查询每次只能用到一个索引 阅读全文
posted @ 2013-01-26 10:08 网恋被骗5元 阅读(1284) 评论(0) 推荐(0) 编辑
摘要: The following steps create and rotate a log file: Start a mongod with verbose logging, with appending enabled, and with the following log file: mongod -v --logpath /var/log/mongodb/server1.log --logappend In a separate terminal, list the matching files: ls /var/log/mongodb/server1.log* For results, you get: server1.log 阅读全文
posted @ 2013-01-23 10:30 网恋被骗5元 阅读(386) 评论(0) 推荐(0) 编辑
摘要: 宗旨 Markdown 的目标是实现「易读易写」。 可读性,无论如何,都是最重要的。一份使用 Markdown 格式撰写的文件应该可以直接以纯文本发布,并且看起来不会像是由许多标签或是格式指令所构成。Markdown 语法受到一些既有 text-to-HTML 格式的影响,包括 Setext、atx、Textile、reStructuredText、Grutatext和 EtText,而最大灵感来源其实是纯文本电子邮件的格式。 阅读全文
posted @ 2013-01-19 11:06 网恋被骗5元 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 简介: 本文通过对 Unix 平台的".bin"安装程序的结构和工作原理进行分析,提出了一种使用 Python 实现跨 Windows 和 Unix 平台安装程序的方法,并提供了简单的实现。 引言 我们在使用类 Unix 系统时,经常会用到一些以“.bin”或者“.run”结尾的安装程序 (Installer)。(为描述方便,这里我们使用“Bin 安装程序”来泛指这种安装程序。)Bin 安装程序不依赖于系统发行版自己的包 (package) 管理器来实现应用程序的安装和卸载,而是完全自己控制安装的整个过程,程序卸载的时候需要用户执行应用程序安装目录下的卸载脚本来完成。 Bin 安装程序最大的好处就是可以运行在多种类 Unix 平台,以及基于相同核心的多个发行版上,而不需要关心系统使用何种包管理器。在一定程度上实现了跨平台。 阅读全文
posted @ 2013-01-05 11:45 网恋被骗5元 阅读(790) 评论(0) 推荐(0) 编辑
摘要: 5. 系统测开发现状 C/C++ 写的好的话 速度快,内存利用率高 写不好的话 内存泄露 Core dump 语言层面完全没有对并发有支持 裸用 os 的并发机制:线程 / 进程 6. 系统测开发现状 Java 速度快,语言不灵活 语言层面有一定的并发支持,基于 os 并发机制 PHP/Python/Ruby 开发速度快,灵活 速度慢 语言层面依旧裸用 os 的并发机制,甚至不提供或者有限制( GIL ) Twisted/asyncore/Multiprocess 7. 能否开发快,性能高? 新模型 8. 新的编程模型( CSP ) 在语言层面加入对并发支持 而不是以库形式提供 更高层次的并发抽象 而不是直接暴露 os 的并发机制 应用 Erlang Ocaml 9. GO 并发模型 Goroutine Channel Rpc 内存模型 10. 并发模型 - goroutine 轻量 Goroutine 间是并行的 底层混合使用非阻塞 IO 和线程 关键字: go 11. 并发模型 - channel 通过通信来共享 而不是通过共享来通信 对 channel 的读写是阻塞的 阅读全文
posted @ 2012-12-24 11:11 网恋被骗5元 阅读(510) 评论(0) 推荐(0) 编辑
摘要: 2. 云之神话 ● 资源共享 ● 软件即服务(SaaS) ● 按需分配 ● 平台即服务(PaaS) ● 隔离抽象 ● 基础设施即服务(IaaS) ● 服务式使用 ● ......(XaaS) 阅读全文
posted @ 2012-12-24 10:23 网恋被骗5元 阅读(3655) 评论(0) 推荐(0) 编辑
摘要: 1. RESTful Web API With Python, Flask and Mongo8. gestionaleamica.com invoicing & accounting10. 进入 Python Flask 和 Mongo 的学习11. 那么 REST 都是关于什么的?12. REST 不是一个标准,也不是一个协议14. REST 是一个架构风格的网络应用程序15. REST松散地定义了一组简单的规则以及大多数API的实现16. #1资源来源的具体信息,一个web页面而不是资源准确的说它是资源的一种表现形式18. #2 全球的每个资源永久标识是唯一标识(想一想一个HTT 阅读全文
posted @ 2012-12-12 11:06 网恋被骗5元 阅读(1807) 评论(0) 推荐(0) 编辑
摘要: 摘自https://github.com/astaxie/build-web-application-with-golang/blob/master/8.3.md RESTful,是目前最为流行的一种互联网软件架构。因为它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。本小节我们将来学习它到底是一种什么样的架构?以及在Go里面如何来实现它。什么是RESTREST(REpresentational State Transfer)这个概念,首次出现是在 2000年Roy Thomas Fielding(他是HTTP规范的主要编写者之一)的博士论文中,它指的是一组架构约束条.. 阅读全文
posted @ 2012-12-12 09:20 网恋被骗5元 阅读(616) 评论(0) 推荐(0) 编辑
摘要: 用go写了几个应用之后,对它的几个类型理解得可以说也比较到位。 数组 它跟C语言的数组一样,有固定的长度,声明之前必须很设定其长度。由于受C语言的影响,我一直把它当作指针来看待。其实,go的数组是个值类型,当把一个数组赋值给另一个数组时,是复制了本身给另一个数组。也就是说,当把数组当作参数进行传递时,会拷贝整个数组,当然也就与C语言的数组指针引用相比了,效率也就大打折扣了。go数组有一点必须知道,就是它的类型是包括了长度的。一个数组包含了长度,储存类型,实际值三个参数。[3]int与[4]int是两个不同的数组。 切片 数组的兄弟slice(切片),它是go中最常用到的类型,... 阅读全文
posted @ 2012-12-10 22:42 网恋被骗5元 阅读(1218) 评论(0) 推荐(1) 编辑
摘要: 感觉自己写的gevent下载音乐比迅雷快很多,话不多说,直接上代码。 1 #! /usr/bin/python2.7 2 # -- coding:utf-8 -- 3 4 import urllib,urllib2,gevent,re 5 from gevent import monkey 6 7 8 monkey.patch_all() 9 10 def worker(reg, url):11 response=urllib.urlopen(url)12 text=response.read()13 groups=re.finditer(reg, text)14... 阅读全文
posted @ 2012-11-20 09:20 网恋被骗5元 阅读(1951) 评论(10) 推荐(1) 编辑
摘要: 跟一位兄弟合作,他来写搭建go环境的文章。请移步至:http://www.cnblogs.com/eyhel/ 阅读全文
posted @ 2012-11-08 16:44 网恋被骗5元 阅读(276) 评论(1) 推荐(0) 编辑
摘要: 作者:陈皓如果你还不了解Go语言的语法,还请你移步先看一下上篇——《Go语言简介(上):语法》goroutineGoRoutine主要是使用go关键字来调用函数,你还可以使用匿名函数,如下所示:1234567891011121314package main import "fmt"func f(msg string) { fmt.Println(msg) } func main(){ go f("goroutine") go func(msg string) { fmt.Println(msg) }("going") }我们再来看一个 阅读全文
posted @ 2012-11-07 22:57 网恋被骗5元 阅读(573) 评论(0) 推荐(0) 编辑
摘要: 作者:陈皓只需要你对C语言,Unix,Python有一点基础,我相信你会在30分钟左右读完并对Go语言有一些初步了解的。Hello World文件名 hello.go1234567package main //声明本文件的package名 import "fmt" //import语言的fmt库——用于输出 func main() { fmt.Println("hello world") }运行你可以有两种运行方式,解释执行(实际是编译成a.out再执行)12$go run hello.go hello world编译执行1234567$go build 阅读全文
posted @ 2012-11-07 22:55 网恋被骗5元 阅读(633) 评论(2) 推荐(1) 编辑
摘要: 看到网上有些人说Go是python 4.0,对此看法,我不敢苟同。从本质上讲,这两个是完全不同的语言。go是静态型编译语言,python是动态型解释语言(脚本语言);go的执行速度属于微秒级,可精确到纳秒,而python属于毫秒级,根本无法比;go完全支持指针,python不支持,只有引用。闲话不多说,下面就来看看go长得啥样子。如果你有C/C++,JAVA,C#,python等语言基础,对linux有些了解,我相信你一定会很快会对go有初步了解。 (本文不是教程,如果想学具体的go语言,请稳步至:[摘]Go 语言简介(上)— 语法和[摘]Go 语言简介(下)— 特性) 老规矩,先来个... 阅读全文
posted @ 2012-11-07 22:50 网恋被骗5元 阅读(2734) 评论(6) 推荐(3) 编辑
摘要: vim的学习曲线相当的大(参看各种文本编辑器的学习曲线),所以,如果你一开始看到的是一大堆VIM的命令分类,你一定会对这个编辑器失去兴趣的。下面的文章翻译自《Learn Vim Progressively》,我觉得这是给新手最好的VIM的升级教程了,没有列举所有的命令,只是列举了那些最有用的命令。非常不错。——————————正文开始——————————你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。Vimthe Six Billion Dollar editorBetter, Stronger, Faster.学习vim并且其 阅读全文
posted @ 2012-11-07 14:56 网恋被骗5元 阅读(557) 评论(0) 推荐(4) 编辑
摘要: ####################################################################from ftplib import FTPimport socketsocket.setdefaulttimeout(5) #设置了全局默认超时时间def ftp_open(host,user,passwd,port=21): #打开FTP try: ftp = FTP(host) ftp.connect(host,port) #连接 服务器名 端口号 ftp.login(user,passwd) ... 阅读全文
posted @ 2012-10-27 11:25 网恋被骗5元 阅读(384) 评论(0) 推荐(0) 编辑
摘要: #!user/bin/env python#-*- coding:utf-8 -*-import reall=re.compile('(\d+\.\d+[eE][-+]?\d+|\d+\.\d+|[1-9]\d*|0[0-7]+|0x[0-9a-fA-F]+|[a-zA-Z_]\w*|>>|<<|::|->|\.|\+=|\-=|\*=|/=|%=|>=|<=|==|!=|&&|\|\||\+|\-|\*|/|=|>|<|!|^|%|~|\?|:|,|;|\(|\)|\[|\]|\{|\}|\'|\" 阅读全文
posted @ 2012-10-27 11:21 网恋被骗5元 阅读(871) 评论(2) 推荐(0) 编辑
摘要: The Zen of Python-----------------Beautiful is better than ugly.Explicit is better than implicit.Simple is better than complex.Complex is better than complicated.Flat is better than nested.Sparse is better than dense.Readability counts.Special cases aren't special enough to break the rules.Altho 阅读全文
posted @ 2012-10-11 16:12 网恋被骗5元 阅读(808) 评论(0) 推荐(0) 编辑