可以在Android设备上运行Tomcat服务器和一些Web应用程序吗? (即平板电脑)

标题几乎说了一切,但让我提供一些更多的细节。

我们正在努力完成的是构build一个移动服务器平台。 我们已经有一个用Java编写的服务器平台,它运行在Tomcat服务器上。 它为客户提供Web界面和Web服务界面。

像大多数networking应用程序一样,该系统是在固定位置build立的。

现在,我们需要能够将Web服务和服务器软件提供给远程无关的位置。

我们的想法是,我们将使用启用了Wifi的Android平板电脑作为设备本地客户端的服务器。 服务器将在平板电脑上运行,为本地客户端服务,然后一旦平板电脑回到3G / 4G / EDGE或任何networking的范围内,平板电脑就会将收集的数据上传到主服务器。

可以服务的客户数量相对较less – 一次不超过20个。 每个客户端的stream量在每秒小于32K的范围内很小,而且Web服务器和应用程序的占用空间也相对较小。

如果我们想要在Android上设置这个东西,首先,甚至有可能没有扎根设备? 其次,如果有可能的话,它会有什么样的performance?

提前致谢!

Solutions Collecting From Web of "可以在Android设备上运行Tomcat服务器和一些Web应用程序吗? (即平板电脑)"

您可以尝试使用I-Jetty在Android上运行Java Web应用程序。 你不需要做任何生根,但我找不到任何性能信息。 你可能只需要做自己的基准testing,看看它是否适合你的需求。

答案似乎是:

  • 理论上是的,
  • 在实践中它是一个坏主意,你有一些工作要做到这一点。

例如,阅读这个Google网上论坛主题 。

其次,如果有可能的话,它会有什么样的performance?

不可能告诉,但我有我的怀疑。 如果你正在寻找性能(和简单),你应该看一个普通的PC,海事组织。

在Android上运行Java Servlets的最佳解决scheme是I-Jetty ,它的控制台都是免费且开源的 。

您可以使用Ice Cold Apps服务器Ultimate来支持所有其他支持服务,如Caddy,CVS,DC Hub,DHCP,UPnP,DNS,DDNS,电驴,电子邮件(POP3 / SMTP) FTP,FTP,FTPS,FTPES,Flash策略,Git,Gopher,HTTP Snoop,ICAP,IRC Bot,IRC,ISCSI,Icecast,Lighttpd,LPD,Load Balancer,MQTT,Memcached,MongoDB,MySQL,NFS,Node。 js,NTP,NZB客户端,Napster,Nginx,PHP,PXE,端口转发,RTMP,远程控制,Rsync,SIP,SMB / CIFS,SMPP,SMS,Socks,SFTP,SSH,服务器监视器,Styx,Syslog,TFTP, Telnet,Time,Torrent客户端,Torrent Tracker,触发器,USB / IP,Unison,UPnP端口映射器,VNC,VPN,networking唤醒,Web,WebDAV,WebSocket,X11和/或XMPP服务器!

另一个select是一个方法,您可以安装和使用Debian及其相关应用程序/包与Android一起使用。 这不是完整的Debian操作系统 – 它是一个兼容层,它允许你运行Debian应用程序。 你不需要root你的设备,它可以正常工作与任何股票ROM。 内部存储器上将需要900 Mb的空闲空间。 这个应用程序不能安装到SD卡。 强烈build议使用鼠标或手写笔。 这不是官方的Debian.org版本。 在这个应用程序之后,经常卸载完全清理。 这是可扩展的,你将能够像Tomcat一样安装你自己的applciations / packages。

如果您使用的是Android 6.X或更新版本,请查看GNURoot Debian Inside GNURoot Debian,您可以创build一个根文件系统,启动或删除它。

如果您使用的是Android 5.X,请查看将安装Debian Jessie的Debian noroot 。 您可以将其与XServer XSDL应用程序配对运行graphics化的Debian应用程序。

如果我的问题是要在Android安装tomcat,以下将是我可能的解决scheme。

1_调查tomcat服务器与底层操作系统的可能交互。

就我所关心的下载目录而言,很明显它们的交互是最小的,我可以从任何能够运行jvm的机器运行catalina.jar。

2_请问dalvik vm是否支持Tomcat?

最有可能不是。 但我会首先安装一个更强大的设备(如我的笔记本电脑)的Android,然后尝试在VM中运行的Tomcat。 我的猜测是,这可能会打开潘多拉的盒子。

3_调查人性化?

这可能是一个很好的select。 但是在像平板电脑这样有限的资源设备中,这个解决scheme看起来很疯狂

但是,我不明白是什么驱使你这个解决scheme? 你可以不使用sqllite模块存储信息,或者在REST中实现你的web服务,并且可能有像Tomcat Lite或者Getty这样的服务器。