<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Golang on PHPHA</title><link>https://blog.phpha.com/tag/golang/</link><description>Recent content in Golang on PHPHA</description><generator>Hugo</generator><language>zh</language><lastBuildDate>Mon, 02 Sep 2019 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.phpha.com/tag/golang/index.xml" rel="self" type="application/rss+xml"/><item><title>使用 GoColly 抓取贝壳房源信息</title><link>https://blog.phpha.com/archives/140/</link><pubDate>Mon, 02 Sep 2019 00:00:00 +0000</pubDate><guid>https://blog.phpha.com/archives/140/</guid><description>&lt;p&gt;使用 &lt;code&gt;Golang&lt;/code&gt; 的爬虫工具 &lt;code&gt;Gocolly&lt;/code&gt; 抓取贝壳的出租房源信息。由于公司项目之一是长租公寓 &lt;code&gt;SaaS&lt;/code&gt; 管理系统，需要为公寓的老板或管家们提供当地的租房价格参考。出于对 &lt;code&gt;Golang&lt;/code&gt; 学习的目的，没有采用 &lt;code&gt;Python&lt;/code&gt; 那些成熟的爬虫框架，而是采用了 &lt;code&gt;Gocolly&lt;/code&gt;，抓取的数据存储在 &lt;code&gt;MongoDB&lt;/code&gt;。&lt;/p&gt;</description></item><item><title>Golang 分布式 ID 生成器</title><link>https://blog.phpha.com/archives/125/</link><pubDate>Thu, 15 Nov 2018 00:00:00 +0000</pubDate><guid>https://blog.phpha.com/archives/125/</guid><description>&lt;p&gt;在分布式系统中，我们经常需要生成一个唯一的 &lt;code&gt;ID&lt;/code&gt;，或用于订单，或用于其他场景。总之基本的要求就是要唯一且高效。对这个 &lt;code&gt;ID&lt;/code&gt; 还希望其中能带有一些时间信息，这样即使我们后端的系统对记录进行了分库分表，也能够以时间顺序对这些记录进行排序。&lt;code&gt;Twitter&lt;/code&gt; 的 &lt;code&gt;snowflake&lt;/code&gt; 算法是这种场景下的一个典型解法。&lt;/p&gt;</description></item><item><title>Golang 时间相关格式化</title><link>https://blog.phpha.com/archives/124/</link><pubDate>Tue, 06 Nov 2018 00:00:00 +0000</pubDate><guid>https://blog.phpha.com/archives/124/</guid><description>&lt;p&gt;相对于 &lt;code&gt;PHP&lt;/code&gt; 而言，&lt;code&gt;Golang&lt;/code&gt; 里面的获取时间应该说是很不方便有木有。因此，特意封装了以下项目中常用到的获取时间相关的函数。&lt;/p&gt;</description></item><item><title>Golang 操作 MongoDB 数据库</title><link>https://blog.phpha.com/archives/123/</link><pubDate>Thu, 25 Oct 2018 00:00:00 +0000</pubDate><guid>https://blog.phpha.com/archives/123/</guid><description>&lt;p&gt;本文基于 &lt;code&gt;Golang&lt;/code&gt; 的爬虫框架 &lt;code&gt;Go-Colly&lt;/code&gt; 进行数据抓取，然后存储到 &lt;code&gt;MongoDB&lt;/code&gt; 数据库。根据搜索结果，相对来说最成熟的 &lt;code&gt;MongoDB&lt;/code&gt; 驱动，应该是 &lt;code&gt;mgo&lt;/code&gt;，但是目前 &lt;code&gt;mgo&lt;/code&gt; 的作者已经停止维护。另外 &lt;code&gt;MongoDB&lt;/code&gt; 官方也已经有对应 &lt;code&gt;Golang&lt;/code&gt; 的驱动 &lt;code&gt;mongo-go-driver&lt;/code&gt;，但是 &lt;code&gt;Google&lt;/code&gt; 上相关的资料并不多。&lt;/p&gt;</description></item><item><title>基于 Golang 的网络爬虫 Gocolly</title><link>https://blog.phpha.com/archives/122/</link><pubDate>Tue, 23 Oct 2018 00:00:00 +0000</pubDate><guid>https://blog.phpha.com/archives/122/</guid><description>&lt;p&gt;因项目需要，要对网络上某些信息进行抓取，以便加工后做数据分析。提到爬虫框架，知名度最高的当属基于&lt;code&gt;Python&lt;/code&gt;的爬虫框架 &lt;code&gt;Scrapy&lt;/code&gt;。但是由于本人对 &lt;code&gt;Python&lt;/code&gt; 并不熟悉，并且暂时也不准备去深入学习，因此不在考虑范围。同时也是基于学习的目的，因此选择了 &lt;code&gt;Golang&lt;/code&gt; 方向。基于 &lt;code&gt;Golang&lt;/code&gt; 的成熟爬虫框架其实并不多，因此在选择上不用太纠结，就用 &lt;code&gt;Go-Colly&lt;/code&gt; 了。&lt;/p&gt;</description></item></channel></rss>