Heroku架构用于运行不同的应用程序,但在同一个域上

时间:2012-06-27 17:22:43

标签: heroku

我有一个独特的设置我试图确定Heroku是否可以容纳。围绕polygot应用程序有很多营销,但我只能找到一个例子!

我的申请包括:

  1. Django
  2. 编写的网站
  3. 一个单独的 Java 应用程序,它接收用户上传的文件,解析它们并将数据存储在数据库中
  4. 两个应用程序均可访问的共享数据库
  5. 由于这些用户上传的文件非常庞大,我希望上传的文件直接转到Java应用程序。我首选的架构是:

    1. Django生成的网页显示上传表单。
    2. 表单将AJAX提交给Java应用程序
    3. 浏览器开始轮询数据库以查看Java应用程序是否已插入数据
    4. 与此同时,Java应用程序使用用户上传的文件执行其操作,并在完成后更新数据库
    5. Django网页AJAX-一旦轮询机制发现上传完成,就会刷新div并显示用户上传的结果
    6. 我在这里无法弄清楚的一个大问题是,我是否可以同时使用同一套dynos或不同的dynos但在相同域下运行Django Java应用程序以避免AJAX跨域问题。 Heroku是否支持URL级路由?例如:

      1. Django应用程序可在http://www.myawesomewebsite.com
      2. 获得
      3. http://www.myawesomewebsite.com/javaurl/
      4. 提供的Java应用程序

        如果无法做到这一点,是否有人对解决方法有任何想法?我知道我可以让用户将文件上传到Django并让Django从服务器端而不是客户端向Java发送请求,但这是传递大量文件的绝大部分。

        非常感谢!

1 个答案:

答案 0 :(得分:0)

Heroku不支持通过URL路由的功能。多语言组件应作为自己的子域存在,并以跨域方式运行。

作为旁注:您是否考虑过直接上传到S3而不是上传到Heroku上的应用程序,然后(可能)上传到S3。如果您正在处理跨域文件上传,那么值得考虑的是它的高可扩展性。