开发者

Monolithic and distribuited systems using Ruby on Rails

I am using Ruby on Rails 3 and I have a monolithic application that uses na开发者_JAVA百科mespaces in order to "divide" the logic in that. Namespace examples are "users", "profiles", "articles", ....

I am planning to expand a lot this application with new functionalities, but those that at this time are already implemented should be a performance problem if I want to handle thousands of users.

At this time, I still have to deploy my application but I am considering to create a web services for each namespace in order to improve performance (I already improved caching to avoid database queries). I know that create and interact with a web service is a very strong\hard thing and it will require a lot of time to be finished (I tryed to do that!).

Do you think that I can deploy my application with a monolithic architecture? If so, how much hard will be to move from a monolithic to a distribuited architecture? When I should switch to a distribuited architecture?


P.S.: I am thinking, for example, what steps Facebook and Twitter have done to become what they are...


This is a very big question, but I recommend reading Enterprise Rails by Dan Chak. It has a lot of great information on how to do this in Chapters 13 and up. There's a preview available at Google Books, but unfortunately it doesn't include those chapters.

Of course, you can always go sit down in a Barnes and Noble and read through it in an afternoon. You'll probably end up buying it anyway - that's what I did :)

Also you should be a bit wary, because the code samples are for Rails 2.3 instead of 3, but that shouldn't be a huge problem. The basics are all the same.


Another great book to look into (and much more up to date) is:

http://amzn.com/0321659368

Service-Oriented Design with Ruby and Rails (Addison-Wesley Professional Ruby Series) [Paperback] by Paul Dix

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜