ringojs 基于jvm 的javascript 平台试用

ringojs 是一个基于jvm 的javascript 平台,支持commonjs 模块模式

安装

下载包配置环境变量,或者使用docker,测试使用docker

  • dockerfile

    deb 包安装

FROM java:8
MAINTAINER [email protected]
RUN apt-get update && apt-get install -y jsvc
ADD ringojs_1.2.1_all.deb /tmp/ringojs.deb
RUN dpkg -i /tmp/ringojs.deb && rm /tmp/ringojs.deb
CMD ["bash"]
  • 使用

    我构建好了基础镜像 dalongrong/ringojs-docker

Dockerfile:

FROM dalongrong/ringojs-docker
WORKDIR /app
COPY app.js /app/
ENTRYPOINT [ "ringo","app.js" ]

app.js:
var app = function(request) {
return {
body: [‘Hello World‘],
headers: {‘Content-Type‘: ‘text/html‘},
status: 200
}
}

var {Server} = require(‘ringo/httpserver‘);
var server = new Server({app: app, port: 8080,host:"0.0.0.0"});
server.start();

docker-compose.yaml:
version: "3"
services:
  app:
    image: dalongrong/ringojs-app-demo
    build: ./
    ports:
    - "8080:8080"

运行

docker-compose up -d

访问

说明

从使用还是比较简单的, 同时内置的模块已经够用常用的开发了,同时官方有集成spring 等框架的,类似vertx 比这个更加强大,生态相对来说比这个
好很多

参考资料

https://ringojs.org/
https://github.com/rongfengliang/ringojs-docker

原文地址:https://www.cnblogs.com/rongfengliang/p/9486299.html

时间: 2024-11-13 07:58:12

ringojs 基于jvm 的javascript 平台试用的相关文章

Micronaut 教程:如何使用基于 JVM 的框架构建微服务?

本文要点: Micronaut 是一种基于 jvm 的现代化全栈框架,用于构建模块化且易于测试的微服务应用程序.Micronaut 提供完全的编译时.反射无关的依赖注入和 AOP.该框架的开发团队和 Grails 框架的开发团队是同一个.Micronaut 框架集成了云技术,服务发现.分布式跟踪.断路器等微服务模式也内置到了框架中.在本教程中,你将使用不同的语言创建三个微服务:Java.Kotlin 和 Groovy.你还将了解使用 Micronaut HTTP 客户端消费其他微服务是多么容易,

基于AppCan移动云平台搭建“智慧移动门户”

基于AppCan移动云平台,我们做了很多企业级的移动互联网项目,包括政府层面的双创落地实践,本次将结合实践,分享我们最新的项目经验和技术点.今天要分享的是,我们在智慧城市的项目中很重要的一环,区域智慧移动门户的架构设计和移动前端开发技术. 本次分享共三个重点: 1.AppCan移动云平台架构 2.智慧门户的规划 3.智慧门户的建设策略(技术落地) 智慧门户APP功能框架 智慧门户APP技术框架 1.AppCan移动云平台架构 AppCan在2011年底正式推出,用HTML5+CSS3+JavaS

JavaScript平台Platypi悄然登场

几个月前,一个新的JavaScript平台Platypi悄然诞生.它为开发者提供的不仅仅是一套标准的MVC框架而已,由于它是基于TypeScript构建的,因此对开发者而言在熟悉之中透露出与众不同的感觉. Platypi平台包括三个组件:PlatypusTS.PlatypusUI和PlatypusCLI.PlatypusTS是核心的MVC JavaScript框架,基于TypeScript构建.在某种程度上,它的视图控制器-服务-视图(View Controllers.Services.View

基于成熟网管平台的网管软件开发模式

随着计算机网络的迅速发展,特别是国际互联网的不断地推广,计算机网络的使用越来越广泛,人们的生产生活学习对计算机网络的依赖也越来越大.同时,随着计算机网络的网络规模的不断扩大和连入网络的设备越来越多样,网络的复杂性也越来越高,网络的异构性也越拉越高.于是,网络管理就成为了一个重要的研究课题. 网络管理是对硬件.软件.人力的综合使用和协调,对网络资源进行监视.测试.配置.分析.评价和控制,从而以合理的价格满足网络的需求,如实时运行性能.服务质量等.从定义中可以看出,网络管理包含了两个重要的任务,一是

基于百度AI开放平台的人脸识别及语音合成

基于百度AI的人脸识别及语音合成课题 课题需求 (1)人脸识别 在Web界面上传人的照片,后台使用Java技术接收图片,然后对图片进行解码,调用云平台接口识别人脸特征,接收平台返回的人员年龄.性别.颜值等信息,将信息返回到Web界面进行显示. (2)人脸比对 在Web界面上传两张人的照片,后台使用Java技术接收图片,然后对图片进行解码,调用云平台接口比对照片信息,返回相似度. (3)语音识别 在Web页面上传语音文件,判断语音文件格式,如果不是wav格式进行转码处理,然后调用平台接口进行识别,

基于微信硬件公众平台的智能控制开发流程

一.微信硬件公众平台整体架构 上一篇<物联网架构场景技术分析>已经探讨和分析了物联网架构的演进,基于微信硬件公众平台的智能控制方案即属于文中的第三种架构--基于统一后台服务的物联架构.其中的架构如下: 各部分的角色和分工如下: 1.微信硬件公众号平台服务器,是物联网的基础和核心部分,其负责外设设备ID的认证,类似公安部给每个公民一个身份证一样,保证每个外设都有一个合法并且唯一的ID.目前微信平台的设备ID由两部分组成,一部分是厂商运维的公众号(即手机微信关注的公众号)的原始ID,称为设备类型,

一种基于ES5的JavaScript继承

关于JavaScript继承,方式很多,包括compile-to-javascript的语言TypeScript, CoffeeScript以及网站MDN, GitHub, Modernizr各种polyfill都给出了稳妥的实现方案. 从ES5的角度看,这其中一些方案在功能上OK,但在语义上却不尽如人意. 本人从这些方案中采取一些比较潮的思路,整理出一份方案,可实现与原生DOM类继承的风格一致,达到功能和语义兼得的效果(当然,就别再老想着99后ES3了). 如果你的WebApp是基于ES5运行

【教程分享】基于Greenplum Hadoop分布式平台的大数据解决方案及商业应用案例剖析

基于Greenplum Hadoop分布式平台的大数据解决方案及商业应用案例剖析 课程讲师:迪伦 课程分类:Java 适合人群:高级 课时数量:96课时 用到技术:MapReduce.HDFS.Map-Reduce.Hive.Sqoop 涉及项目:Greenplum Hadoop大数据分析平台 更新程度:完毕 对这个课程有兴趣的朋友可以加我的QQ2059055336和我联系 下载地址:链接:   pan.baidu.com/s/1nthYpKH 密码: niyi 随着云计算.大数据迅速发展,亟需

基于低压电量采集平台DW710C的基础开发

实验课题 (1)自定义通信规约,采用java或C++编写简单的PC端上位机软件,实现采集器与PC机的通信.实验可在DW710C-PC工程下进行. (2)实现LCD显示字符.数字.汉字和简单的图像,并能根据上位机发送的命令做相应的显示.此实验需要掌握LCD屏幕的显示原理(可参考LCD屏幕指导手册),并编写程序控制LCD显示(可参考工程DW710C-LCD):知道如何用字模提取软件提取字模:另外还要修改采集器端接收到的命令的解析程序,实现不同命令显示不同内容. 实验说明 采集器的一个485接口与RS