2013-05-04 10 views
7

Ich suche Cloud-Hosting für eine Grails App. In der Vergangenheit habe ich mehrere Anwendungen wie CloudFoundry, JElastic und AppFog ausprobiert, konnte die App jedoch nie erfolgreich bereitstellen. Die App benötigt:Grails Cloud-Hosting-Empfehlung

  • MySQL Datenbank
  • Dateisystemzugriff, um die durchsuchbare Plugin Index-Dateien und Bilder von den Benutzern hochgeladen zu speichern

Ich werde nur diese Seite für die QA verwenden, so bin nicht besorgt über die Leistung. Natürlich möchte ich, dass es so einfach wie möglich ist, die App zu installieren, und ich möchte so wenig wie möglich für das Hosting bezahlen.

Ich habe bereits versucht, das CloudFoundry Grails-Plugin zur Bereitstellung in CloudFoundry, aber ohne Erfolg.

+0

Ich habe gute Erfahrungen mit Cloudbees und Grails gemacht, bin mir aber nicht sicher über ihre Barrierefreiheitsrichtlinien für das Dateisystem. – Alidad

+0

Anscheinend bieten CloudBees temporären/ephemeren Dateisystemzugriff, was für meine App in QA ausreichend wäre http://developer.cloudbees.com/bin/view/RUN/File+system+access –

+3

Ich verstehe wirklich nicht warum diese Frage gilt als nicht konstruktiv. Ich habe eine spezielle Programmierfrage gestellt: "Wo kann ich eine Grails-App in der Cloud mit Dateisystemzugriff hosten?" Ich habe gezeigt, dass ich das Thema bereits erforscht habe, was ist das Problem ....? –

Antwort

0

Ich weiß, dass es keine ideale Lösung ist, aber Sie könnten mongodbs Gridfs verwenden, um Ihre Dateien anstatt des Dateisystems zu speichern. Cloudfoundry unterstützt Mongodb, wie du sicher weißt.

Dies hilft jedoch nicht mit Ihrem durchsuchbaren Plugin-Index.

1

Ich habe Grails-basierte Websites erfolgreich auf Amazon EC2 gehostet. Um die Kosten zu reduzieren, habe ich eine kleine reservierte Instanz verwendet. Ich denke, es ist in Ordnung, Amazon EC2 AMI für temporäre Dateien wie durchsuchbare Indexdateien zu verwenden, da Sie immer neu indizieren können, wenn AMI abstürzt.

Um Benutzerbilder zu speichern, habe ich Amazon S3 mit Grails AWS SDK-Plugin (http://grails.org/plugin/aws-sdk) verwendet. Es ist sehr einfach, Dateien mit Amazon SDK in S3 hochzuladen. http://blanq.github.io/grails-aws/1.2.12.1/index.html -

So laden Sie eine Datei mit öffentlichen Leseberechtigungen hoch.

amazonWebService.s3.putObject(new PutObjectRequest('some-grails-bucket', 
'somePath/someKey.jpg', new File('/Users/ben/Desktop/photo.jpg')).withCannedAcl(CannedAccessControlList.PublicRead)) 

Laden Sie eine Datei herunter.

amazonWebService.s3.getObject(new GetObjectRequest('some-grails-bucket', 
'somePath/someKey.jpg'), new File('/Users/ben/Downloads/photo.jpg')) 

Löschen Sie eine Datei.

amazonWebService.s3.deleteObject('some-grails-bucket', 'somePath/someKey.jpg') 

Ich hoffe, das hilft.