用Lollipop托管云创建SPA的故事

总结

我最近得知Lollipop托管云服务直到年底都可免费使用。
突发奇想,我创建了一个Golang项目来尝试玩耍。
在此我将分享一些我遇到的问题和发现。

如果想要尽快发布一个小规模的Web应用,并且愿意支付一些费用,那么考虑使用AWS或Heroku可能比较容易和快捷。

“ロリポップマネージドクラウド” 是什么意思?

云棒托管云
请参阅上面的官方页面以获取详细信息。
简而言之,这是一种类似于GCP等服务的计算资源使用服务,
每月费用相对较低。还可以进行自动扩展等操作。
SSL当然也支持(使用LetsEncrypt的基于域名的证书)。
对于负载均衡等相对复杂的设置调整,可能有限。
然而,由于需要管理/掌握的部分较少,
可以将其用作前端工程师的沙盒环境等用途。
需要注意的是,该服务仅支持MySQL数据库,容量大约在500M左右,对于大型使用需谨慎。

目标读者

在众多后端服务中考虑新的选择的人

投稿的背景

1: 我尝试使用Lollipop托管云,但因为文档的稀缺而感到不安。
2: 不管品质如何,为了为各个领域的繁荣做出1厘米的贡献,我会进行输出。

你做了什么?

星际争霸战斗计时器是作为电子竞技目前非常热门的高难度实时战略游戏《星际争霸II》的对战辅助SPA。虽然游戏本身基本免费,但不支持日语,建议想要提高英语能力的人使用。

我們預想將在智能手機上使用。
使用方法很簡單,只需在對戰開始時輕觸對手種族的圖標!
理論上,您可以在遊戲中玩的同時偷偷側目查看最快的技術提升情況。
雖然戰術百科裡有一個有時間限制的技術樹,但因為版本較舊所以有些不同,所以我們另外製作了一個。
預計在服務提供商的免費服務結束時撤下。

基于下述原因,我们几乎只在前端进行开发。
只使用goLang来启动后端部分。
由于Lollipop Managed Cloud在容器启动时允许指定Golang命令,我们只需预先通过SCP分发任意的golang文件并关闭权限即可实现。

环境为Windows 10 × Chrome × Brackets。

好的地方/发现的地方

・Lollipop Managed Cloud的管理界面非常易于使用(由于设置选项较少)。
・设置公钥后,可以方便地进行SSH/SCP连接,这一点非常好。
→相比于GCP和FireBaseHosting,要做到这么简单并不容易,所以我觉得这非常令人感激。

我第一次接触Golang,发现它能够进行跨平台编译,这真是太厉害了。
以前听人家说过它的好处,这次我也初步体验到了其中的优点。

卡住了

・MySQL在SSH容器上无法从命令行、Golang文件以及客户端进行连接!我真的很困惑,最后只好放弃。在网络上也找不到相关的文章在讨论这个问题… 因为数据量很小且为了优先发布而放弃使用数据库在SPA中。顺便提一下,在Golang项目中,我使用了Linux-amd64的系统,并且配置有nginx/MySQL/golang。

can't connect to local mysql server through socket '/var/run/mysql/mysql.sock' (2)

對於這個錯誤本身的解決方案,有相當多的文章可以參考,但即使經過大量的搜索和試驗,訊息仍然不變…
我也花了很多時間去尋找MySQL的錯誤日誌檔案,但根本找不到。
無法完全確定這與Lollipop托管雲的容器本身的行為或規格有關。
關於這一點,如果有任何明確的結果,我將更新。

・ 公式文档还有点寂寞。
这个项目本身有 PHP/Ruby/Node/Python/Wordpress/golang 这些选项,
但是只有Ruby在Web应用程序的数据库连接方面被记录了,
只有Mac上的MySQL客户端连接被记录了,所以并没有什么“文档充实”的感觉。
虽然文档后续可能会有所改善,但还是选择信息丰富的项目比较好。
作为一个充满挑战精神的人,我勇敢地加入了goLang项目,结果被拍得很惨!

总结

用PHP-Lumen、RoR等不需要太复杂的事情,而是通过使用经典的CRUD来快速发布标准的Web应用程序,我认为这种用法最能发挥优势。
如果需要静态托管,可以使用FireBase,如果需要更详细的服务器配置,可以选择AWS/GCP,
当然,根据需求来选择使用。

感谢您的观看。

广告
将在 10 秒后关闭
bannerAds