The point is: You don't want to run your webapp in your database.

A customer facing rails3 app is an webapp with lots of javascript, UI, images, 
views etc which also has to be scaled to many instances.

On the other hand it needs data to work with. The source of the data is a 
database in this cause a graph database.

But it is much better to talk to your database in terms of your domain (e.g. 
users, blog posts comments) instead of nodes and relationships. So you 
basically cut of that lower layer that talks directly to the graph database 
(and which is very performance sensitive) and move it over to the db. 

Then you can define the typical use-cases you need for your webapp to render a 
page and have the domain level endpoints in your database server that provide 
the _domain level_ data for this rendering process in this granularity and size.

HTH

Michael

P.S: And without a frontend (just having the "user management system"-domain 
model running on the graph) (in the neo4j-server in our case) doesn't help you 
because you don't have to show anything to anyone (no UI).
Am 12.08.2011 um 22:02 schrieb Sasha Agafonoff:

PPS: I move this discussion to the users list as others probably want to chime 
in.


> Hi Michael,
> 
> Thanks for your email!  I am keen to use neo4j.rb rather than neography.  The 
> process set out in your example for setting up a back-end neo4j server on 
> Heroku seems pretty straightforward, and I think I understand how I can 
> define domain models and deploy them that way.  I think with a bit of effort 
> I could work out how to build something as a Rails front end to work with 
> this, but with my limitations as a coder I don't think I'll do a fantastic 
> job of it.
> 
> Where I'm struggling is in understanding why I'd need to write two separate 
> apps (backend-frontend) and not be able to write a single app built in the 
> same way as the Rails Project Template 
> (http://neo4j.rubyforge.org/guides/rails3.html) that Andreas has made 
> available on GitHub.  Using that template, I could get rolling with a user 
> management system and domain model very quickly.  
> 
> Andreas: not sure if you have any suggestions about bridging this gap?  Maybe 
> I'm missing something simple...? 
> 
> Cheers, Sasha
> 
> On 11 August 2011 18:27, Michael Hunger <[email protected]> 
> wrote:
> Sasha,
> 
> our rails(3) experience is rather limited. We can ask Andreas if he can come 
> up with something, but I can't make any promises.
> 
> On the frontend web-app side you're free to do whatever rails stuff you want 
> anyway.
> 
> On the server side we'd like to encourage really tight, persistence centric 
> REST-applicaitions that talk on a domain level to the "frontend"-webapp that 
> runs on Heroku.
> 
> So for a "backend" rails-REST-app it would perhaps best to look for a good 
> rails3-REST-App example and create something similar, just that it uses 
> neo4j.rb instead of the built-in ActiveRecord for persistence. 
> Expose useful domain level endpoints to the frontend webapp and use that one 
> to drive the persistence layer running in the Neo4j Server.
> 
> If you don't want to use server-side JRuby code, you're limited to a wrapper 
> like neography for the interaction with the graph database.
> 
> If you'd like to invest time and effort we would be more than happy to 
> integrate it (with attribution) into the documentation.
> 
> Thanks for your suggestions.
> 
> Michael
> 
> P.S. have you seen the general rails3 docs for heroku, I haven't looked into 
> them that much, so I don't know how much one could borrow from there.
> 
> 
> Am 12.08.2011 um 00:18 schrieb Sasha Agafonoff:
> 
>> Hiya,
>> 
>> I'm really pleased to see support kicking off for neo4j on heroku - it's got 
>> me interested in picking up my old peoplemap project and doing a full Rails 
>> 3-based reboot with the latest version of Andreas' neo4j.rb library.  I've 
>> joined the beta program, but I'm finding the learning curve pretty 
>> challenging...
>> 
>> The documentation at http://devcenter.heroku.com/articles/neo4j is really 
>> awesome, but it's all centered around two Sinatra-based approaches to 
>> accessing the heroku-hosted neo4j instances.  The big challenge for me is in 
>> working out how to take this (very fine) material and translate it into a 
>> Rails 3 context.  
>> 
>> I will be the first to admit to many limitations as a coder (possibly due to 
>> too many years wasted in sales) but I suspect that there will/may be 
>> others... :-)
>> 
>> Any chance of getting even a very simple Rails 3 example up on this page as 
>> well?  I think that with just a little more guidance in how to get something 
>> configured and running, I could probably go and build something a bit more 
>> developed that could contribute to the beta program and advancing neo4j more 
>> generally!
>> 
>> Cheers, Sasha

_______________________________________________
Neo4j mailing list
[email protected]
https://lists.neo4j.org/mailman/listinfo/user

Reply via email to