我的世界服务器java版跟基岩版一起搭建在同一个服务器吗?

我的世界服务器java版跟基岩版一起搭建在同一个服务器吗?,第1张

一个服务器只能是Java版或者基岩版中的一种,Java版是用Java编的,基岩版是用C++编的,本身语言都不一样更不用说同时运行了。
一般一个存档在30个mod、4GB以下是什么配置都能带动的。你只要能下载下来游戏基本上二三十个模组没问题的。

一、需要解决中央控制端到各节点服务器之间的通信。
这个其实牵扯到一个通信协议的问题,各语言都有自己的socket,thread的库,直接调用即可。但是这个通信协议就需要自己来完成了。既不能太简单,太简单了,明码传输,如果别人获知了这个接口,就很容易执行一些令人讨厌的 *** 作。也不能太复杂,太复杂了等于是给自己找麻烦,所以简单的数据包编解码的工作或者用token验证的方式是需要的。通信协议起码要两种,一种是传输命令执行的协议,一种是传输文件的协议。
二、跨语言的socket通信
为什么要跨语言,主控端和代理端通信,用什么语言开发其实无所谓。但是为了给自己省事,尽可能使用服务器上已经有了的默认语言,Ambari前期采用php+puppet的方式管理集群,这不是不可以,puppet自己解决了socket通信协议和文件传输的问题,可你需要为了puppet在每台服务器上都安装ruby。我是个有点服务器和代码洁癖的人。光是为了一个puppet就装个ruby,我觉得心里特对不起服务器的资源。所以我自己写了一个python的代理端。python是不管哪个linux系统在安装的时候就都会有了。然后主控端的通信,可以用python实现,也可以用php实现,但是考虑到对于更多的使用者来说,改php可能要比改tornado简单许多,所以就没用python开发。hadoop分支版本众多,发布出去,用户要自己修改成安装适合自己的hadoop发行版,就势必要改源码,会php的明显比会python的多。php里面的model封装了所有的 *** 作,而python只是个 *** 作代理人的角色而已。
所以也延伸出一个问题,什么语言用来做这种分布式管理系统的代理端比较合适,我自己觉得,也就是python比较合适了, *** 作系统自带,原生的package功能基本够用。用java和php也可以写agent,但是你势必在各节点预先就铺设好jre或者php运行环境。这就跟为什么用python和java写mapred的人最多是一样的。没人拦着你用nodejs写mapred,也可以写,就是你得在每个节点都装v8的解释引擎,不嫌麻烦完全可以这样干。原理参看map/reduce论文,不解释。perl也是 *** 作系统原生带的,但是perl的可维护性太差了,还是算了吧。
所以这就牵扯到一个跨语言的socket问题,理论上来说,这不存在什么问题。但这是理论上的,实际开发过程中确实存在问题,比如socket长连接,通信数据包在底层的封装方式不同。我没有使用xml-rpc的原因之一就是我听说php的xmlrpc跟其他语言的xmlrpc有不同的地方,需要修改才能用,我就没有用这种办法。最早是自己定义的 *** 作协议,这时就遇到了这些问题,所以后来直接采用了thrift方式。就基本不存在跨语言的socket通信问题了。
三、代理端执行结果的获取
无论命令还是文件是否在代理端执行成功,都需要获取到执行结果返回给中央端。所以这里也涉及一个读取节点上的stdout和stderr的问题。这个总体来说不是很难,都有现成的包。当然这个时候你需要的是阻塞执行,而不能搞异步回调。
还有个问题是,我要尽可能使用python默认就带的包,而尽量不让服务器去访问internet下载第三方的包。
还有代理端最重要的一点,就是python的版本兼容性。centos5用python 24,centos6用python 26,ubuntu基本默认都是27。所以一定要最大限度的保证语言的跨版本兼容性。

JSP 开发环境搭建:
一、配置Java开发工具(JDK)
这一步涉及Java SDK的下载和PATH环境变量的配置。
您可以从Oracle公司的Java页面中下载SDK:Java SE Downloads
Java SDK下载完后,请按照给定的指示来安装和配置SDK。最后,通过设置PATH和JAVA_HOME环境变量来指明包括java和javac的文件夹路径,通常是java_install_dir/bin和java_install_dir。
假如您用的是Windows系统并且SDK的安装目录为C::\jdk150_20,那么您就需要在 C:\autoexecbat 文件中添加以下两行:
set PATH=C:\jdk150_20\bin;%PATH%
set JAVA_HOME=C:\jdk150_20
或者,在Windows NT/2000/XP下,您可以直接右击我的电脑图标,选择属性,然后高级,然后环境变量,接下来您就可以很方便地设置PATH变量并且确定退出就行了。
在Linux/Unix系统下,如果SDK的安装目录为/usr/local/jdk150_20并且使用的是C shell,那么您就需要在cshrc文件中添加以下两行:
setenv PATH /usr/local/jdk150_20/bin:$PATH
setenv JAVA_HOME /usr/local/jdk150_20
或者,假如您正在使用类似于Borland JBuilder、Eclipse、IntelliJ IDEA和Sun ONE Studio这样的集成开发环境,可以试着编译并运行一个简单的程序来确定IDE(集成开发环境)是否已经知道 SDK的安装目录。
本步骤你也可以参考本站Java开发环境配置章节的教程。
二、设置Web服务器:Tomcat
目前,市场上有很多支持JSP和Servlets开发的Web服务器。他们中的一些可以免费下载和使用,Tomcat就是其中之一。
Apache Tomcat是一个开源软件,可作为独立的服务器来运行JSP和Servlets,也可以集成在 Apache Web Server中。以下是Tomcat的配置方法:
下载最新版本的Tomcat:>

如何用JAVA搭建微信小程序后台?微信小程序如何和java后台链接在一起?具体 *** 作步骤如下:

1、实现发送给服务器的数据是String类型转换的方法代码;

2、实现小程序端代码模板的方法代码;

3、实现小程序端js处理的方法代码;

4、实现javaservlet类的方法代码;

5、实现错误的解决方法配置如下;

6、测试的效果如下。

Windows环境下使用TOMCAT搭建JSP运行环境:
OS:Windows XP/Windows 7/Windows 2003
J2SDK:j2sdk150
TOMCAT:Apache Tomcat 55
环境变量配置:
J2SDK安装目录:C:/Program Files/Java/j2sdk150
TOMCAT安装目录:D:/Tomcat 55
变量名:JAVA_HOME 变量值:C:/Program Files/Java/j2sdk150
变量名:TOMCAT_HOME 变量值:D:/Tomcat 55
变量名:PATH 变量值:C:/Program Files/Java/j2sdk150/bin
变量名:classpath 变量值:C:/Program Files/Java/j2sdk150/jre/lib/rtjar;C:/Program Files/Java/j2sdk150/lib/dtjar;C:/Program Files/Java/j2sdk150/lib/toolsjar; (最后有个英文状态下的点“”,注意输入法)
对classpath解释一下:对classpath设置了4个路径,每个用分号隔开,最后一个点“”代表当前路径,classpath这样设置的目的出于让系统能运行Java程序,比如“”设置不设置对解释执行JSP就没影响,有影响的只有“C:/Program Files/Java/j2sdk150/jre/lib/rtjar”
TOMCAT端口设置:
在安装TOMCAT的时候有提示选择端口,TOMCAT默认8080,一般WEB服务都用80端口,在TOMCAT的配置文件serverxml(D:/Tomcat 55/conf下)中找到“port="8080"”,将8080改为80
TOMCAT虚拟目录设置:
TOMCAT启动后,默认的根目录是D:/Tomcat 55/webapps/ROOT
设置虚拟目录的方法:编辑serverxml,找到</Host>,在这前面加上:
<Context path="/jsp" docBase="d:/jsp" debug="0" reloadable="true" crossContext="true"></Context>
解释:path="/jsp"指虚拟目录的名字,可以在D:/Tomcat 55/webapps下创建一个空的目录命名为jsp,docBase="d:/jsp"代表虚拟目录实际指向的路径,这里指向d:/jsp,以后就在这里面创建jsp文件,使用>

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10263435.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存