11 月 19 - 20 日 Apache Pulsar 社区年度盛会来啦,立即报名! 了解详情
写点什么

Java 在微软的 Azure 云平台上迈出了第一步

  • 2010-09-26
  • 本文字数:1152 字

    阅读完需:约 4 分钟

本月微软的架构师 David Chou 将会在 JavaOne 的大会上做一个演讲,主题是在微软的Azure 云平台上部署Java 应用。考虑到Azure 是典型的基于.Net 应用的微软技术平台,InfoQ 与Chou 先生探讨了Java 能在Azure 上做什么,不能做什么。

首先,David Chou 鼓励开发人员把Azure 看作“另一个基于Windows 服务器的开发环境,你可以往上部署代码… 其模型可以理解为一个巨大的zip 文件。如果你能把应用放入一个闪存驱动器,而且还能从驱动器中启动应用,那么就可以在Azure 上运行你的应用了”。理论上这意味着只要Java 开发人员为自己的应用绑定完整的JRE,然后写个小的C#引导程序就可以在Azure 上运行Java 了。

但实际上,一个典型的Java 程序必须克服一些障碍才能运行。据Chou 先生所言,依赖 Java 的 NIO 功能或使用了内部网络通信(例如 Jboss 集群)的应用是不能在 Azure 的网络沙箱内运行的。

为了说明这些限制,Chou 先生描述了他是如何让一个基于 Jetty 的应用程序运行在 Azure 上的:

  1. 使用 Visual Studio 创建 Azure 应用框架;
  2. 把 Jetty NIO ChannelConnector 换为阻塞的 IO ChannelConnector;
  3. 以 C#程序员的视角编写逻辑代码找到内部和外部端口,并用正确的端口参数启动 Jetty;
  4. 在 Java 应用的包内绑定 Jetty 应用容器和 JRE;
  5. 把 Jetty 的配置中涉及写文件系统的信息全部注释掉(这是个可选项,但如果你想绕过它,就需要编写更多的 C#代码)。

Chou 先生认为目前在 Azure 上进行 Java 开发具备如下特点:

这是漫长旅途中的第一步,我感觉又回到了刚开始用 Java 开发的时候,而且我们没有 IDE 集成开发环境。构建客户端应用时我们不得不使用文本编辑器处理 AWT。现在的阶段是:我们可以使用 Java 和部署一个完整的 Java 应用,但事实上还有很大的改进空间。

4 季度会发布 SDK1.3 版本,Chou 先生保证开发人员会更容易使用网络沙箱,减少限制,并提供更多的管理回调机制,用来启动进程、解压缩、用 C#脚本引导应用。当问道哪种类型的用户试图把 Java 部署到 Azure 上时,Chou 先生介绍了 Domino’s Pizza 项目,微软提供帮助把基于 Tomcat 的应用迁移到了 Azure 上。除了把应用迁移到 Azure 的计算资源上,同时也把数据存储迁移到了微软的云存储中。这次迁移的动机是为了解决晚餐期间超过 50% 的交通高峰期,特别是在周五和周日的超级杯(美式足球冠军)。当问及这个试点项目是否着手实施了,他表示该项目仍处于构思阶段。

总的来说,如果你是个 Java 开发人员,而且安装了 Visual Studio,同时还有一个对网络需求不敏感的 Web 应用,该应用没有使用太多的 J2EE 特性,那么你可以尝试将其部署到 Azure 的云上。其他人最好等年底 SDK1.3 的发布。想了解更多信息,请参加 JavaOne 周四早八点 Chou 先生的演讲。

查看英文原文: Java’s Baby Steps on Microsoft Azure Cloud

2010-09-26 10:411840

评论

发布
暂无评论
发现更多内容

一次带你全面解析Nginx,从安装JDK开始讲起,收藏当手册

996小迁

Java 学习 编程 架构 面试

耗子尾汁,你居然还不懂什么是架构师?那你编码为了什么?还不看阿里人怎么判定吗?

小Q

Java 学习 编程 架构 面试

架构师训练营第九周作业

四夕晖

SpringCloud Alibaba微服务实战一基础环境准备

AI乔治

Java 架构 微服务 Spring Cloud

年轻人不讲武德!Security五套「源码级」笔记哪里来的?

小Q

学习 编程 面试 spring security SpringCloud

从前世今生聊一聊,大厂为啥亲睐时序数据库

华为云开发者联盟

数据库 场景 时序

SpringCloud Alibaba微服务实战二 - 服务注册

AI乔治

Java 架构 微服务 Spring Cloud

SpringCloud Alibaba微服务实战五 - 限流熔断

AI乔治

Java 架构 微服务 Spring Cloud

SpringCloud Alibaba微服务实战九 - Seata 容器化

AI乔治

Java 架构 微服务 Spring Cloud

Docker基础与实战,看这一篇就够了

AI乔治

Java Docker spring 架构

对话机器人70年:科幻与现实的交融

华为云开发者联盟

AI 机器人 对话

SpringCloud Alibaba微服务实战八 - Seata 整合Nacos

AI乔治

Java 架构 微服务 Spring Cloud

SpringCloud Alibaba微服务实战十 - 服务网关SpringCloud Gateway

AI乔治

Java 架构 微服务 Spring Cloud

如何在ForeSpider数据采集器中设置代理IP

前嗅大数据

大数据 爬虫 数据采集 代理IP 代理IP设置

智慧公安二维码报警定位系统,高速路二维码定位报警开发

13530558032

经典之作——《数学之美》第二版-吴军

计算机与AI

数学

字节跳动的这份《算法中文手册》火了,完整版PDF开放下载!不少小伙伴靠这份指南成功掌握了算法的核心技能,成功拿到了 BATJ等大厂offer。

Java架构之路

Java 程序员 架构 面试 编程语言

SpringCloud Alibaba微服务实战四 - 版本管理

AI乔治

Java 架构 微服务 Spring Cloud

SpringCloud Alibaba微服务实战六 - 配置隔离

AI乔治

Java 架构 微服务 Spring Cloud

区块链+数字版权:区块链助力版权保护

13530558032

图解 | 不得错过的Binder浅析(二)

哈利迪

android

折半查找和插值查找

ilovealt

算法和数据结构

SpringCloud Alibaba微服务实战三 - 服务调用

AI乔治

Java 架构 微服务 Spring Cloud

SpringCloud Alibaba微服务实战七 - 分布式事务

AI乔治

Java 架构 微服务 Spring Cloud

面试 | 程序猿面试,Elasticsearch被坑被虐的体无完肤...

Java架构师迁哥

一文带你读懂!华为云在ACMUG技术沙龙上都透露了些啥?

华为云开发者联盟

数据库 大数据 数据

朋友不讲武德急催我给他Java干货教程,我劝他耗子尾汁并丢给他一份GitHub上标星115k+的Java教程,他看了之后连忙向我道歉!

Java架构之路

Java 程序员 架构 面试 编程语言

字节跳动总监总结的开发笔记火了!在知乎上已超5000赞!

Java架构师迁哥

奉劝各位准备面试的Java程序员耗子尾汁赶紧扔掉网上那些千篇一律的面试题,这份《写给大忙人看的Java核心技术》能够让你快速复习

Java架构之路

Java 程序员 架构 面试 编程语言

区块链农产品溯源解决方案,农产品追溯系统价格

13530558032

Java在微软的Azure云平台上迈出了第一步_Java_Tim Cull_InfoQ精选文章