Go变量
最近打算抽业余时间学习一下近年来大火的Golang,本身是学PHP的,之前就想再学一门静态类型的语言来作为补充,显然golang对我再合适不过了。对它感兴趣的原因有以下:
1)PHP只能单线程执行任务,在比如在采集任务中,它需要抓完一个网页,再接着抓第二个网页,这效率严重低下,无法忍受之痛。虽然在服务器上跑可以使用计划任务开多个PHP进程,但是内存开销又变得太大了。
2)在用PHP开发的网站中,url请求的内容只能等服务器端执行完毕才能响应给客户端,无法异步执行。这个问题比较头疼,比如提交的连接要检查页面状态,提交的时候直接检查的话,就需要用户等待较长时间,虽然可以变相使用计划任务配合执行,但是终究不完美,并不是我想要的解决方案。
3)在PHP中,如果程序有比较多curl请求网络任务,并且连接迟迟没结束的话,它很容易就导致网站出现502的问题。虽然可以通过设置curl超时时间来降低发生频率,但是它始终是一个悬在头上的问题。
之后在学习过程中,再与PHP边对比边进行学习。
下面是学习Go变量的一段程序代码:
1 package main 2 3 // 匿名变量 4 func getNameAndAge() (string, int) { 5 return "tom", 20 6 } 7 8 func main() { 9 // Go 语言变量名由字母、数字、下划线组成,其中首个字符不能为数字 10 11 // 初始化 12 var name string = "tom" 13 14 // 类型推断 15 var name = "tom" 16 17 // 批量初始化 18 var name, age, b = "小明", "20", true 19 20 // 短变量声明(只能在函数内部执行) 21 name := "tom" 22 23 }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。