Go变量

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 }

 

    

posted @ 2022-05-31 23:22  欢乐豆123  阅读(22)  评论(0编辑  收藏  举报