喜新恋旧之拥抱Golang

不禁联想起岛国日本的战败:

    上个世纪,在第二次世界大战日本战败后,裕仁天皇是如何从被人耻笑的“鸡巴”,国民陷入一种虚无的情绪,饥荒,瘟疫,失业等等接憧而来,整个国家苦不堪言。而美国大兵出于对类似“自杀式”的神风特攻队的日本军队有过的交手,怀着畏惧的心理,踏上了这个顽固又无情的大和民族的岛国土地。而令人出乎意料的是,美国大兵看到的却是一群可爱纯真的小孩,满大街跟他们要糖果、要巧克力,他们像圣诞老人一样,坐在吉普车上面撒糖果、撒巧克力、撒东西。另外还有很多很温柔、可爱的女性,并为他们提供性服务。

    日本做了反思,全面拥抱了战败,换了战后经济三十年的腾飞,且曾成为世界第二大经济体。

    跟美国士兵要糖果的日本小孩

    作为一名Phper, 我知道业界有很多吐槽php的。对此我是呲之以鼻,因为学编程又不是学语言,而且最终还不是为了解决工业生产问题。C,C++,Java,python,lua这类服务端的语言我都有去学习过,只是在实际的工作项目中,没有施展拳脚的机会。别说其他的,就算我的学了PHP的面向生产环境的 PHP 异步网络通信引擎Swoole,docker容器技术(这个用起来是真的爽),分布式架构。nginx高级应用,同样也是晾着,我意识到平台对于技术人员真的是太tmd重要了。

    我曾经很怀疑花时间去学习新技术的必要性,不过我后来我悟出:软件技术作为计算机的上层技术,应该多夯实基础,就像马克思主义的上层建筑是要建立经济基础之上,比如计算机操作系统,数据结构和算法,计算机网络等等,才可以达到触类旁通的境界,而泥腿子是过不了河的。但是多接触,多学习,多接受新事物,也会让我整个人变得更加的有弹性。

不学内功和心法的周芷若

 

    曾读过一篇《技术正宗和野路子》的文章,里面有这么一段说话:

 

黄衫女子的武功似乎与周芷若乃是一路,飘忽灵动,变幻无方,但举手抬足之间却是正而不邪,如说周芷若形似鬼魅,那黄衫女子便是态拟神仙。

 

《倚天屠龙记》第八十三回

     

    九阴神抓”本是《九阴真经》中的上乘武功,但当初梅超风夫妇由于拿到的《九阴真经》不完整,学不到里面的内功心法,硬是把这门上乘武功练到了邪路上,于是就成了“九阴白骨爪”。周芷若为求速成,也练就了这门邪功。

    

黄衫女子

    总所周知,大数据,人工智能,云计算,物联网等等都在如火如荼得进行着,这次我想全面去拥抱Golang(倚天剑), 来作为我并行于PHP(屠龙刀)的利器,更好地游走于江湖,赶上这班车,就像当年他们赶上移动互联网一样。

    

买本书回来垫椅子的技术书

 

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

开发者: Robert Griesemer、Rob Pike 和 Ken Thompson(都是编程界上顶呱呱的元老)

    计算机一直在演化,但是编程语言并没有以同样的速度演化。现在的手机,内置的 CPU 核数可能都多于我们使用的第一台电脑。高性能服务器拥有64核、128核,甚至更多核。但是我们依旧在使用为单核设计的技术在编程。

Go解决的现代技术难题

 

  • 开发速度快

    不是像 Java、C 和 C++那样,要遍历依赖链中所有依赖的库

  • 并发

    大部分编程语言都没有有效的工具让程序可以轻易利用这些多核资源

    Go 语言有个外号:移动互联网中的C语言。C 和 C++这类语言提供了很快的执行速度,而 Ruby 和 Python 这类语言则擅长快速开发。Go 语言在这两者间架起了桥梁,不仅提供了高性能的语言,同时也让开发更快速。

Go的重量级开源项目:

Go开发的重量级开源项目

    

文章地址:

https://blog.csdn.net/qq_27384769/article/details/81076670


适逢Go语言诞生5周年之际,外媒JavaWorld也发布文章,整理了由Go语言开发的10大流行开源项目。Go语言目前从虚拟化到Git代码托管服务等方面,都有重量级项目现身,越发凸现Go语言在云计算时代的重要性。 

1. Docker 

到现在,Docker几乎是Go再难找到也难以复制的一个成功案例。Docker项目在2014年9月份就拿到了C轮4000万美元融资,版本迭代速度超快,目前从GitHub看到已有78个版本,而它仅仅是再2013年初才正式开始的一个项目而已。目前,国内Docker技术推广也进行的如火如荼,比如 Docker中文社区,CSDN也建立了 Docker专区。CSDN CODE也将在近期与Docker中文社区合作,推出Docker技术文章翻译活动,届时也请大家多多关注,及时关注与参与。 

Docker团队之所以喜欢用Go语言,主要是Go具有强大的标准库、全开发环境、跨平台构建的能力。  

GitHub托管地址:

 https://github.com/docker/docker 

2. Kubernetes 

Kubernetes是2014年夏天Google推出的Kubernetes,基于Docker,其目的是让用户通过Kubernetes集群来进行云端容器集群的管理,而无需用户进行复杂的设置工作。系统会自动选取合适的工作节点来执行具体的容器集群调度处理工作。其核心概念是Container Pod(容器仓)。 

GitHub托管地址:

 https://github.com/GoogleCloudPlatform/kubernetes 

3. Etcd & Fleet 

etcd是由CoreOS开发并维护键值存储系统,它使用Go语言编写,并通过Raft一致性算法处理日志复制以保证强一致性。目前,Google的容器集群管理系统Kubernetes、开源PaaS平台Cloud Foundry和CoreOS的Fleet都广泛使用了etcd。详情,可了解 《Etcd:用于服务发现的键值存储系统》。 Fleet则是一个分布式的初始化系统。它们之所以选择使用Go语言,则是因为Go语言对跨平台的良好支持,以及其背后的强大社区。 

GitHub托管地址:

 https://github.com/coreos/etcd 

4. Deis 

Deis是一个基于Docker和CoreOS的开源PaaS平台,旨在让部属和管理服务器上的应用变得轻松容易。它可以运行在AWS、GCE以及Openstack平台下。详情,可了解 《Deis v1.0正式发布!》。  

GitHub托管地址:

 https://github.com/deis/deis 

5. Flynn 

Flynn是一个使用Go语言编写的开源PaaS平台,可自动构建部署任何应用到Docker容器集群上运行。Flynn项目受到Y Combinator的支持,目前仍在开发中,被称为是下一代的开源PaaS平台。 

GitHub托管地址:

 https://github.com/flynn/Flynn 

6. Lime 

相对上面的几款Go语言在云端和服务器端之外,Lime则显得比较特殊。Lime,则是一款用Go语言写的桌面编辑器程序,被看做是著名编辑器Sublime Text的开源实现。  

GitHub托管地址:

 https://github.com/limetext/lime 

7. Revel 

Revel是一个高生产力的Go语言Web框架。Revel框架支持热编译,当编辑、保存和刷新源码时,Revel会自动编译代码和模板;全栈特性,支持路由、参数解析、缓存、测试、国际化等功能。  

GitHub托管地址: 

https://github.com/revel/revel 

8. InfluxDB 

一个Go语音编写的开源分布式的时序、事件和指标数据库,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。  

GitHub托管地址:

 https://github.com/influxdb/influxdb 

9. Syncthing 

一款用Go语言编写的开源云存储和同步服务工具,用户的数据将由自己完全控制,所有的通信全都加密,每个访问节点都用加密证书验证。该项目被认为是Dropbox和 BitTorrent Sync的开源替代, 详情。Syncthing之所以选择Go语言,也是出于跨平台考虑。  

GitHub托管地址: 

https://github.com/syncthing/syncthing 

10. Gogs 

Gogs则是一款由国人无闻(GitHub)开发的自助Git服务项目。Gogs的目标是打造一个最简单、最快速和最轻松的方式搭建自助Git服务。据作者称,之所以选择使用Go语言开发,就是Go允许Gogs可以通过独立的二进制分发,且对跨平台有良好支持。  

GitHub托管地址: 

https://github.com/gogits/gogs 

    

    GO布道者:Go 平衡了底层系统语言的能力,以及在现代语言中所见到的高级特性。使用 Go 语言,可以写得更少,做得更多。

    最让我惊讶的是,Go还对 公认的面向对象编程 做了重新的思考。

    

     离开一门使用舒服,掌握熟悉的编程语言,去学习一门对整个世界全新的语言,是需要勇气的,这是一条人迹罕至,只有少数行者熟悉的路,沿途充满Bug。但不论怎样,不进则退,我选择喜新恋旧,一边继续专研PHP,一边新姿态拥抱Golang。

原文地址:https://www.cnblogs.com/zhengweizhao/p/10530377.html