GoLang启航

简介: GoLang启航

golang又称go语言是一种静态强类型、编译型语言,是一个开源编程环境,可以轻松构建简单、可靠和高效的软件。Go 语言语法与 C 相近,但功能上有:内存安全,GC,结构形态及 CSP-style 并发计算。

一、 概述

Go语言(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。


罗伯特·格瑞史莫(Robert Griesemer),罗勃·派克(Rob Pike)及肯·汤普逊(Ken Thompson)于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及Mac OS X平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。 目前,Go每半年发布一个二级版本(即从a.x升级到a.y)。


Go的语法接近C语言,但对于变量的声明有所不同。Go支持垃圾回收功能。Go的并行模型是以东尼·霍尔的通信顺序进程(CSP)为基础,采取类似模型的其他语言包括Occam和Limbo,但它也具有Pi运算的特征,比如通道传输。在1.8版本中开放插件(Plugin)的支持,这意味着现在能从Go中动态加载部分函数。

二、 go语言的作用

Go语言主要用作服务器端开发,其定位是用来开发“大型软件”的,适合于很多程序员一起开发大型软件,并且开发周期长,支持云计算的网络服务。Go语言能够让程序员快速开发,并且在软件不断的增长过程中,它能让程序员更容易地进行维护和修改。它融合了传统编译型语言的高效性和脚本语言的易用性和富于表达性。


Go语言作为服务器编程语言,很适合处理日志、数据打包、虚拟机处理、文件系统、分布式系统、数据库代理等;网络编程方面,Go语言广泛应用于Web应用、API应用、下载应用等;除此之外,Go语言还可用于内存数据库和云平台领域,目前国外很多云平台都是采用Go开发。


Go语言成功案例:


Nsq:Nsq 是由Go语言开发的高性能、高可用消息队列系统,性能非常高,每天能处理数十亿条的消息;


Docker:基于lxc的一个虚拟打包工具,能够实现PAAS平台的组建。


Packer:用来生成不同平台的镜像文件,例如VM、vbox、AWS等,作者是vagrant的作者


Skynet:分布式调度框架


Doozer:分布式同步工具,类似ZooKeeper


Heka:mazila开源的日志处理系统


Cbfs:couchbase开源的分布式文件系统


Tsuru:开源的PAAS平台,和SAE实现的功能一模一样


Groupcache:memcahe作者写的用于Google下载系统的缓存系统


God:类似redis的缓存系统,但是支持分布式和扩展性


Gor:网络流量抓包和重放工具

三、学习资料

Go语言

Go中文网

10本书学习系列

10本 Go 语言入门学习书籍推荐

10本 Go 语言进阶学习书籍推荐

Go 入门指南

目录
相关文章
|
运维 网络安全 数据安全/隐私保护
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
Nextcloud Hub 是一款来自德国的完全开源的云上托管内容协作平台。团队内成员可以通过移动、桌面和 Web 界面访问、共享和编辑文档,聊天和参与视频通话以及管理邮件、日历和项目。目前,Nextcloud的产品定位是在保障数据安全下的完整协作平台,功能类似国内的企业钉钉或飞书。Nextcloud官网:[https://nextcloud.com/](https://nextcloud.com/) 。
Nextcloud一键部署:快速搭建如企业钉钉或飞书的团队协作平台
|
9月前
|
数据可视化
如何减少低效沟通?小型团队信息管理的实战方法
在小型团队中,信息过载常导致沟通混乱和任务执行低效。本文探讨了信息过载的根源,并提出优化策略:统一沟通渠道、结构化任务指令、设定消息优先级以及使用可视化工具如板栗看板,以减少信息碎片化、提高执行精准度、避免干扰专注工作并让任务状态透明,从而提升整体协作效率。
385 59
身份证号码的编排规则
作者:知乎用户链接:https://www.zhihu.com/question/19823489/answer/13074347来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
3638 0
|
新零售 搜索推荐 算法
【行业应用】阿里云实时计算 Flink 版电商行业解决方案
电商行业的整体的竞争也从之前对大量互联网新用户的抢占变为对市场已有用户的争夺,流量红利逐渐见底,平台获客成本持续增高。原有的“大范围”、“广撒网”的运营方式已经不能满足业务需求,迫切需要向数字化、精细化、个性化运营的方向进行转型。
【行业应用】阿里云实时计算 Flink 版电商行业解决方案
|
存储 对象存储
阿里云对象存储OSS存储包100G/500G/1T/10T/500T等收费价格说明
阿里云对象存储OSS存储费可以按量付费也可以购买存储包抵扣,存储包分为标准、低频及归档,存储包种类不同价格不同,对象存储OSS所属地域不同OSS存储包价格也不同。
|
XML 数据格式 Windows
IIS7保存配置文件及导入、导出、备份、还原
IIS6下想要保存配置,只需在图形界面下点右键保存即可,但windows 2008下的IIS7却没有这样的选项,IIS7的配置文件有好几个,在c:\windows\system32\inetsrv\config文件夹下,如果需要手动去备份,只要复制一份config这个目录既可以。
1784 0
|
编解码 新零售 Web App开发
一篇文看懂媒体转码MTS四大计费标准,转码时长套餐包低至3.5折
媒体转码(ApsaraVideo for Media Transcoding)是为多媒体数据提供的转码计算服务,它以经济、弹性和高可扩展的音视频转换方法,将多媒体数据转码成适合在PC、TV以及移动终端上播放的格式。
6394 0