Hello,
For the past 4 or 5 weeks I’ve been researching and trying different architectural solutions for my next web project. Once I realized that starting with an API was the way to go I eventually found DreamFactory knew this was the solutions I’ve been looking for.
I want to be sure that I start on a solid foundation before I get too far into things so I am hoping someone can share some words of wisdom.
Sorry this is so long but maybe it can help out others too.
Thank you!
Which host?
Options for me were Azure, Amazon, or OpenShift. I then dropped Azure due to their pricing. I then dropped Amazon because I couldn’t figure out their pricing. OpenShift seemed like a good option after reading Case Study: A Mobile App for Ski Patrollers. Also, OpenShift’s pricing model seems to favor a small developer staring out and growing without an eventual price spike like many providers I am seeing.
So my question is how does Amazon’s pricing model compare to OpenShift’s? Amazon has these things called “EC2 Instance Types” but I have no clue what is needed to run my app.
If there is no opinion on this or OpenShift is comparable then I’ll just stick with Openshift.
What DB?
It’s great that DreamFactory provides connectivity to so many databases but I can’t find any reason to choose one over another. My thinking is that because MySQL is available on more hosting providers then moving would be simple.
Also, DreamFactory says that the, “…default database is a local MySQL setup…”, so maybe it works better with that.
So the question is, does this matter for performance, ease of use, etc.?
Indexes?
I can’t find any information on setting indexes. Does DreamFactory do this automatically?
Database Maintenance?
If I change my models/API does DreamFactory automatically remove columns from relational databases. If not is there a way to do so or is the database supposed to be “black box”?
What starting code base?
I want to use AngularJS with authentication. I went through the three very well done authentication tutorials but I don’t know if this is the best code base to start with. The reasons why are:
1 - This text in the last tutorial that says,
The rule I follow is…‘don’t load it if they are not supposed to see it’. DSP Roles will help with this functionality but to truly build custom access to data you’ll need to employ the much more powerful Server Side Scripting feature that’s available in DSP version 1.5.x. There is a tutorial for this on the way.
However, I cannot find this new tutorial and I believe the current DSP version is 1.7.8.
2 - The final code in GitHub hasn’t been updated in over 5 months.
So what is the best starting code that is current and includes the latest features and best practices for AngularJS authentication?
What next?
I currently have a gear on OpenShift running PHP 5.4. I installed their client tool, connected to my gear via git, and, just for testing purposes, successfully pushed a change.
But I am not clear at this point how I get DreamFactory installed. Do I download the latest dsp-core and then push it to OpenShift? I’m just a little lost here.
Also, when DF says MySQL is automatically installed locally does that mean I don’t have to install MySQL?
The End
If you’ve made it this far you’re awesome! I’ll probably have some followup questions but this will do for now.
Thank you!