Azure 上的远程数据库连接器 (RDC)

Remote Database Connector (RDC) on Azure

使用 Basic4Android,我可以使用远程数据库连接器 (RDC)(参见 http://www.b4x.com/android/forum/threads/remote-database-connector-rdc-connect-to-any-remote-db.31540/)访问 SQL 服务器数据库。 我可以将 SQL 服务器数据库放在 Azure 上。 但是如何将 Java Web 服务器放在 Azure 上?

根据我的经验,我建议您在 Azure 上创建一个 Windows VM 并安装 Java 环境以在其上部署 RDC。请参考https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-windows-tutorial-classic-portal/ and https://azure.microsoft.com/en-us/documentation/articles/virtual-machines-log-on-windows-server/.

为什么是 Azure VM?为什么是Windows?

原因如下:

  1. RDC是一个基于Jetty的Java轻量级web服务器,Jetty版本为7.4.2。但是,图库中 Azure Webapps 上的 Jetty 版本是 9.1.2。他们有不同实现的不兼容组件,比如Websocket。
  2. RDC 的 Jetty 服务器 运行ning 作为一个独立的应用程序,而不是 Java servlet 容器。所以RDC不能部署在Azure Webapps上。
  3. RDC http监听端口为17178,可在config.properties中配置。但是如果RDC作为Azure上的CloudService 运行,则需要为Cloud Service Role配置一些属性,比如public ip & port.
  4. 如果要部署在Azure Linux VM上,需要运行对RDC.zip中的解压文件命令chmod u+x并创建一个RunRLC.sh 用于启动 Main class 'RemoteServer'.

注意:我建议使用 Microsoft SQL JDBC 4.0+ 版驱动程序来访问 Azure SQL 数据库和 Azure 上的 SQL 服务器。 MSSQL 的 RDC 默认 JDBC 是 jTDS,它与 Azure 上的 MSSQL 不兼容。

此致。