事情是这样的……

前天下午天太热,我在家看电视,换台突然就看到了正在播《西游记》,窗外蝉声特别响,我一下就有种穿越回小学暑假的感觉。当时,我就特别想把我那台小霸王翻出来,玩两盘街霸……虐一下春丽

翻了大半天,也没找到我的童年回忆...要么找找看有没有啥开源的可以玩玩吧!

作为一名野生程序员,搜索技能必须牛逼,一顿搜索之后,我发现最近阿里云有一个挺火的体验活动,这个活动是用 Serverless 部署掌上游戏机,完成后还送一台实物游戏掌机。这不跟我想一块去了,开整!整个过程确实简单,我先把链接放下面。

PC端体验好一点:https://developer.aliyun.com/adc/series/activity/serverlessdevs

我的体验过程

本来我想撸完游戏机就走,后来我发现这个体验有点意思。这个体验的部署使用了 Serverless 产品阿里云函数计算和开发者工具 Serverless Devs,整个体验时间短,步骤清楚,使用资源免费,能真实感受到 Serverless 的优势。我先分享一下体验过程。

步骤一:函数计算入门-Hello World

首先按照文档要求开通函数计算服务,体验需要的函数计算资源免费。注意一定要用自己的阿里云账号,用子账号部署肯定失败。

接下来,要在函数计算控制台首页新建函数,看到函数运行成功,并返回:你好,世界!这一步才算完成,非常简单。

步骤二:一键部署掌上游戏机

这个步骤会使用到 Serverless Devs 命令行工具,这是一个组件化与插件化的 Serverless 开发者平台也是开源的,开发者可以在平台中可插拔式的使用不同 Serverless 的服务和框架,用它就不用学习市场上 Serverless 其他工具,简单、快能比较简单、快捷的上手主流 Serverless 服务和框架。

这个步骤有6个操作:

1、执行如下命令,在当前路径初始化一个掌上游戏机项目。

s init fc-nes-game

2、为要创建的项目输入一个名称,本示例中为:fc-nes-game。

fc-nes-game

3、选择默认凭据后按按回车。

返回结果如下,表示初始化完成。

4、执行如下命令,进入fc-nes-game目录。

cd fc-nes-game

5、执行如下命令,部署掌上游戏机项目。

s deploy

返回结果如下,表示安装掌上游戏机项目部署完成,并复制 custom_domain->domain的url。

6、打开手机浏览器,在浏览器地址栏粘贴 url并访问。如果出现二维码页面,表示部署成功,用手机扫描二维码,就能玩掌上游戏机。

到这就完成全部体验了,接下来坐等每天早上10:00 秒游戏机就行了。

手机秒变游戏机

网上很多开源项目可以下载掌机游戏(nes 格式的),可以直接放在这个掌机里玩,让手机变成游戏机,可以搜索下载掌机游戏(nes格式的):

1)存放到 src/roms 目录下

2)修改 index.htm 的 91 行代码,自行添加游戏名称和存放的相对路径

坐等游戏机

体验流畅,奖品也很香,昨天秒到了一台现在坐等发货了!活动从7月28日到8月10日,每个工作日发200台,只要做完体验,每天早上 10:00 去领,可以冲!点击“阅读原文”或者直接复制链接就可以体验了。

活动链接,点击直达:https://developer.aliyun.com/adc/series/activity/serverlessdevs

欢迎关注我的公众号:程序猿DD,分享外面看不到的干货与思考!

只是想虐下春丽,一不当心玩了下serverless...感觉还不错哟!的更多相关文章

  1. python基础练习题(题目 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少)

    day13 --------------------------------------------------------------- 实例021:猴子偷桃 题目 猴子吃桃问题:猴子第一天摘下若干 ...

  2. VS2010 release编译下进行调试,“当前不会命中任何断点,还没有为文档加载”问题解决方案

    在release模式下调试程序,经常出现"当前不会命中任何断点,还没有为文档加载"的问题,可尝试以下方法: 1. 属性 → 配置属性 → C/C++ → 常规 → 调试信息格式:选 ...

  3. win10 下visual studio 2015 在调试模式下不能跟踪源文件

    win10 下visual studio 2015 在调试模式下不能跟踪源文件,只要一调试就会关闭(隐藏)打开的文档,非常不方便.经过一番折腾,发现是配置的问题. 如果安装多个版本的VS,请删除对应版 ...

  4. Delphi下使用Oracle Access控件组下TOraSession控件链接

    Delphi下使用Oracle Access控件组下TOraSession控件链接数据库,使用  orsn1.Options.Direct:=true;  orsn1.Server:=IP:Port: ...

  5. windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号

    一般情况下,windows下编辑过的文件在Linux下用vi打开行尾会多出一个^M符号,如下图: 这是因为Windows等操作系统用的文本换行符和UNIX/Linux操作系统用的不同,Windows系 ...

  6. unity3d 依据指定的Assets下的目录路径 返回这个路径下的全部文件名称

    using UnityEngine; using System.Collections; using System.Collections.Generic; using System.IO; < ...

  7. 玩了下opencv的aruco(python版)

    简单的玩了下opencv里头的aruco,用的手机相机,手机装了个 ip摄像头,这样视频就可以传到电脑上了. 首先是标定,我没打印chessboard,直接在电脑屏幕上显示,拍了17张,大概如下: 又 ...

  8. Python里的单下划线,双下划线,以及前后都带下划线的意义

    Python里的单下划线,双下划线,以及前后都带下划线的意义: 单下划线如:_name 意思是:不能通过from modules import * 导入,如需导入需要:from modules imp ...

  9. [daily][archlinux][game] 几个linux下还不错的游戏

    春节在家放松, 装了几个游戏在archlinux上,玩起来还不错. 假期结束开工了, 玩的时间也会比较少,准备删掉, 记录如下: 1. 0ad 即时战略类, 类似于冷兵器时代的红警. 画面还不错, 可 ...

随机推荐

  1. bzoj2427 软件安装! 树dp

    软件安装 内存限制:128 MiB 时间限制:1000 ms 标准输入输出     题目描述 现在我们的手头有N个软件,对于一个软件i,它要占用Wi的磁盘空间,它的价值为Vi.我们希望从中选择一 些软 ...

  2. golang 模板语法使不解析html标签及特殊字符

    场景 有时候需要使用go的模板语法,比如说用go 去渲染html页面的时候,再比如说用go的模板搞代码生成的时候.这时候可能会遇到一个麻烦,不想转译的特殊字符被转译了. 我遇到的情况是写代码生成器的时 ...

  3. SpringBoot实战:10分钟快速搞定环境

    什么是 springboot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程. 该框架使用了特定的方式来进行配置,从而使开发人 ...

  4. kerberos认证协议爱情故事

    0x01.kerberos简介 kerberos是一种域内认证协议,Kerberos的标志是三头狗,狗头分别代表以下角色: Client Server KDC(Key Distribution Cen ...

  5. CentOS7日志管理工具 journalctl

    1.简介 日志管理工具journalctl是centos7上专有的日志管理工具,该工具是从message这个文件里读取信息. Systemd统一管理所有Unit的启动日志.带来的好处就是,可以只用jo ...

  6. Qt 串口通信之使用16进制发送数据的转换方式

    Qt 串口通信之使用16进制发送数据的转换方式 一 概述 有时候在做上位机串口通讯时,经常需要将字符串转成16进制的形式作为发送,借此分析记录一下. 二 需求分析 //假设需要转换的字符:如下 QSt ...

  7. flex mx:TabNavigator进行选项卡切换,需要进行交互时。发生Error #1009错误

    当需要进行 mx:TabNavigator选项卡进行切换时,需要进行交互,然后却报了"TypeError: Error #1009: 无法访问空对象引用的属性或方法."错误,产生这 ...

  8. Redis:redis.conf配置文件 - 及配置详解

    配置文件详解(文章最后有完整的redis.conf文件) ###################################  NETWORK  ######################### ...

  9. ExtJs4学习(五)最基本的Ext类

    Ext类是ExtJs中最常见.最基础的一个类,它是一个全局对象,封装了所有类.单例和 Sencha 库所提供的实用方法. 大多数用户界面组件在一个较低的层次嵌套在命名空间中, 但是提供的许多常见的实用 ...

  10. 12 shell case in语句

    Shell也支持两种分支结构(选择结构),分别是 if else 语句和 case in 语句.当分支较多,并且判断条件比较简单时,使用 case in 语句就比较方便了. if else 语句与ca ...