当前位置:首页 > 虚拟机 > 正文

vmware虚拟机python


一、python爬虫,集群是如何实现节点的发现和管理

Ignite集群管理-基于Zookeeper的节点发现

Ignite支持基于多播、静态IP、Zookeeper、JDBC等的节点发现。本文主要介绍基于Zookeeper的节点发现。

准备环境,两台笔记本电脑A和B。Ubuntu系统C使用VMware虚拟机安装在笔记本电脑A上。

1.在C上安装Zookeeper

主要目的是测试Ignite,所以这里我们只安装Zookeeper节点,解压,直接运行bin/。这样就会导致Zookeeper目录下的启动命令启动成功。

确保Ubuntu系统C的IP地址为192.168.1.104,默认Zookeeper端口为12181。

注意:这里VMware虚拟机的网卡必须是桥接模式。否则,机器A将无法访问虚拟机。

2.系统A运行Ignite节点1。

代码中粗体部分是Ignite注册代码,非常简单。

r;;Cache;on;ode;导入onfiguration;导入Configuration;导入coverySpi;导入。coveryZookeeperIpFinder;/**
*
*eateJune3,201710:52:38PM
*
*类函数说明:基于Zookeeper集群上
*
*版权所有:Copyright(c)2013
*公司:COSHAHO
*@Version1.0
*@Authorcoshaho*/publicclassIgniteCluster01
{publicstaticvoidmain(String[]args)
{TcpDiscoverySpi=newTcpDiscoverySpi();
TcpDiscoveryZookeeperIpFinderipFinder=newTcpDiscoveryZookeeperIpFinder();//指定ZooKeeperconnectionstring。
onnectionString("192.168.1.104:12181");
inder(ipFinder);
IgniteConfigurationcfg=newIgniteConfiguration();//覆盖coverySpi(spi);;
n("IgniteCluster1startOK.");
CacheConfigurationcacheCfg=newCacheConfiguration();
kups(1);
heMode(IONED);
e("myCache");
IgniteCachecache=reateCache(cacheCfg);
/>(1,"ignite1");
n((1));
n((2));
}
}

3.系统B运行Ignite节点2。

r;;Cache;on;。缓存.CacheMode;导入onfiguration;Configuration;coverySpi;coveryZookeeperIpFinder;publicclassIgniteCluster02
{publicstaticvoidmain(String[]args)
{
TcpDiscoverySpi=newTcpDiscoverySpi();
TcpDiscoveryZookeeperIpFinderipFinder=newTcpDiscoveryZookeeperIpFinder();//指定ZooKeeper连接字符串。
onnectionString("192.168.1.104:12181");
inder(IPFinder);
IgniteConfigurationcfg=newIgniteConfiguration();//覆盖coverySpi(spi);
n("IgniteCluster2startOK.");
CacheConfigurationcacheCfg=newCacheConfiguration();
kups(1);
/>heMode(IONED);
e("myCache");
IgniteCachecache=reateCache(cacheCfg);
(2,"ignite2");
n((1));
n((2));
}
}

你可以这样看:Ignite节点2可以成功访问Ignite节点1上的缓存数据。


二、java语言与python语言有什么不同?虚拟机没有Java强大。Java虚拟机是Java的核心。Python的核心是可以方便地使用C语言函数或C++库。
是完全动态的,可以在运行时修改自己的代码。Java只能通过解决方法来部署。Python的变量是易失性的,而Java的变量是静态的,需要先声明,所以Javaide的代码提示功能比Pythonide的要好。
已经存在了几十年。面向过程已经成为主流几十年了,因此有很多使用Python的程序都采用了面向过程的设计方法。Python中的很多概念都源于C语言。后来加上去,用Java实现了没有指针的C++(COM组件使用引用计数,Java使用虚拟机)。它主要应用面向对象的设计方法,很多概念都是oop概念。面向过程,相对简单直观,但容易设计面条程序,面向对象,相对抽象优雅,但容易出现过度抽象。
4.开始使用Python实际上非常简单,但是要学习如何使用Python,您需要学习许多不同的Python库。Python的强大之处在于它的库。原因是Python库可以在Python、C语言、C++等设计中使用,然后提供给Python使用,所以无论是运行GPU、神经网络、智能算法、数据分析、图像处理、科学计算,许多不同的库正在等待您使用。
Java没有Python那多的开源库。很多库是商业公司内部使用的,或者是作为jar包发布的,原始代码是不可见的。由于Python虚拟机没有Java那么好的编译支持(或者是故意这样设计的),所以经常直接使用源码或者简单的打包源码。
有很多虚拟机实现,比如cython、Pyston、pypy、jython、IronPython等,适合商业语言、插件语言或者面向领域的语言,而java由于其庞大的虚拟机,虚拟机很少。采用插件语言,不方便发布。