大家好,今天来为大家分享服务器上运行python的一些知识点,和tomcat能部署python程序吗的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!
一、虚拟机上如何看哪些python服务
看什么Python服务
虽然,在windows上也是可以运行Python程序的(安装python解释器后),但是绝大多数的python程序都是跑在linux机器上的,所以我们需要配置一台linux虚拟机。
以前,有人想在本地(也就是物理机)上装双系统,但是linux的图形化界面是和内核区分开来的,没有图形桌面,linux的所有功能照样能使用,
主要区别:
1、linux的图形桌面没有windows人*化,功能没Windows的好。
2、linux的图形化界面是和内核区分开来的,windows的图形桌面是和内核紧密结合在一起的。
3、现在流行的大多数软件都跑在windows上,就算有linux版本的,也是容易出问题的。
所以现在好的方法是:使用linux虚拟机,这样可以随时和windows系统进行切换,在网上查资料,qq聊天,做笔记这些都在windows上操作,在linux上跑python程序。
如果是早些年,可能不容易实现,但是现在可以虚拟化技术来实现,现在主流的虚拟化产品有三种,这里我就介绍下VMware,我用的不是企业版的,是个人版的。其原理
如下图所示:
vmware这款软件跑在本地的操作系统上(我的是win10),然后我们可以在这款软件上安装各种各样的虚拟机。现在世界上各大虚拟化厂商有:
Citrix公司:Citrix公司是近两年增长非常快的一家公司,他得益于云计算的兴起,Citrix公司主要有三大产品,服务器虚拟化XenServer,优点是便宜,管理一般;应用虚拟化XenAPP,桌面虚拟化Xendesktop。后两者是目前为止最成熟的桌面虚拟化与应用虚拟化厂家。企业级VDI解决方案中不少都是使用Citrix公司的Xendesktop与Xen的结合使用。
IBM:在2007年11月的IBM虚拟科技大会上,IBM就提出了“新一代虚拟化”的概念。只是时之今日,成功的案例全并不多见,像陕西榆林地区的中国神华分公司的失败案例到是不少。不过笔者认为IBM虚拟化还是具备以下两点优势:第一,IBM丰富的产品线;对自有品牌良好的兼容*,第二,强大的研发实力,可以提供较全面的咨询方案,只是成本过高,不是每一个客户都这么富有的。加上其对第三方支持兼容较差,运维操作也比较复杂,对于企业来说是把双刃剑。并且IBM所谓的虚拟化只是服务器虚拟化,而非真正的虚拟化。
VMware:做为业内虚拟化领先的厂商VMware公司,一直以其易用*和管理*得到了大家的认同。只是受其架构的影响限制,VMware还主要是在X86平台服务器上有较大优势,而非真正的IT信息虚拟化。加上,其本身只是软件方案解决商,而非像IBM与微软这样拥用各自己阵地用户基础的厂商。所以当前,对于VMware公司来说将面临着多方面的挑战,这其中包括微软、XenSource(被Citrix购得)以及Parallels、IBM公司。所以,未来对于VMware公司来说这条道虚拟化之道能否继续顺风顺水下去还真不好说。
微软:2008年,随着微软Virtualization的正式推出,微软已经拥有了从桌面虚拟化、服务器虚拟化到应用虚拟化、展现层虚拟化的完备的产品线。至此,其全面出击的虚拟化战略已经完全浮出水面。因为,在微软眼中虚拟化绝非简单的加固服务器和降低数据中心的成本。他还意味着帮助更多的IT部门最大化ROI,并在整个企业范围内降低成本,同时强化业务持续*。这也是微软为什么研发了一系列的产品,用以支持整个物理和虚拟基础架构。
虚拟化软件就像一层薄薄的操作系统,可以运行在硬件上,将来可能会取代我们今天使用的操作系统。说远了,现在看下我使用的vm,具体的安装过程我就不说了,在网上可以找到很多教程,我用的是VM11,
首先,创建一个虚拟机,初学者没要求就选典型,再选择稍后安装操作系统,下一步
我用的Centos系统,确定虚拟机名称和位置,名称显示在这:
接着是选择磁盘大小,有两种虚拟磁盘存储方式,第一种是不能把虚拟机复制到别的物理机上的,第二种可以,不过在迁移之前记得先把虚拟机关机,否则复制过去也打不开。
注意:这里填的是20G,并不代表要在物理机上分出20G空间给这台虚拟机使用,而是只会占用实际大小,比如我这台虚拟机分出了20G空间,但是我安装好系统后只有5G大小,
那我实际占用物理机的空间就只有5G,不是20G,但是虚拟机的磁盘只能使用20G(当然也可以在后面继续添加磁盘,后面再说):
再接着就完成了,像这些向导很多是在最后一步完成,软件才会操作,这时如果选择取消,是不会有影响的。
安装过程我就不多说了。接下来配置网卡信息,先进入本地的服务管理里面,把VMware的服务开启,重点是dhcp和nat服务要开启。vm的nat服务可以进行转换,给各个虚拟机分配不同的私有
接着找到vm的虚拟机选项卡-设置,进入下图界面,把网络连接选成NAT模式。确定退出。
有些刚刚安装好的系统work是没启动的,我们进入网卡配置文件,把ONBOOT=none,改成yes
BOOTPROTO也改成dhcp获取,保存退出,并重启网卡。 ifconfig下可以看到vm给你分配的IP:
我们连接linux系统是通过终端连接,常用的有:putty,SecureCRT,xshell:
这里我使用xshell,输入用户名密码,便可以登上虚拟机。
这样,我们既可以使用windows系统的同时,通过终端可以操作linux系统,而且这台虚拟机也是可以访问外网的。
好了,一台虚拟机就这样配置好了。
二、tomcat能部署python程序吗
不能,因为tomcat只是一个J*A的容器。
也就是说tomcat是在JVM的基础上运行的(当然你要用J*A写一个python的代码解释器也不是没可能,只是没必要罢了)。
apache就可以部署python的web lcation比较常用的是django这个框架。
扩展资料:
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选,但是不能部署python程序。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应HTML(标准通用标记语言下的一个应用)页面的访问请求。
参考资料来源:百度百科-tomcat
三、python是什么语言
python的中文名称是蟒蛇。
Python是一种计算机程序设计语言。是一种动态的、面向对象的脚本语言,最初是用来编写自动化脚本的,随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
Python特点主要有以下几个方面:
1、简单:Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在读英语一样。它使你能够专注于解决问题而不是去搞明白语言本身。
2、易学:Python极其容易上手,因为Python有极其简单的说明文档。
3、速度快:Python的底层是用 C语言写的,很多标准库和第三方库也都是用 C写的,运行速度非常快。
4、免费、开源:Python是FLOSS之一。使用者可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。
5、高层语言:用Python语言编写程序的时候无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
6、可移植*:由于它的开源本质,Python已经被移植在许多平台上。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、以及Google等基于linux开发的android平台。
7、解释*:一个用编译*语言比如C或C++写的程序可以从源文件转换到一个你的计算机使用的语言。这个过程通过编译器和不同的标记、选项完成。
扩展资料:
Python语言风格简介:
Python在设计上坚持了清晰划一的风格,这使得Python成为一门易读、易维护,并且被大量用户所欢迎的、用途广泛的语言。
对于一个特定的问题,只要有一种最好的方法来解决就好。这在由Tim Peters写的Python格言里面表述为:There should be one-- and preferably only one--obvious way to do it.这正好和Perl语言的中心思想TMTOWTDI完全相反。
Python的作者有意的设计限制*很强的语法,使得不好的编程习惯都不能通过编译。其中很重要的一项就是Python的缩进规则。
参考资料:Python-百度百科
四、python可以用来干什么
1、系统编程:提供API,能方便进行系统维护和管理,Linux下标志*语言之一,是很多系统管理员理想的编程工具,这也是国外为什么使用者这么多的原因,我们国内很少使用Linux。
2、图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。
3、数学处理:NumPy扩展提供大量与许多标准数学库的接口。
4、文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。
5、数据库编程:程序员可通过遵循Python DB-API规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,MySQL、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。
6、网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。
7、Web编程:应用的开发语言,支持最新的XML技术。使用python也可能制作网站哦。
8、多媒体应用:Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。
9、pymo引擎:这是一款运行于Symbian S60V3,Symbian3,S60V5, Symbian3, Android系统上的*G游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memories off)风格的*G游戏,故命名为PYMO。可以开发一些手机上的软件。
10、*编程:python有一个hack的库,可以大大减少编程的工作量,很多本来很复杂的工作,可以很容易实现。
五、(web开发)用python创建一个最简单的网站
本文,用python来创建一个最简单的网页。
1先定义一个函数,用来向网站服务器发送请求:defyingyong(environ,start_response):start_response('200OK',[('Content-Type','text/html')])return[b'<h1>HowAre!</h1>']要求网站在网页上显示粗体的HowAre!
2导入wsgi模块的子模块,用来创建服务器。fromwsgiref.simple_serverimportmake_server。
3创建服务器,IP为空,端口号为900。a=900d=make_server('',a,yingyong)这个服务器将调用前面的函数yingyong。
4让服务器开始运行,并长时间运行。d.serve_forever()forever,让服务器永远运行,除非服务器被迫关闭。服务器在哪里?就在python里面,关闭python编译器,就等于关闭了服务器。
5再访问步骤一里面的,就得到如下网页。这说明服务器开始运行了。刷新这个网页,就相当于重复访问这个网页。每访问一次(刷新一次),都会向服务器发送请求,在python编译器里面会有所体现。
6关闭python编译器,服务器也就关闭了,这个网页会立刻崩溃。再打开python并运行这段代码,这个网页又会立刻恢复。完整代码如下:defyingyong(environ,start_response):start_response('200OK',[('Content-Type','text/html')])return[b'<h1>HowAre!</h1>']fromwsgiref.simple_serverimportmake_servera=900d=make_server('',a,yingyong)d.serve_forever()。
1、开始之前,请先用浏览器访问下面这个网页:l')])
return[b'<h1>HowAre!</h1>']
要求网站在网页上显示粗体的HowAre!
3、导入wsgi模块的子模块,用来创建服务器。
fromwsgiref.simple_serverimportmake_server
4、创建服务器,IP为空,端口号为900。
a=900
d=make_server('',a,yingyong)
这个服务器将调用前面的函数yingyong。
5、让服务器开始运行,并长时间运行。
d.serve_forever()
forever,让服务器永远运行,除非服务器被迫关闭。
服务器在哪里?就在python里面,关闭python编译器,就等于关闭了服务器。
6、再访问步骤一里面的,就得到如下网页,这说明服务器开始运行了。
7、刷新这个网页,就相当于重复访问这个网页,每访问一次(刷新一次),都会向服务器发送请求,在python编译器里面会有所体现。
8、关闭python编译器,服务器也就关闭了,这个网页会立刻崩溃。
再打开python并运行这段代码,这个网页又会立刻恢复。
完整代码如下:
defyingyong(environ,start_response):
start_response('200OK',[('Content-Type','text/html')])
return[b'<h1>HowAre!</h1>']
fromwsgiref.simple_serverimportmake_server
a=900
d=make_server('',a,yingyong)
d.serve_forever()