什么是Cloud Foundry,该如何入门

Python016

什么是Cloud Foundry,该如何入门,第1张

什么是Cloud Foundry

Cloud Foundry是一个开源的平台即服务产品,它提供给开发者自由度去选择云平台,开发框架和应用服务。Cloud Foundry最初由 VMware 发起,得到了业界广泛的支持,它使得开发者能够更快更容易的开发,测试,部署和扩展应用。Cloud Foundry是一个开源项目,用户可以使用多种私有云发行版,也可以使用公共云服务。

四步玩转 Cloud Foundry

第一步:在.com 注册开发者账号

访问网址注册Cloud Foundry PaaS平台账号。请确保在Promo Code框中输入推广码oschina,以便快速获得账号。无推广码的情况下申请账号需要24-48小时的审核时间。

注册完成后的几分钟内,您将收到主题为“Welcome to Cloud Foundry - Your signup is approved!”,内有登陆Cloud Foundry平台的用户名和密码。

第二步:安装vmc或Eclipse/STS插件

请根据Cloud Foundry开发者文档中的步骤,安装vmc工具或者Eclipse/STS插件。

安装vmv工具:c.html

安装Eclipse/STS插件:e.html

vmc依赖Ruby运行环境,以下是Windows、Mac OS和Ubuntu下Ruby运行环境的安装方式,具体步骤,也可以参考上面的链接。

Windows

下载安装Windows下面的Ruby安装包(http://www.rubyinstaller.org)。安装包已经包含了 RubyGems,确保可以在Windows下使用Ruby命令行工具,因为后面安装和使用VMC的时候会用到。你可以通过Windows开始菜单来访问命令行工具 (All Programs >Ruby <version>>Start Command Prompt with Ruby)。最后,通过下面Ruby命令行更新RubyGems:

prompt>gem update --system

Mac OS X

OS X 10.5 或者更高版本的Mac OS X 已经安装了Ruby 和RubyGems。如果你使用老版本的OS X,可以通过以下链接下载最新Ruby和RubyGems

Ubuntu

在控制台下,通过apt-get 命令行工具来安装Ruby and RubyGems,如下所示。

1.安装 Ruby包和RubyGems:

prompt$ sudo apt-get install ruby-full rubygems

2.测试一下gem 命令是否已经在path中:

prompt$ which gem

如果gem命令没有发现,更新一下你的PATH环境变量,比如,你可以通过下面命令更新你的.bashrc文件:

export PATH=$PATH:/var/lib/gems/1.8/bin

3.更新RubyGems:

Ubuntu 10.04

prompt$ sudo gem install rubygems-update

prompt$ sudo /var/lib/gems/1.8/bin/update_rubygems

Ubuntu 11.10

prompt$ sudo su -

prompt# export REALLY_GEM_UPDATE_SYSTEM=true

prompt# gem update --system

prompt# exit

安装vmc

prompt$ sudo gem install vmc Mac/Ubuntuo平台

prompt>gem install vmc Windows平台

使用vmc命令

与Cloud Foundry建立连接

prompt$ vmc target api.cloudfoundry.com

获得平台的基本信息

prompt$ vmc login

prompt$ vmc info

prompt$ vmc passwd

如果以上命令都可以正常运行,表明您的vmc工具成功安装,您可以着手开发应用程序了!

有关vmc的更多使用细节,请参考Cloud Foundry中文培训课程,您可以在d.html 下载课程的PPT和视频。

第三步 :开发应用

Cloud Foundry支持Java、Ruby、Node.js和Scale语言及配套框架,并提供MySQL、MongoDB、RabbitMQ、Redis、PostgreSQL等后端服务。您可以尝试上传自己开发的应用,也可以使用我们提供的演示代码。

如果需要参考开发者文档,请访问以下内容

...

内地人想要拿到香港永居身份证的前提是,先拿到香港居民身份证。要知道,香港只有两种身份存在,就是香港居民身份和香港永久性居民身份,简单理解就是临时身份和永久身份。

一、那如何才能拿到香港的临时身份呢?

今天简单为大家介绍一下三种申请方式。

1.香港优才计划

港府推出旨在吸引高技术人才或优才来港定居,以提升香港的竞争力。不需要申请人在去香港之前就被香港公司雇佣,申请人可带配偶及18岁以下子女来港,满足居住时长后可申请转永居,今年配额为4000个。

申请条件

满18周岁以上,具有学士学位,具备良好中文或英文的书写及口语能力,通过两套计分系统(成就计分制/综合计分制,选择一种即可)的评估。

2.香港专才计划

香港专才是给予具备香港特区所需,而又缺乏的特别技能、知识或经验的意向申请人,可根据专才计划,申请来港工作的机会。与优才计划不同的是,香港专才赴港前需要获得香港雇主的聘用。

香港专才申请申请人可以是受雇于某一家香港公司,或经本人创办的香港公司自雇,又或者由实力雄厚的内地母公司派遣前往香港。

申请条件

满18周岁以上,具有学士学位,提前获得香港雇主的聘用。

3.香港留学进修

通过去香港读研究生的方式,拿到香港「学生签证」。香港研究生分为授课式和研究式课程。一般来说,授课型研究生较容易申请,学制仅1年,且学业压力不大。

申请条件

一般建议年龄在18 - 45岁之间,获得内地本科或大专学历,来港就读期间,申请人能自行承担本人及家庭成员生活费用。

二、香港永久性居民身份证申请资格

1、在香港出生,并在出生时或出生后任何时间,父亲或母亲已在香港定居

2、在香港通常居住连续七年以上

3、在香港以外地区出生,而在出生时,父=亲或母亲是中国公民并在香港有居留权。

依照相关规定,连续通常居住于香港不少于七年,这个“连续通常居住”并不是必须只能居住于香港。

三、不同申请方式的续签要求

香港优才申请者,按照2+3+3的续签模式,满足在香港通常居住连续七年以上,申请永居。

香港专才申请者,需要在香港工作7年,2+3+3/2+6续签模式,申请永居。

香港留学者,读书+工作要满足在港7年,IANG2+2+3续签模式,申请永居。

所以,各位申请人只需要按照上方的续签方式按时续签,证明在香港通常居住连续七年以上,即可申请香港永居身份。

如果您有意向申请香港优才,可以点击下方【链接】进行资格测试,只需30秒就知道你是否符合申请要求。(香港身份办理咨询微:Yinhehk;了解更多公众号关注:香港家园)

https://www.galaxyoversea.com/grade/1?pla=r-wb-ruby&spreadword=20221216-7​​​

阅读我的更多文章

通过香港留学拿香港永居身份?了解不同专业硕士的申请条件

申请香港优才计划,很多人都不知道还能这样操作

有意申请香港优才计划,应该如何规划?一文说清,全是干货

发布于 广东

本文从RoR对Ruby的影响、Ruby的优势等多个角度分析了Ruby比Python成功的原因。

伴随着RoR的风行,Ruby语言受到越来越多的开发者的关注,同为脚本语言,Python的地位却略显尴尬,什么样的原因,造成了这样的局面?

笔者认为有以下几个方面:

一、 RoR的推波助澜

笔者认为,Ruby的成功,很大一部分是由于RoR的带动。

几年前,如果你没听过RoR倒是情有可原,但如果今天,RoR对你来说,还是一个陌生词汇的话,那你就有点危险了。:)

什么是RoR呢?

全称,Ruby on Rails,简称,RoR或者Rails。

它是个全栈的(full-stack)web应用框架,它为开发者提供了构建一个web应用所需的完整基础结构,并且严格按照MVC(模型-视图-控制器)架构进行开发。

RoR致力于提高开发者的开发效率,希望通过尽量少的代码,完成尽可能多的功能。基于这样的考虑,RoR有两大设计原则,一是,不要重复自己 (Don''t Repeat Yourself);二是,惯例优于配置(Convention Over Configuration)。

使用RoR,你甚至可以通过简单的几条命令行、几行代码,就完成一个功能强大的web应用程序,这极大地提高了开发者的开发效率。

2004年7月,RoR一经发布,在短期内,便受到很多开发者的追捧。时至今日,RoR已经被全世界的开发者们所关注,它带给开发者的效率提升,是前所未有的;它带给业界关于软件开发的思考,也是意义深远的。

在RoR如此风行的大背景下,Ruby on Rails,这个需要使用Ruby进行开发的web框架,也自然地带动了Ruby语言的发展。

在下面的“Ruby语言受关注程度趋势图”上,可以清晰地看出,Ruby语言在RoR发布也就是2004年7月后,进入了高速发展期。

Ruby因为有了RoR这样的“杀手级”应用,变得春风得意,那么Python呢?

在《浅谈Python语言》一文中,我们提到了Python具有丰富的API库,在web开发方面,也有Django、Turbogears这样的一些框架,就运行速度而言,

Python比Ruby快;就社区而言,Python也比Ruby成熟,可是为什么Python没有产生一个像RoR这样的“杀手级”应用呢?

Python语言的创始人Guido在接受InfoQ采访时,是这样解释的:

“我不喜欢Killer

Application,因为那会让多数人或者社区将精力集中于一个地方。Python是一个应用广泛的语言,基于Python已经产生了很多好用的

Web框架,比如Django等。但是Python不Killer

Application,至少目前是这样,而且我相信随着Python社区的发展,会有很多Killer

Applications自然出现。我喜欢多样化的应用。”

通过这个观点,我们可以看出Python在其发展道路上,追求的是一种均衡,一种“大而全”。

“会有很多Killer Applications自然出现”,这点,我想我们需要拭目以待。单就“均衡”而言,笔者认为这很危险,作为一门脚本语言,试图做Java之类传统语言做的事情,不太可取。

以Java为例,在web应用上,有太多的框架可供选择,不错,“在不同的场景用不同的框架”,这想法很好。可是,在实际应用中,有多少开发者可以根据项目特点,正确、合理地选择框架?

与其到最后,用户还不知道该如何选择,还不如一开始就替用户做出一个选择。

作为Python的使用者,我更愿看到有个Python的“杀手级”应用出现,进而带动Python更快速地发展。

你可以说RoR成就了Ruby,可是Rails为什么偏偏选择了Ruby?!Ruby优势何在?

二、 Ruby的优势

1. 比Perl更强大,比Python更面向对象

“比Perl更强大,比Python更面向对象”,这是Ruby创始人Matz设计Ruby的初衷。

Python既支持面向过程的编程也支持面向对象的编程,而Ruby则是完全面向对象。

在Ruby中,任何东西都是对象,包括Python中的基本数据类型;每个过程或函数都是方法。

例如,取-3的绝对值,在Python中,是这样的:abs(-3)。

而在Ruby中,则是这样的:-3.abs。这种OO的方式,显得更加直观。

2. 强大的语法功能

单就语法的简单性而言,Ruby不及Python。但解决一些较复杂的问题,Ruby强大的语法功能,有助于降低问题的复杂度。

例如:

Ruby以“块”的方式来实现列表内的条件、循环语句,比Python的更灵活、更具通用性。

Ruby具有类似Lisp的彻底的函数方式的条件、循环语句等。

Ruby的迭代器功能可以将流程控制结构抽象化。

3. 强大的字符串处理、正则表达式功能

Matz认为:Ruby >(Smalltalk + Perl) / 2。

Ruby类库是对Perl语言功能的面向对象方式的重组,因为借鉴了很多Perl的东西,使得字符串处理、正则表达式这块,Ruby同样强大。

4. 不会僵住的“胶水语言”

同样是“胶水语言”,Ruby比Python更灵活。

使用过一段时间的Python,你会发现,Python比较依赖第三方的东西。相比较,Ruby则更依赖自身。例如,Ruby可以使用(UNIX的)绝大部分的系统调用,单独使用Ruby也可以进行系统编程等。

有优势,Ruby就一定可以成功了?Python同样也有很多优势!对,还得看当时所处的环境。

三、 时势造英雄

这点还得回到RoR的崛起。

Ruby,1995年12月正式发布,2000年进入美国;2004年7月,RoR正式发布。

RoR的出现时间,值得玩味。

在下面的“Java语言受关注程度趋势图”上,可以看到,2004年7月前后,Java处于一个相对“衰退期”。

提到Java,大家应该都会想到J2EE。

J2EE应用程序的广泛实现是从1999、2000年开始的,它的出现带来了诸如事务管理之类的核心中间层概念的标准化,但是因其开发效率、学习难度和实 际性能的问题,在实践中没有获得完全的成功。作为J2EE核心技术的EJB(2.x),更是因其高昂的学习代价、极低的开发效率和极高的资源消耗,备受指 责。

在这样一个大背景下,2003年,Spring框架诞生了。

Spring的设计思想在于“使J2EE开发更加简单”。这个设计思想,在包括Java领域在内的众多软件开发领域引起了广泛关注。软件开发者们开始思考,如何让开发向着一个更简单的方向发展。

RoR在这一时期出现,无疑是顺应了这样一个潮流。

可以这么说,是历史选择了RoR,当然也选择了Ruby。

遇到合适的机遇,还不够,俗话说得好:“众人拾柴火焰高”。

四、 众星捧月

Ruby的出现,受到了两大主流平台Java和.NET的极力追捧。

2006年9月,SUN雇佣了JRuby的主要开发者Charles Nutter和Thomas Enebo;一年不到,2007年6月14号,JRuby 1.0正式发布。SUN在其Java IDE NetBeans 6.0 M10中,更是集成了对Ruby/JRuby的支持。反观Python的Java实现——Jython,则没有这么幸运,发展至今,它并没有得到SUN的 支持。

而Microsoft,也在2007年7月,推出了Ruby的.NET实现——IronRuby的预览版。

相信SUN和Microsoft对Ruby的竞相推崇,必然推动Ruby的进一步发展。

基于以上几点,笔者认为Ruby的成功不是偶然,并且相信这样的成功还会持续下去。对于Python的未来,我们也将拭目以待。